From 3c15d3a37088a7db442bf40fdb880a0f178df3de Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Thu, 3 Feb 2011 14:06:27 +0100 Subject: [PATCH 001/192] mnesia cleanup to keep erlang convention --- Mnesia/gamedb.erl | 31 -------------- Mnesia/gamedb.hrl | 6 --- Mnesia/gamedb_usage.txt | 12 ------ games/tic-tac-toe-js/js/TicTacToeClient.js | 2 +- games/tic-tac-toe/TODO | 8 +--- games/tic-tac-toe/e.png | Bin 2565 -> 187 bytes games/tic-tac-toe/tictactoeboard.py | 11 +++++ games/tic-tac-toe/tictactoeboard.pyc | Bin 2379 -> 2379 bytes src/ggs_server.erl | 46 ++++----------------- 9 files changed, 22 insertions(+), 94 deletions(-) delete mode 100644 Mnesia/gamedb.erl delete mode 100644 Mnesia/gamedb.hrl delete mode 100644 Mnesia/gamedb_usage.txt diff --git a/Mnesia/gamedb.erl b/Mnesia/gamedb.erl deleted file mode 100644 index 9d6bbbe..0000000 --- a/Mnesia/gamedb.erl +++ /dev/null @@ -1,31 +0,0 @@ -%Test Mnesia --module(gamedb). --import(mnesia). --export([init/0,insert_player/1,example_player/0,read_player/1,test_player/0]). --include("gamedb.hrl"). - -init() -> - mnesia:create_table(player, [{attributes, record_info(fields, player)}]). - -test_player() -> - insert_player(example_player()), - read_player(0001). - -insert_player(Player) -> - Fun = fun() -> - mnesia:write(Player) - end, - mnesia:transaction(Fun). - -example_player() -> - #player{id = 0001, - name = "Tux"}. - -read_player(Player_Key) -> - Fun = fun() -> - [P] = mnesia:read(player, Player_Key), - Name = P#player.name, - io:format("Player name: ~s~n",[Name]) - end, - mnesia:transaction(Fun). - diff --git a/Mnesia/gamedb.hrl b/Mnesia/gamedb.hrl deleted file mode 100644 index 1ae9c8f..0000000 --- a/Mnesia/gamedb.hrl +++ /dev/null @@ -1,6 +0,0 @@ -%% gamedb.hrl - --record(player, {id, name}). - - - diff --git a/Mnesia/gamedb_usage.txt b/Mnesia/gamedb_usage.txt deleted file mode 100644 index b3a07a0..0000000 --- a/Mnesia/gamedb_usage.txt +++ /dev/null @@ -1,12 +0,0 @@ -1. From terminal: erl -mnesia dir '"/home/user/dir/to/GGS/GameDB.Player"' -2. mnesia:create_schema([node()]). -3. mnesia:start(). -4. c(gamedb). -5. gamedb:init(). -6. mnesia:info(). -7. gamedb:test_player(). - -Last output should be: - Player name: Tux - {atomic,ok} - diff --git a/games/tic-tac-toe-js/js/TicTacToeClient.js b/games/tic-tac-toe-js/js/TicTacToeClient.js index 80f8ef1..79e4064 100644 --- a/games/tic-tac-toe-js/js/TicTacToeClient.js +++ b/games/tic-tac-toe-js/js/TicTacToeClient.js @@ -90,4 +90,4 @@ TicTacToeClient.prototype.updateBoard = function(gameBoardData) { this.spots[k++].innerHTML = t; } } -} \ No newline at end of file +} diff --git a/games/tic-tac-toe/TODO b/games/tic-tac-toe/TODO index 07c0710..a957a1f 100644 --- a/games/tic-tac-toe/TODO +++ b/games/tic-tac-toe/TODO @@ -1,12 +1,6 @@ -- background image -- subimages for game_area:s -- subimages for game markers (X or 0) -- rectangle collision on game_area:s +- background - redraw background then all game_area:s -- board_state: a hashtable where key is game_area_index - and value is either'x' 'o' or ' ' - board contains nr_of_squares = 9 board contains array of squares with nr_of_squares elements board contains x, y, width and height board contains a frame diff --git a/games/tic-tac-toe/e.png b/games/tic-tac-toe/e.png index 4cbf977f58bdbe47864f563ba90a313820b2af27..1b1d7f7bb08b08b11a4f2d93597d2cfb9ba1360e 100644 GIT binary patch delta 117 zcmZn_+08h?ke@Bd+uel$41PNAuAiu<5G~KA!xiM)-VYSC_H=O!i8%cBoFO9v0|&Fh q*81l&58P)Ky5RY0{>tfF@Blq-Mh)h~7JYG5klCKDelF{r5}E+K7A{=? delta 2516 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 delta 16 XcmX>tbXthrpNE(0V3*TIb{9?nEB^$> diff --git a/src/ggs_server.erl b/src/ggs_server.erl index d7be36e..f440cde 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -1,13 +1,15 @@ %%%---------------------------------------------------- %%% @author Jonatan Pålsson %%% @copyright 2010 Jonatan Pålsson -%%% @doc RPC over TCP server %%% @end %%%---------------------------------------------------- -module(ggs_server). -behaviour(gen_server). +% import +-import(ggs_connection). + %% API -export([start_link/1, start_link/0, @@ -16,8 +18,7 @@ ]). %% gen_server callbacks --export([init/1, handle_call/3, handle_cast/2, - handle_info/2, terminate/2, code_change/3]). +-export([terminate/2, code_change/3]). -define(SERVER, ?MODULE). @@ -61,28 +62,6 @@ stop() -> %%----------------------------------------------------- %% gen_server callbacks %%----------------------------------------------------- - -init([Port]) -> - {ok, LSock} = gen_tcp:listen(Port, [{active, true}, - {reuseaddr, true}]), - {ok, #state{port = Port, lsock = LSock}, 0}. - -handle_call(get_count, _From, State) -> - {reply, {ok, State#state.client_vm_map}, State}. - -handle_cast(stop, State) -> - {stop, normal, State}. - -handle_info({tcp, Socket, RawData}, State) -> - NewState = do_JSCall(Socket, RawData, State), - OldMap = State#state.client_vm_map, - io:format("Old map: ~p NewState: ~p~n", [OldMap, NewState]), - {noreply, State#state{client_vm_map = OldMap ++ [NewState]}}; - -handle_info(timeout, #state{lsock = LSock} = State) -> - {ok, _Sock} = gen_tcp:accept(LSock), - {noreply, State}. - terminate(_Reason, _State) -> ok. @@ -92,7 +71,6 @@ code_change(_OldVsn, State, _Extra) -> %%----------------------------------------------------- %% Internal functions %%----------------------------------------------------- - do_JSCall(Socket, Data, State) -> JSVM = js_runner:boot(), js_runner:define(JSVM, "function userCommand(cmd, par) {return cmd+' '+ par}"), @@ -103,23 +81,23 @@ do_JSCall(Socket, Data, State) -> Ret = js_runner:call(JSVM, "userCommand", [list_to_binary(Command), list_to_binary(Parameter)]), - send(Socket, "RefID", "JS says: ", Ret), + connection:send(Socket, "RefID", "JS says: ", Ret), []; % Set the new state to the reference generated, and JSVM associated {hello} -> Client = getRef(), - send(Socket, Client, "__ok_hello"), + connection:send(Socket, Client, "__ok_hello"), {Client, JSVM}; {echo, RefID, _, MSG} -> - send(Socket, RefID, "Your VM is ", getJSVM(RefID, State)), + connection:send(Socket, RefID, "Your VM is ", getJSVM(RefID, State)), []; {crash, Zero} -> 10/Zero; {vms} -> - send(Socket, "RefID", State); + connection:send(Socket, "RefID", State); % Set the new state to [] Other -> - send(Socket, "RefID", "__error"), + ggs_connection:send(Socket, "RefID", "__error"), [] end, % Return the new state @@ -136,9 +114,3 @@ getJSVM(RefID, State) -> VMs = State#state.client_vm_map, {value, {_,VM}} = lists:keysearch(RefID, 1, VMs), VM. - -send(Socket, RefID, String) -> - gen_tcp:send(Socket, io_lib:fwrite("~p ~p~n", [RefID,String])). - -send(Socket, RefID, String1, String2) -> - gen_tcp:send(Socket, io_lib:fwrite("~p ~p ~p~n", [RefID, String1, String2])). From f59d59814a627b55732edbf2b7a2838eaa00d58c Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Thu, 3 Feb 2011 14:09:57 +0100 Subject: [PATCH 002/192] renaming Mnesia/ to mnesia/ --- mnesia/.gamedb.erl.swp | Bin 0 -> 12288 bytes mnesia/gamedb.erl | 50 ++++++++++++++++++++++++++++++++++++++++ mnesia/gamedb.hrl | 6 +++++ mnesia/gamedb_usage.txt | 12 ++++++++++ 4 files changed, 68 insertions(+) create mode 100644 mnesia/.gamedb.erl.swp create mode 100644 mnesia/gamedb.erl create mode 100644 mnesia/gamedb.hrl create mode 100644 mnesia/gamedb_usage.txt diff --git a/mnesia/.gamedb.erl.swp b/mnesia/.gamedb.erl.swp new file mode 100644 index 0000000000000000000000000000000000000000..469b1f85b2ecf7663f6f99f957c41243aa53c9d9 GIT binary patch literal 12288 zcmeI2zfTlF6vqcEQBk9XjV9wE^c~uUwxG9A3wj3SpnmAjS;oFXpP_fq7W5WsLG#cJs2}=` z*tenA&^%Ow94N`@1lEK?CIUo&2oM1xKm>@u|3rXec*zmXaifJFiH1>upT8UXg)*~~ z>5#r#WV<)}R~3ve1=%yL;PBeT2;Jn`8LfGIzc+H@1JWO|Mq+22omqCbw2|9xebwV&MdL9H&}jaz%JyTka;4q><#@S!BC3>)Gzy4_c#PjEwfs92d$g zeDw@9$s((11KAk4Xhgj&_xgNpO&Ft9Jx0hyu4N<8?xOOSg8Y(_Z5Pkd9xtpfAbI60 zlk|Vj0invbZ5$|a&pud5`Hgn$%6u+6_TAF$9KtKfl`zmIKWF2tIK{3yRjS4AN?}1q zeKFlpwTffYEh!vShrbk{ec%Od40`En@qpXv@LICLF(fp^C$W{KAKaj^+l+SvsEbH) z>}FiYzERkptP}oRXk`n+an@anrYxtnjUZgrs@XD}k2uvTuc1mxM0`dXBXtxd^zbqf jn-*N!@$V9T6Fa9h3+=0-$)+b%yW9vo`z7sdlVX1X$Qr-k literal 0 HcmV?d00001 diff --git a/mnesia/gamedb.erl b/mnesia/gamedb.erl new file mode 100644 index 0000000..751eb92 --- /dev/null +++ b/mnesia/gamedb.erl @@ -0,0 +1,50 @@ +%%%%---------------------------------------------------- +%%% @author Mattias Pettersson +%%% @copyright 2011 Mattias Pettersson +%%% @doc Database for runtime game variable storage. +%%% @end + + Test Mnesia +-module(gamedb). +-import(mnesia). +-export([init/0,insert_player/1,example_player/0,read_player/1,test_player/0]). +-include("gamedb.hrl"). + +%%----------------------------------------------------- +%% Creation +%%----------------------------------------------------- +init() -> + mnesia:create_table(player, [{attributes, record_info(fields, player)}]). + +%%----------------------------------------------------- +%% Test +%%----------------------------------------------------- +test_player() -> + insert_player(example_player()), + read_player(0001). + +example_player() -> + #player{id = 0001, + name = "Tux"}. + +%%----------------------------------------------------- +%% Insertions +%%----------------------------------------------------- +insert_player(Player) -> + Fun = fun() -> + mnesia:write(Player) + end, + mnesia:transaction(Fun). + + +%%----------------------------------------------------- +%% Querries +%%----------------------------------------------------- +read_player(Player_Key) -> + Fun = fun() -> + [P] = mnesia:read(player, Player_Key), + Name = P#player.name, + io:format("Player name: ~s~n",[Name]) + end, + mnesia:transaction(Fun). + diff --git a/mnesia/gamedb.hrl b/mnesia/gamedb.hrl new file mode 100644 index 0000000..1ae9c8f --- /dev/null +++ b/mnesia/gamedb.hrl @@ -0,0 +1,6 @@ +%% gamedb.hrl + +-record(player, {id, name}). + + + diff --git a/mnesia/gamedb_usage.txt b/mnesia/gamedb_usage.txt new file mode 100644 index 0000000..b3a07a0 --- /dev/null +++ b/mnesia/gamedb_usage.txt @@ -0,0 +1,12 @@ +1. From terminal: erl -mnesia dir '"/home/user/dir/to/GGS/GameDB.Player"' +2. mnesia:create_schema([node()]). +3. mnesia:start(). +4. c(gamedb). +5. gamedb:init(). +6. mnesia:info(). +7. gamedb:test_player(). + +Last output should be: + Player name: Tux + {atomic,ok} + From 468d701c0df622de612b916fc770af70032eccf7 Mon Sep 17 00:00:00 2001 From: niklas Date: Thu, 3 Feb 2011 17:54:23 +0100 Subject: [PATCH 003/192] Change to ggs_server(not finished) --- src/ggs_server.erl | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/src/ggs_server.erl b/src/ggs_server.erl index d7be36e..bbb0e90 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -47,8 +47,11 @@ start_link() -> %% Count = integer() %% @end %%----------------------------------------------------- -get_count() -> - gen_server:call(?SERVER, get_count). +get_count() -> gen_server:call(?SERVER, get_count). +_crash() -> gen_server:call(?SERVER, _crash). +_vms() -> gen_server:call(?SERVER, _vms). +_hello() -> gen_server:call(?SERVER, _hello). +_echo() -> gen_server:call(?SERVER, {_echo, RefID, _, MSG}). %%----------------------------------------------------- %% @doc Stops the server. @@ -68,7 +71,27 @@ init([Port]) -> {ok, #state{port = Port, lsock = LSock}, 0}. handle_call(get_count, _From, State) -> - {reply, {ok, State#state.client_vm_map}, State}. + {reply, {ok, State#state.client_vm_map}, State}; + +handle_call(_crash, _From, State) -> + Zero/10. + {reply, sdas , State}; + +%handle_call(_hello, _From, State) -> +% Client = getRef(); +% send(Socket, Client, "_ok_hello"), +% {Client, JVSM) +%{reply, Client, State}; + +%handle_call(_vms, _From, State) -> +% send(Socket, "RefID", State) +%{reply, , State}; + +%handle_call(_echo, RefID, _, MSG) -> +%{reply, ,State}; + +handle_call(_Message, _From, State) + {reply, error, State}. handle_cast(stop, State) -> {stop, normal, State}. From 71fa6f30ba69d1502f57df24d80ba77849aa2604 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Fri, 4 Feb 2011 14:10:23 +0100 Subject: [PATCH 004/192] Moved the parts of network out of server. Partly added extensions to tic-tac-toe py. --- games/tic-tac-toe/data.py | 15 ++++ games/tic-tac-toe/data.pyc | Bin 0 -> 531 bytes games/tic-tac-toe/player.py | 15 ++++ games/tic-tac-toe/server.py | 23 +++++ games/tic-tac-toe/test_data.py | 14 +++ src/.ggs_connection.erl.swp | Bin 0 -> 12288 bytes src/ggs_network.beam | Bin 0 -> 2820 bytes src/ggs_network.erl | 160 +++++++++++++++++++++++++++++++++ src/ggs_server.beam | Bin 0 -> 616 bytes src/ggs_server.erl | 84 +++-------------- 10 files changed, 237 insertions(+), 74 deletions(-) create mode 100644 games/tic-tac-toe/data.py create mode 100644 games/tic-tac-toe/data.pyc create mode 100644 games/tic-tac-toe/player.py create mode 100644 games/tic-tac-toe/server.py create mode 100644 games/tic-tac-toe/test_data.py create mode 100644 src/.ggs_connection.erl.swp create mode 100644 src/ggs_network.beam create mode 100644 src/ggs_network.erl create mode 100644 src/ggs_server.beam diff --git a/games/tic-tac-toe/data.py b/games/tic-tac-toe/data.py new file mode 100644 index 0000000..b83c3ad --- /dev/null +++ b/games/tic-tac-toe/data.py @@ -0,0 +1,15 @@ +def greatest_sequence(match, pattern): + m = match + p = pattern + size = 0 + max_size = 0 + + for p in pattern: + if m == p: + size += 1 + else: + if size > max_size: + max_size = size + size = 0 + + return max_size diff --git a/games/tic-tac-toe/data.pyc b/games/tic-tac-toe/data.pyc new file mode 100644 index 0000000000000000000000000000000000000000..682dfaaa9031d0195431a988ddaa757e082356a8 GIT binary patch literal 531 zcmb_YO-sW-5S?tBR-`$2^X4@dyGK!^hziAn?V$%jkg_C88rn_L{eUXT%^&WYRM3M* zcQbF_%)FhvWI0JrucuGX8U0!j_#MI}fSl-)=oKWQRVq-)7?6bgqkOgrW3WbfuWc1rWO{7E5Zsj?I-K;YD_JO`o%CgP=@p{ZGFM(roA+>rIfd1@>-^g3eb7~=*@!y_ qP&7JjF{V*8i4rkEo`^-tlD{winC#iVIprU5YwA4g^sG0?{=NWR({FA7 literal 0 HcmV?d00001 diff --git a/games/tic-tac-toe/player.py b/games/tic-tac-toe/player.py new file mode 100644 index 0000000..081112c --- /dev/null +++ b/games/tic-tac-toe/player.py @@ -0,0 +1,15 @@ +from pygame.mouse import get_pos +from point import Point + +class Player(object): + def __init__(self, id, shape, board): + self.shape = shape + self.board = board + self.id = id + + + def turn(self): + #Ask mouse for position + board.make_turn(Point(get_pos()[0],get_pos()[1])) + + diff --git a/games/tic-tac-toe/server.py b/games/tic-tac-toe/server.py new file mode 100644 index 0000000..91e32b5 --- /dev/null +++ b/games/tic-tac-toe/server.py @@ -0,0 +1,23 @@ +#server.py +import json +from socket import socket, AF_INET, SOCK_STREAM + + +class server(object): + def __init__(self, port=None): + self.port = port + self.world = GGS.init() + self.socket = socket(AF_INET, SOCK_STREAM) + self.socket.connect(("www.???.com", 80)) + + def turn(self, id, index): + rows = sqrt(board.nr_of_rectangles) + x = int(index / rows) + y = int(index % rows) + + json.dumps({"x": x, "y": y} + world.callCommand("tictactoe", "set", json.dumps({"x": x, "y": y})) + + sent = 0 + length = len( + while sent diff --git a/games/tic-tac-toe/test_data.py b/games/tic-tac-toe/test_data.py new file mode 100644 index 0000000..38282f0 --- /dev/null +++ b/games/tic-tac-toe/test_data.py @@ -0,0 +1,14 @@ +import unittest +import data + + +class TestData(unittest.TestCase): + def setUp(self): + array = [0,1,1,1,3,4,5,2,2,3,3,3,3,3,33,4,2,2] + + self.assertTrue(data.greatest_sequence(array, 3) == 5) + +if __name__ == '__main__': + unittest.main() + + diff --git a/src/.ggs_connection.erl.swp b/src/.ggs_connection.erl.swp new file mode 100644 index 0000000000000000000000000000000000000000..0c009f8287377d2e3763a3fb7610231c3237d3fb GIT binary patch literal 12288 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 literal 0 HcmV?d00001 diff --git a/src/ggs_network.erl b/src/ggs_network.erl new file mode 100644 index 0000000..1ee46f6 --- /dev/null +++ b/src/ggs_network.erl @@ -0,0 +1,160 @@ +%%%---------------------------------------------------- +%%% @author Jonatan Plsson +%%% @copyright 2010 Jonatan Plsson +%%% @doc RPC over TCP server +%%% @end +%%%---------------------------------------------------- +%%% @author Mattias Pettersson +%%% @doc Socket module for GGS +%%% @end +%%%---------------------------------------------------- + + +-module(ggs_network). + +-behaviour(gen_server). + +%define +-define(SERVER, ?MODULE). +-define(DEFAULT_PORT, 1055). + + +% export +-export([start_link/0,start_link/1]). +-export([init/1, handle_call/3, handle_cast/2, handle_info/2]). +-export([get_count/1, send/3, send/4]). +-export([stop/0]). + +%% gen_server callbacks +-export([terminate/2, code_change/3]). + +%state +-record(state, {port, lsock, client_vm_map = []}). + + +%%----------------------------------------------------- +%% @doc Starts gen_server +%% @end +%%----------------------------------------------------- +start_link() -> + start_link(?DEFAULT_PORT). + +start_link(Port) -> + process_flag(trap_exit, true), + gen_server:start_link({local, ?SERVER}, ?MODULE, [Port], []). + +%%----------------------------------------------------- +%% Creation +%%----------------------------------------------------- +init([Port]) -> + {ok, LSock} = gen_tcp:listen(Port, [{active, true}, + {reuseaddr, true}]), + {ok, #state{port = Port, lsock = LSock}, 0}. + +%%----------------------------------------------------- +%% @doc Fetches the number of requests made to this server +%% @spec get_count() -> {ok, Count} +%% where +%% Count = integer() +%% @end +%%----------------------------------------------------- +get_count(get_count) -> + gen_server:call(?SERVER, get_count). + +%%----------------------------------------------------- +%% @doc Stops the server. +%% @spec stop() -> ok +%% @end +%%----------------------------------------------------- +stop() -> + gen_server:cast(?SERVER, stop). + +%%----------------------------------------------------- +%% Handlers +%%----------------------------------------------------- +handle_call(get_count, _From, State) -> + {reply, {ok, State#state.client_vm_map}, State}. + +handle_cast(stop, State) -> + {stop, normal, State}. + +handle_info({tcp, Socket, RawData}, State) -> %parameters coming from gen_server + NewState = do_JSCall(Socket, RawData, State), %TODO + OldMap = State#state.client_vm_map, + io:format("Old map: ~p NewState: ~p~n", [OldMap, NewState]), + {noreply, State#state{client_vm_map = OldMap ++ [NewState]}}; + +handle_info(timeout, #state{lsock = LSock} = State) -> + {ok, _Sock} = gen_tcp:accept(LSock), + {noreply, State}. + + +%%----------------------------------------------------- +%% TCP Calls +%%----------------------------------------------------- +send(Socket, RefID, String) -> + gen_tcp:send(Socket, io_lib:fwrite("~p ~p~n", [RefID,String])). + +send(Socket, RefID, String1, String2) -> + gen_tcp:send(Socket, io_lib:fwrite("~p ~p ~p~n", [RefID, String1, String2])). + + +%%----------------------------------------------------- +%% gen_server callbacks +%%----------------------------------------------------- +terminate(_Reason, _State) -> + ok. + +code_change(_OldVsn, State, _Extra) -> + {ok, State}. + +%%----------------------------------------------------- +%% Internal functions +%%----------------------------------------------------- +do_JSCall(Socket, Data, State) -> + JSVM = js_runner:boot(), + js_runner:define(JSVM, "function userCommand(cmd, par) {return cmd+' '+ par}"), + Parsed = ggs_protocol:parse(Data), + NewState = case Parsed of + {cmd, Command, Parameter} -> + % Set the new state to [] + Ret = js_runner:call(JSVM, "userCommand", + [list_to_binary(Command), + list_to_binary(Parameter)]), + connection:send(Socket, "RefID", "JS says: ", Ret), + []; + % Set the new state to the reference generated, and JSVM associated + {hello} -> + Client = getRef(), + connection:send(Socket, Client, "__ok_hello"), + {Client, JSVM}; + {echo, RefID, _, MSG} -> + connection:send(Socket, RefID, "Your VM is ", getJSVM(RefID, State)), + []; + {crash, Zero} -> + 10/Zero; + {vms} -> + connection:send(Socket, "RefID", State); + % Set the new state to [] + Other -> + ggs_connection:send(Socket, "RefID", "__error"), + [] + end, + % Return the new state + NewState. + +%%----------------------------------------------------- +%% Helpers +%%----------------------------------------------------- +getRef() -> + {A1,A2,A3} = now(), + random:seed(A1, A2, A3), + random:uniform(1000). + +%%----------------------------------------------------- +%% Helpers +%%----------------------------------------------------- +getJSVM(RefID, State) -> + VMs = State#state.client_vm_map, + {value, {_,VM}} = lists:keysearch(RefID, 1, VMs), + VM. diff --git a/src/ggs_server.beam b/src/ggs_server.beam new file mode 100644 index 0000000000000000000000000000000000000000..8818249268afb82e14ee2ed7b316d9b5a9b4d5c5 GIT binary patch literal 616 zcmY+Cv2GJV5Qb;>&KGPGaXMbWiV_JLUqDDSDb83Sie#L~MwB?~^X7cEZ}+sjHZ+kU zAt4HiJVKiEl$2EIQ`7StnK^6`M*435`DZjc(%##X!3zL>_U5qjuH$q803VThBg^c_ zO0$xtW}PsuNrsZ{lQ#24<%|}&n%6VwMyXyZ=Ub=CW}zp`g&gJTTnExDgvy>!#{(On zt0xlgNRbes=p)-mz(OAF0BfPa_ECl`>4zaZ<kpXs{ zL|91J56nXLEAgI^(K_{D=*)YZ3&%xCXAcPw5AhL-jb>|I!*iplm*NppN66o3e)##n znOp1nV?0SyG?0fgXf_3T9HDu%2Wbl4(<$v)?bdP5pnmpcfnPS|6Yy46Rf!5g_o6?~ zFK+I>erw+T-2K32v+l7v$IkCnzfb*Jx^%f#c2*_$mKL)))Lyk;w_lRyyS$LoV2m68 z7F_sZThzoJRRXJ*CY5tIh^M-cF}|*nlQK8L$+$E+GomPRmBoKwIX*fX#@3|qzyGF< Lm04$O9qt78!%2Cj literal 0 HcmV?d00001 diff --git a/src/ggs_server.erl b/src/ggs_server.erl index f440cde..c3514e7 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -5,27 +5,19 @@ %%%---------------------------------------------------- -module(ggs_server). --behaviour(gen_server). % import --import(ggs_connection). +-import(ggs_network). %% API --export([start_link/1, - start_link/0, +-export([start/0, + start/1, get_count/0, stop/0 ]). -%% gen_server callbacks --export([terminate/2, code_change/3]). --define(SERVER, ?MODULE). --define(DEFAULT_PORT, 1055). - --record(state, {port, lsock, client_vm_map = []}). - %%%==================================================== %%% API %%%==================================================== @@ -34,12 +26,12 @@ %% @doc Starts the server %% @end %%----------------------------------------------------- -start_link(Port) -> - process_flag(trap_exit, true), - gen_server:start_link({local, ?SERVER}, ?MODULE, [Port], []). +start() -> + ggs_network:start_link(). + +start(Port) -> + ggs_network:start_link(Port). -start_link() -> - start_link(?DEFAULT_PORT). %%----------------------------------------------------- %% @doc Fetches the number of requests made to this server @@ -49,7 +41,7 @@ start_link() -> %% @end %%----------------------------------------------------- get_count() -> - gen_server:call(?SERVER, get_count). + ggs_network:get_count(get_count). %%----------------------------------------------------- %% @doc Stops the server. @@ -57,60 +49,4 @@ get_count() -> %% @end %%----------------------------------------------------- stop() -> - gen_server:cast(?SERVER, stop). - -%%----------------------------------------------------- -%% gen_server callbacks -%%----------------------------------------------------- -terminate(_Reason, _State) -> - ok. - -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - -%%----------------------------------------------------- -%% Internal functions -%%----------------------------------------------------- -do_JSCall(Socket, Data, State) -> - JSVM = js_runner:boot(), - js_runner:define(JSVM, "function userCommand(cmd, par) {return cmd+' '+ par}"), - Parsed = ggs_protocol:parse(Data), - NewState = case Parsed of - {cmd, Command, Parameter} -> - % Set the new state to [] - Ret = js_runner:call(JSVM, "userCommand", - [list_to_binary(Command), - list_to_binary(Parameter)]), - connection:send(Socket, "RefID", "JS says: ", Ret), - []; - % Set the new state to the reference generated, and JSVM associated - {hello} -> - Client = getRef(), - connection:send(Socket, Client, "__ok_hello"), - {Client, JSVM}; - {echo, RefID, _, MSG} -> - connection:send(Socket, RefID, "Your VM is ", getJSVM(RefID, State)), - []; - {crash, Zero} -> - 10/Zero; - {vms} -> - connection:send(Socket, "RefID", State); - % Set the new state to [] - Other -> - ggs_connection:send(Socket, "RefID", "__error"), - [] - end, - % Return the new state - NewState. -%%----------------------------------------------------- -%% Helpers -%%----------------------------------------------------- -getRef() -> - {A1,A2,A3} = now(), - random:seed(A1, A2, A3), - random:uniform(1000). - -getJSVM(RefID, State) -> - VMs = State#state.client_vm_map, - {value, {_,VM}} = lists:keysearch(RefID, 1, VMs), - VM. + ggs_network:stop(). From 730b29e5cbcc8c1ccb31847a5e668e23f5b725be Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Fri, 4 Feb 2011 14:21:48 +0100 Subject: [PATCH 005/192] Moving ggs_server parts to ggs_network. Stop method changed. --- src/ggs_server.erl | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/ggs_server.erl b/src/ggs_server.erl index f6131a2..41cfee3 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -57,10 +57,7 @@ _echo() -> gen_server:call(?SERVER, {_echo, RefID, _, MSG}). %% @end %%----------------------------------------------------- stop() -> -<<<<<<< HEAD ggs_network:stop(). -======= - gen_server:cast(?SERVER, stop). %%----------------------------------------------------- %% gen_server callbacks From 68658bf74c1437c3b3342c2949061a8e76aee330 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Fri, 4 Feb 2011 14:35:57 +0100 Subject: [PATCH 006/192] Resolving conflicts of ggs_network and ggs_server. --- src/ggs_network.erl | 11 ++++- src/ggs_server.erl | 112 ++------------------------------------------ 2 files changed, 15 insertions(+), 108 deletions(-) diff --git a/src/ggs_network.erl b/src/ggs_network.erl index 1ee46f6..5489069 100644 --- a/src/ggs_network.erl +++ b/src/ggs_network.erl @@ -22,7 +22,8 @@ % export -export([start_link/0,start_link/1]). -export([init/1, handle_call/3, handle_cast/2, handle_info/2]). --export([get_count/1, send/3, send/4]). +-export([get_count/1,crash/0,vms/0,hello/0,echo/0]). +-export([send/3, send/4]). -export([stop/0]). %% gen_server callbacks @@ -61,6 +62,14 @@ init([Port]) -> get_count(get_count) -> gen_server:call(?SERVER, get_count). +crash() -> gen_server:call(?server, _crash). +vms() -> gen_server:call(?SERVER, _vms). +hello() -> gen_server:call(?SERVER, _hello). +echo() -> gen_server:call(?SERVER, {_echo, RefID, _, MSG}). + + + + %%----------------------------------------------------- %% @doc Stops the server. %% @spec stop() -> ok diff --git a/src/ggs_server.erl b/src/ggs_server.erl index 41cfee3..95a53dd 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -40,16 +40,13 @@ start(Port) -> %% Count = integer() %% @end %%----------------------------------------------------- -<<<<<<< HEAD get_count() -> ggs_network:get_count(get_count). -======= -get_count() -> gen_server:call(?SERVER, get_count). -_crash() -> gen_server:call(?SERVER, _crash). -_vms() -> gen_server:call(?SERVER, _vms). -_hello() -> gen_server:call(?SERVER, _hello). -_echo() -> gen_server:call(?SERVER, {_echo, RefID, _, MSG}). ->>>>>>> 02b72e54457112cb8d576cdcf3e982d2e34407fc + +_crash() -> gen_network:crash(). +_vms() -> gen_network:vms(). +_hello() -> gen_network:hello(). +_echo() -> gen_network:echo(). %%----------------------------------------------------- %% @doc Stops the server. @@ -58,102 +55,3 @@ _echo() -> gen_server:call(?SERVER, {_echo, RefID, _, MSG}). %%----------------------------------------------------- stop() -> ggs_network:stop(). - -%%----------------------------------------------------- -%% gen_server callbacks -%%----------------------------------------------------- - -init([Port]) -> - {ok, LSock} = gen_tcp:listen(Port, [{active, true}, - {reuseaddr, true}]), - {ok, #state{port = Port, lsock = LSock}, 0}. - -handle_call(get_count, _From, State) -> - {reply, {ok, State#state.client_vm_map}, State}; - -handle_call(_crash, _From, State) -> - Zero/10. - {reply, sdas , State}; - -%handle_call(_hello, _From, State) -> -% Client = getRef(); -% send(Socket, Client, "_ok_hello"), -% {Client, JVSM) -%{reply, Client, State}; - -%handle_call(_vms, _From, State) -> -% send(Socket, "RefID", State) -%{reply, , State}; - -%handle_call(_echo, RefID, _, MSG) -> -%{reply, ,State}; - -handle_call(_Message, _From, State) - {reply, error, State}. - -handle_cast(stop, State) -> - {stop, normal, State}. - -handle_info({tcp, Socket, RawData}, State) -> - NewState = do_JSCall(Socket, RawData, State), - OldMap = State#state.client_vm_map, - io:format("Old map: ~p NewState: ~p~n", [OldMap, NewState]), - {noreply, State#state{client_vm_map = OldMap ++ [NewState]}}; - -handle_info(timeout, #state{lsock = LSock} = State) -> - {ok, _Sock} = gen_tcp:accept(LSock), - {noreply, State}. - -terminate(_Reason, _State) -> - ok. - -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - -%%----------------------------------------------------- -%% Internal functions -%%----------------------------------------------------- -do_JSCall(Socket, Data, State) -> - JSVM = js_runner:boot(), - js_runner:define(JSVM, "function userCommand(cmd, par) {return cmd+' '+ par}"), - Parsed = ggs_protocol:parse(Data), - NewState = case Parsed of - {cmd, Command, Parameter} -> - % Set the new state to [] - Ret = js_runner:call(JSVM, "userCommand", - [list_to_binary(Command), - list_to_binary(Parameter)]), - connection:send(Socket, "RefID", "JS says: ", Ret), - []; - % Set the new state to the reference generated, and JSVM associated - {hello} -> - Client = getRef(), - connection:send(Socket, Client, "__ok_hello"), - {Client, JSVM}; - {echo, RefID, _, MSG} -> - connection:send(Socket, RefID, "Your VM is ", getJSVM(RefID, State)), - []; - {crash, Zero} -> - 10/Zero; - {vms} -> - connection:send(Socket, "RefID", State); - % Set the new state to [] - Other -> - ggs_connection:send(Socket, "RefID", "__error"), - [] - end, - % Return the new state - NewState. -%%----------------------------------------------------- -%% Helpers -%%----------------------------------------------------- -getRef() -> - {A1,A2,A3} = now(), - random:seed(A1, A2, A3), - random:uniform(1000). - -getJSVM(RefID, State) -> - VMs = State#state.client_vm_map, - {value, {_,VM}} = lists:keysearch(RefID, 1, VMs), - VM. ->>>>>>> 02b72e54457112cb8d576cdcf3e982d2e34407fc From ffeaa3bdc1741ddb1d3ab080a6d2a4988820cbd6 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Fri, 4 Feb 2011 14:46:29 +0100 Subject: [PATCH 007/192] Fixed spelling errors line in ggs_server line 46-49. --- src/ggs_server.erl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/ggs_server.erl b/src/ggs_server.erl index 95a53dd..aed9a0f 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -43,10 +43,10 @@ start(Port) -> get_count() -> ggs_network:get_count(get_count). -_crash() -> gen_network:crash(). -_vms() -> gen_network:vms(). -_hello() -> gen_network:hello(). -_echo() -> gen_network:echo(). +_crash() -> gss_network:crash(). +_vms() -> gss_network:vms(). +_hello() -> gss_network:hello(). +_echo() -> gss_network:echo(). %%----------------------------------------------------- %% @doc Stops the server. From ea4fdfc362191b1f3313deac541f638f59c0b2f0 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Fri, 4 Feb 2011 14:58:21 +0100 Subject: [PATCH 008/192] Buggfixes in server and network. --- src/ggs_network.erl | 11 ++++++----- src/ggs_server.erl | 17 +++++++---------- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/src/ggs_network.erl b/src/ggs_network.erl index 5489069..97e2568 100644 --- a/src/ggs_network.erl +++ b/src/ggs_network.erl @@ -22,7 +22,8 @@ % export -export([start_link/0,start_link/1]). -export([init/1, handle_call/3, handle_cast/2, handle_info/2]). --export([get_count/1,crash/0,vms/0,hello/0,echo/0]). +%-export([get_count/1,crash/0,vms/0,hello/0,echo/0]). +-export([get_count/1]). -export([send/3, send/4]). -export([stop/0]). @@ -62,10 +63,10 @@ init([Port]) -> get_count(get_count) -> gen_server:call(?SERVER, get_count). -crash() -> gen_server:call(?server, _crash). -vms() -> gen_server:call(?SERVER, _vms). -hello() -> gen_server:call(?SERVER, _hello). -echo() -> gen_server:call(?SERVER, {_echo, RefID, _, MSG}). +%crash() -> gen_server:call(?SERVER, crash). +%vms() -> gen_server:call(?SERVER, vms). +%hello() -> gen_server:call(?SERVER, hello). +%echo() -> gen_server:call(?SERVER, {echo, RefID, _, MSG}). diff --git a/src/ggs_server.erl b/src/ggs_server.erl index aed9a0f..f47c064 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -10,12 +10,9 @@ -import(ggs_network). %% API --export([start/0, - start/1, - get_count/0, - stop/0 - ]). - +-export([start/0, start/1, stop/0 ]). +%-export([crash/0, vms/0, hello/0, echo/0]). +-export([get_count/0]). %%%==================================================== @@ -43,10 +40,10 @@ start(Port) -> get_count() -> ggs_network:get_count(get_count). -_crash() -> gss_network:crash(). -_vms() -> gss_network:vms(). -_hello() -> gss_network:hello(). -_echo() -> gss_network:echo(). +%crash() -> gss_network:crash(). +%vms() -> gss_network:vms(). +%hello() -> gss_network:hello(). +%echo() -> gss_network:echo(). %%----------------------------------------------------- %% @doc Stops the server. From 386e386ecf62424b0764f6e0711e1aa96fea18a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Fri, 4 Feb 2011 16:33:42 +0100 Subject: [PATCH 009/192] ggs_server needs start_link/0 and start_link/1 to function --- src/ggs_network.beam | Bin 2820 -> 0 bytes src/ggs_server.beam | Bin 616 -> 0 bytes src/ggs_server.erl | 6 +++--- 3 files changed, 3 insertions(+), 3 deletions(-) delete mode 100644 src/ggs_network.beam delete mode 100644 src/ggs_server.beam diff --git a/src/ggs_network.beam b/src/ggs_network.beam deleted file mode 100644 index c5531b6b4340e2b4bbcbad0ab9a4d291efacd769..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2820 zcmZ8jeQX>@6`$SNyIWtp&fM)ePSPaacrX6QIlisWAw4IR#yLT%N4tb)`)M{Du*Ms?|c4- z_8^S9o?o>pOD4yi^eE&I9WOeGGohHt!~;9DD|Xd(!x*?@pjhZsZLc0ity0OZg;HR< z<*4Jq)+VBp2Ym-vg|=UHT;R8??P?BQk6(=C0 zf4BvseCQknf%e#w)b$QVeUQYf0$;lvtGf>F5p)fA?0tAw1cL-kv-aV@w*1m`3t`FPW05o8qWJ&GV*e3Q494wTGy1R7_rF!hGg&dX-;Qd6Mqd z4B?EJyhDU@{LX@b3m3&?JYfh|GMDMq{7rrErp||TLWgxj&D^AySj`yKau^un$CGBx z)K%d+H#NGOjS075bxIRtmiZgK!?=b{cg%RJsj7mUfXNjwnanFH9aIw30QNet&ka*; zB%>tscw37x##NnuE;TcbOjIex=JQG`&~9B2J)^XO;szPjK!!D@geuD^)Inxrh9I|s;_?dEaXSp! zlm=a?paWMGxpLrohC@%HvUZLM@=A2&g1ky$;~b8-kZWvf(S7Xy-B*Kq2WWX8KTjd? z8W`%3Xe~1|WCZ5})^%V_gSEYx8wrW4AXl2xff%{S&GCggy24X5k&3bFd8LzXqe^Gn zQKo2I(KRJ)C>sR1QDKJCscuzalE*hH>*E=vLy*^Vv!?R2&IhP$+y>?yiL^wNZrqf4 z6wO>6h#9vRH5vekIBNgj9W$(#x`?HBu}ADk7wKYMS}`)-rO`&V4NFU)!r(w5V;0lp(lI6{kZBrN zHU^Bd0u^(GbWZ2ynMVB>EM~|_Zk_`RY?bD)sMtp+bv9`o<`9(URk7sue1)euEWY!?)(9YM_vJoda!ynLWC`F#+kgb2}*O* zQfV5nlTA>X1WHrq2^H41<&|ED-h0mnLFrZFgJ9OdtZTzMTcFj8kvA>9uW}#c*a``= z_&s3qNeYl{>K2g_5na1fOhmp ztyB@G z?`JQ(7ysd@uC7-P#r)H^j=a6{iMD;mK7D2NkH6Ud&6B_S!u(HHzIkHj=j|WNU%Qd{ zMf+d=Idk^Wv(J^!w)wr^IP$^q8-H$kSorMSTXScgIrF>y(Kn7f(Q`LDyX)sK{D*YR zJn|$VJG~NWfVG5rZULY^836v@SGFu%!KQqx3KzJk?84PFYnpqrfnUnrbD!;lDdaUY5roi?{{lLRLn{CP diff --git a/src/ggs_server.beam b/src/ggs_server.beam deleted file mode 100644 index 8818249268afb82e14ee2ed7b316d9b5a9b4d5c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 616 zcmY+Cv2GJV5Qb;>&KGPGaXMbWiV_JLUqDDSDb83Sie#L~MwB?~^X7cEZ}+sjHZ+kU zAt4HiJVKiEl$2EIQ`7StnK^6`M*435`DZjc(%##X!3zL>_U5qjuH$q803VThBg^c_ zO0$xtW}PsuNrsZ{lQ#24<%|}&n%6VwMyXyZ=Ub=CW}zp`g&gJTTnExDgvy>!#{(On zt0xlgNRbes=p)-mz(OAF0BfPa_ECl`>4zaZ<kpXs{ zL|91J56nXLEAgI^(K_{D=*)YZ3&%xCXAcPw5AhL-jb>|I!*iplm*NppN66o3e)##n znOp1nV?0SyG?0fgXf_3T9HDu%2Wbl4(<$v)?bdP5pnmpcfnPS|6Yy46Rf!5g_o6?~ zFK+I>erw+T-2K32v+l7v$IkCnzfb*Jx^%f#c2*_$mKL)))Lyk;w_lRyyS$LoV2m68 z7F_sZThzoJRRXJ*CY5tIh^M-cF}|*nlQK8L$+$E+GomPRmBoKwIX*fX#@3|qzyGF< Lm04$O9qt78!%2Cj diff --git a/src/ggs_server.erl b/src/ggs_server.erl index f47c064..097151f 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -10,7 +10,7 @@ -import(ggs_network). %% API --export([start/0, start/1, stop/0 ]). +-export([start_link/0, start_link/1, stop/0 ]). %-export([crash/0, vms/0, hello/0, echo/0]). -export([get_count/0]). @@ -23,10 +23,10 @@ %% @doc Starts the server %% @end %%----------------------------------------------------- -start() -> +start_link() -> ggs_network:start_link(). -start(Port) -> +start_link(Port) -> ggs_network:start_link(Port). From cb53cd6908fe8939e4f38dd991fee89c4932ec8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Fri, 4 Feb 2011 16:35:36 +0100 Subject: [PATCH 010/192] ggs_connection / connection modules do not exist, removing them from send calls --- src/ggs_network.erl | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/ggs_network.erl b/src/ggs_network.erl index 97e2568..be1b9d1 100644 --- a/src/ggs_network.erl +++ b/src/ggs_network.erl @@ -131,23 +131,23 @@ do_JSCall(Socket, Data, State) -> Ret = js_runner:call(JSVM, "userCommand", [list_to_binary(Command), list_to_binary(Parameter)]), - connection:send(Socket, "RefID", "JS says: ", Ret), + send(Socket, "RefID", "JS says: ", Ret), []; % Set the new state to the reference generated, and JSVM associated {hello} -> Client = getRef(), - connection:send(Socket, Client, "__ok_hello"), + send(Socket, Client, "__ok_hello"), {Client, JSVM}; {echo, RefID, _, MSG} -> - connection:send(Socket, RefID, "Your VM is ", getJSVM(RefID, State)), + send(Socket, RefID, "Your VM is ", getJSVM(RefID, State)), []; {crash, Zero} -> 10/Zero; {vms} -> - connection:send(Socket, "RefID", State); + send(Socket, "RefID", State); % Set the new state to [] Other -> - ggs_connection:send(Socket, "RefID", "__error"), + send(Socket, "RefID", "__error"), [] end, % Return the new state From 6166a109fc7b9c7bbb8a19f97dcc5c4259f63511 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Sun, 6 Feb 2011 19:17:08 +0100 Subject: [PATCH 011/192] added function to test callErlang() in js --- .gitignore | 1 + erlang_js | 2 +- python_client | 6 ++++-- start | 2 +- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 3f2a73f..d176978 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ *.swp *.dump *.beam +Mnesia.* diff --git a/erlang_js b/erlang_js index 5350ed2..cbac148 160000 --- a/erlang_js +++ b/erlang_js @@ -1 +1 @@ -Subproject commit 5350ed21606606dbee5ecb07e974f2abb9106270 +Subproject commit cbac148c440a93db44bad767a43c6d8619f6871f diff --git a/python_client b/python_client index 4dd82ae..f79ff6e 100755 --- a/python_client +++ b/python_client @@ -29,9 +29,9 @@ s.send( "Token: %s\n\ Command: define\n\ Content-Type: text\n\ -Content-Length: 42\n\ +Content-Length: 49\n\ \n\ -function myFun() {return 'Hello world!' ;}" % token) +function myFun() {return callErlang('a', 'b') ;}" % token) fs = s.makefile() data = fs.readline() print "Token:", token @@ -54,6 +54,7 @@ print "Data: ", ' '.join(data.split(" ")[1:]) s.close() +""" HOST = 'localhost' # The remote host PORT = int(sys.argv[1]) # The same port as used by the server s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) @@ -74,3 +75,4 @@ print "Token:", token print "Data: ", ' '.join(data.split(" ")[1:]) s.close() +""" diff --git a/start b/start index 6de5737..7dd9673 100755 --- a/start +++ b/start @@ -1,3 +1,3 @@ #!/usr/bin/env bash -erl -sname ggs -mnesia -boot start_sasl -pa erlang_js/ebin/ -pa ebin -pa src -s start_ggs +erl -sname ggs -mnesia -boot start_sasl -pa erlang_js/ebin/ -pa ebin -pa src -s start_ggs -sname ggs From 0361558f4bd4be9c907959d2c4fbc0c4c4d88ff2 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Sun, 6 Feb 2011 19:25:36 +0100 Subject: [PATCH 012/192] added js_helper module --- src/js_helper.erl | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 src/js_helper.erl diff --git a/src/js_helper.erl b/src/js_helper.erl new file mode 100644 index 0000000..efb38f4 --- /dev/null +++ b/src/js_helper.erl @@ -0,0 +1,8 @@ +-module(js_helper). +-export([test/0, echo/1]). + +test() -> + {ok, test}. + +echo(String) -> + {ok, String}. \ No newline at end of file From c67bcc32e7452f1064330ca1db0bfe8ce37a45f2 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 7 Feb 2011 01:21:51 -0800 Subject: [PATCH 013/192] removed double -sname --- start | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) mode change 100755 => 100644 start diff --git a/start b/start old mode 100755 new mode 100644 index 7dd9673..6de5737 --- a/start +++ b/start @@ -1,3 +1,3 @@ #!/usr/bin/env bash -erl -sname ggs -mnesia -boot start_sasl -pa erlang_js/ebin/ -pa ebin -pa src -s start_ggs -sname ggs +erl -sname ggs -mnesia -boot start_sasl -pa erlang_js/ebin/ -pa ebin -pa src -s start_ggs From fa63ea104bf036e2bd822260b946593847e2ad9c Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Fri, 11 Feb 2011 12:28:34 +0100 Subject: [PATCH 014/192] can't remember --- HOWTO | 2 +- build | 2 +- client | 17 +++++++++++++++++ erlang_js | 2 +- games/tic-tac-toe-js/index.html | 12 ++++++++++-- games/tic-tac-toe-js/proxy.rb | 0 python_client | 2 +- src/key_value_store.erl | 22 ++++++++++++++++++++++ start | 0 9 files changed, 53 insertions(+), 6 deletions(-) create mode 100644 client create mode 100644 games/tic-tac-toe-js/proxy.rb create mode 100644 src/key_value_store.erl mode change 100644 => 100755 start diff --git a/HOWTO b/HOWTO index 064d127..2d28ea8 100644 --- a/HOWTO +++ b/HOWTO @@ -3,7 +3,7 @@ python version 2.x set to default. INSTALL 1. Cd into directory where you to have the project -2. git-clone git@github.com:jeena/GGS.git (remember to have a local key) +2. git clone git@github.com:jeena/GGS.git (remember to have a local key) 3. cd GGS/ 4. git submodule init 5. git submodule update diff --git a/build b/build index d468113..a9c1c79 100755 --- a/build +++ b/build @@ -3,4 +3,4 @@ for i in `find src -name "*.erl"` do erlc -o ebin $i -done +done \ No newline at end of file diff --git a/client b/client new file mode 100644 index 0000000..dff11aa --- /dev/null +++ b/client @@ -0,0 +1,17 @@ +#!/usr/bin/env ruby -wKU + +require 'socket' # Sockets are in standard library + +hostname = 'localhost' +port = 7000 + +s = TCPSocket.open(hostname, port) + + + +s.print(q.chop) + +while line = s.gets # Read lines from the socket + puts "Got Echo: " + line.chop # And print with platform line terminator +end +s.close # Close the socket when done diff --git a/erlang_js b/erlang_js index cbac148..5350ed2 160000 --- a/erlang_js +++ b/erlang_js @@ -1 +1 @@ -Subproject commit cbac148c440a93db44bad767a43c6d8619f6871f +Subproject commit 5350ed21606606dbee5ecb07e974f2abb9106270 diff --git a/games/tic-tac-toe-js/index.html b/games/tic-tac-toe-js/index.html index 97d3c4f..5bdb286 100644 --- a/games/tic-tac-toe-js/index.html +++ b/games/tic-tac-toe-js/index.html @@ -12,8 +12,16 @@ function init() { GameServer.addGame(game_name, main()); - GameServer.addClient(game_name, new TicTacToeClient(frames.player1.document.getElementById("p1"), GameServer)); - GameServer.addClient(game_name, new TicTacToeClient(frames.player2.document.getElementById("p2"), GameServer)); + GameServer.addClient( + game_name, + new TicTacToeClient(frames.player1.document.getElementById("p1"), + GameServer + )); + GameServer.addClient( + game_name, + new TicTacToeClient(frames.player2.document.getElementById("p2"), + GameServer + )); } diff --git a/games/tic-tac-toe-js/proxy.rb b/games/tic-tac-toe-js/proxy.rb new file mode 100644 index 0000000..e69de29 diff --git a/python_client b/python_client index f79ff6e..9a1f1a9 100755 --- a/python_client +++ b/python_client @@ -31,7 +31,7 @@ Command: define\n\ Content-Type: text\n\ Content-Length: 49\n\ \n\ -function myFun() {return callErlang('a', 'b') ;}" % token) +function myFun() {return 'Hello World!' ;}" % token) fs = s.makefile() data = fs.readline() print "Token:", token diff --git a/src/key_value_store.erl b/src/key_value_store.erl new file mode 100644 index 0000000..70a2dc6 --- /dev/null +++ b/src/key_value_store.erl @@ -0,0 +1,22 @@ +-module(key_value_store). +-export(start/0,stop/0,set_item/2,get_item/1,get/1,length(0,clean/0). + +start() -> + spawn_link(fun() -> loop([]) end). + +stop() -> + self() ! {stop} + +loop(Touples) -> + receive -> + {set_item, Key, Value} -> + Touple = find(Touples, Key) + {stop} -> + {'EXIT', normal} + +find([], _) -> false; +find([{Key, _}|Tuples], Match) -> + case Key == Match of + true -> true; + false -> find(Tuples, Match) + end. \ No newline at end of file diff --git a/start b/start old mode 100644 new mode 100755 From 3ccef1e7114fc1bae4a6e8d7913f910932d5e115 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Fri, 11 Feb 2011 13:58:59 +0100 Subject: [PATCH 015/192] removed file --- src/key_value_store.erl | 22 ---------------------- 1 file changed, 22 deletions(-) delete mode 100644 src/key_value_store.erl diff --git a/src/key_value_store.erl b/src/key_value_store.erl deleted file mode 100644 index 70a2dc6..0000000 --- a/src/key_value_store.erl +++ /dev/null @@ -1,22 +0,0 @@ --module(key_value_store). --export(start/0,stop/0,set_item/2,get_item/1,get/1,length(0,clean/0). - -start() -> - spawn_link(fun() -> loop([]) end). - -stop() -> - self() ! {stop} - -loop(Touples) -> - receive -> - {set_item, Key, Value} -> - Touple = find(Touples, Key) - {stop} -> - {'EXIT', normal} - -find([], _) -> false; -find([{Key, _}|Tuples], Match) -> - case Key == Match of - true -> true; - false -> find(Tuples, Match) - end. \ No newline at end of file From 8c1fe0b4fdd4f380edf0d7be0dd479bbc10a819f Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Sun, 13 Feb 2011 16:44:11 +0100 Subject: [PATCH 016/192] Port to process. --- src/ggs_server.erl | 4 ++-- src/js_runner.erl | 32 +++++++++++++++++++++++++++----- 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/src/ggs_server.erl b/src/ggs_server.erl index 68b1625..91ea620 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -106,13 +106,13 @@ handle_cast({call, Token, Payload}, State) -> io:format("Got call request: ~p~n", [Payload]), JSVM = getJSVM(Token, State), erlang:display(erlang:port_info(JSVM)), - {ok, Ret} = js_runner:call(JSVM, Payload, []),%Payload, []), + {ok, Ret} = js_runner:call(JSVM, Payload, []), send(State#state.lsock, Token, "JS says:", binary_to_list(Ret)), {noreply, State}; % Set the new state to the reference generated, and JSVM associated handle_cast({hello, _, _}, State) -> - JSVM = js_runner:boot(), + JSVM = js_runner:boot(), Client = getRef(), send(State#state.lsock, Client, "This is your refID"), OldMap = State#state.client_vm_map, diff --git a/src/js_runner.erl b/src/js_runner.erl index ca866c4..780bfe1 100644 --- a/src/js_runner.erl +++ b/src/js_runner.erl @@ -1,13 +1,35 @@ -module(js_runner). --export([define/2,call/3, boot/0]). +-export([boot/0,define/2,call/3]). -boot() -> +%Mattias +boot() -> erlang_js:start(), {ok, Port} = js_driver:new(), + PortPid = spawn(fun() -> + port_process(Port) end ), + register(port_pid, PortPid), Port. -define(Port, Data) -> - ok = js:define(Port, list_to_binary(Data)). + +port_process(Port) -> +receive + {get_port, From} -> + From!{ok,Port}, + port_process(Port); + {define,From, JSVM, Data} -> + ok = js:define(JSVM, list_to_binary(Data)), + From!{ok}, + port_process(Port); + {call, From, JSVM, Func, Params} -> + {ok,Ret} = js:call(JSVM, list_to_binary(Func), Params), + From!{ok,Ret}, + port_process(Port) +end. + +define(Port, Data) -> + port_pid!{define,self(),Port,Data}. + + call(Port, Func, Params) -> - js:call(Port, list_to_binary(Func), Params). + port_pid!{call, self(), Port, Func, Params}. From e945bb0d31676fc3f2ec1db38df898f28cb5c26a Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Mon, 14 Feb 2011 15:09:01 +0100 Subject: [PATCH 017/192] From one port process to many. --- src/ggs_server.erl | 36 +++++++++++++++++++++++++----------- src/js_runner.erl | 26 ++++++++++++-------------- 2 files changed, 37 insertions(+), 25 deletions(-) diff --git a/src/ggs_server.erl b/src/ggs_server.erl index 91ea620..aae268e 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -97,28 +97,42 @@ handle_cast(stop, State) -> % Handle javascript defines handle_cast({define, Token, Payload}, State) -> JSVM = getJSVM(Token, State), - js_runner:define(JSVM, Payload), + %js_runner:define(JSVM, Payload), + JSVM!{define,self(),Payload}, send(State#state.lsock, Token, "Okay, defined that for you!"), {noreply, State}; % Handle javascript calls handle_cast({call, Token, Payload}, State) -> + io:format("test1~n"), io:format("Got call request: ~p~n", [Payload]), - JSVM = getJSVM(Token, State), - erlang:display(erlang:port_info(JSVM)), - {ok, Ret} = js_runner:call(JSVM, Payload, []), - send(State#state.lsock, Token, "JS says:", binary_to_list(Ret)), - {noreply, State}; - + io:format("test2~n"), + JSVM = getJSVM(Token, State), + JSVM!{get_port, self()}, + receive + {ok, Port} -> erlang:display(erlang:port_info(Port)), + io:format("test1~n") + end, + %erlang:display(erlang:port_info(Port)), + %{ok, Ret} = js_runner:call(JSVM, Payload, []), + JSVM!{call, self(), Payload, []}, + receive + {ok, Ret} -> + send(State#state.lsock, Token, "JS says:", binary_to_list(Ret)), + {noreply, State} + end; % Set the new state to the reference generated, and JSVM associated handle_cast({hello, _, _}, State) -> - JSVM = js_runner:boot(), + JSVM = js_runner:boot(), Client = getRef(), send(State#state.lsock, Client, "This is your refID"), OldMap = State#state.client_vm_map, - NewState = State#state{client_vm_map = OldMap ++ [{Client, JSVM}]}, - gen_server:cast(ggs_backup, {set_backup, NewState}), - {noreply, NewState}. + JSVM!{get_port, self()}, + receive + {ok, Port} -> NewState = State#state{client_vm_map = OldMap ++ [{Client, Port}]}, + gen_server:cast(ggs_backup, {set_backup, NewState}), + {noreply, NewState} + end. %%----------------------------------------------------- %% Helpers %%----------------------------------------------------- diff --git a/src/js_runner.erl b/src/js_runner.erl index 780bfe1..65511e9 100644 --- a/src/js_runner.erl +++ b/src/js_runner.erl @@ -1,14 +1,12 @@ -module(js_runner). --export([boot/0,define/2,call/3]). +-export([boot/0]). %Mattias boot() -> erlang_js:start(), {ok, Port} = js_driver:new(), - PortPid = spawn(fun() -> - port_process(Port) end ), - register(port_pid, PortPid), - Port. + PortPid = spawn(fun() -> port_process(Port) end ), + PortPid. port_process(Port) -> @@ -16,20 +14,20 @@ receive {get_port, From} -> From!{ok,Port}, port_process(Port); - {define,From, JSVM, Data} -> - ok = js:define(JSVM, list_to_binary(Data)), + {define, From, Data} -> + ok = js:define(From, list_to_binary(Data)), From!{ok}, port_process(Port); - {call, From, JSVM, Func, Params} -> - {ok,Ret} = js:call(JSVM, list_to_binary(Func), Params), + {call, From, Func, Params} -> + {ok,Ret} = js:call(From, list_to_binary(Func), Params), %Port unsure From!{ok,Ret}, port_process(Port) end. - -define(Port, Data) -> - port_pid!{define,self(),Port,Data}. +%These two babies will be ambigiuous +%define(Port, Data) -> +% port_pid!{define,self(),Port,Data}. -call(Port, Func, Params) -> - port_pid!{call, self(), Port, Func, Params}. +%call(Port, Func, Params) -> +% port_pid!{call, self(), Port, Func, Params}. From 05d5b60a9f5501641173f25688c2b81ef8296b9f Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Mon, 14 Feb 2011 15:36:53 +0100 Subject: [PATCH 018/192] merge with master. --- src/ggs_server.erl | 156 +++++++++++++++++++++++++++++++++++++++++++++ src/js_runner.erl | 33 ++++++++++ 2 files changed, 189 insertions(+) create mode 100644 src/ggs_server.erl create mode 100644 src/js_runner.erl diff --git a/src/ggs_server.erl b/src/ggs_server.erl new file mode 100644 index 0000000..aae268e --- /dev/null +++ b/src/ggs_server.erl @@ -0,0 +1,156 @@ +%%%---------------------------------------------------- +%%% @author Jonatan Pålsson +%%% @copyright 2010 Jonatan Pålsson +%%% @doc RPC over TCP server +%%% @end +%%%---------------------------------------------------- + +-module(ggs_server). +-behaviour(gen_server). + +%% API +-export([start_link/1, + start_link/0, + stop/0 + ]). + +%% gen_server callbacks +-export([init/1, handle_call/3, handle_cast/2, + handle_info/2, terminate/2, code_change/3]). + + +-define(SERVER, ?MODULE). +-define(DEFAULT_PORT, 1055). + +-record(state, {port, lsock, client_vm_map = []}). + +%%%==================================================== +%%% API +%%%==================================================== + +%%----------------------------------------------------- +%% @doc Starts the server +%% @end +%%----------------------------------------------------- +start_link(Port) -> + gen_server:start_link({local, ?SERVER}, ?MODULE, [Port], []). + +start_link() -> + start_link(?DEFAULT_PORT). + +%%----------------------------------------------------- +%% @doc Stops the server. +%% @spec stop() -> ok +%% @end +%%----------------------------------------------------- +stop() -> + gen_server:cast(?SERVER, stop). + +%%----------------------------------------------------- +%% gen_server callbacks +%%----------------------------------------------------- + +init([Port]) -> + case gen_server:call(ggs_backup, get_backup) of + {backup_state, not_initialized} -> + {ok, LSock} = gen_tcp:listen(Port, [{active, true}, + {reuseaddr, true}]), + {ok, #state{port = Port, lsock = LSock}, 0}; + {backup_state, State} -> + {ok, LSock} = gen_tcp:listen(Port, [{active, true}, + {reuseaddr, true}]), + {ok, State#state{lsock = LSock}, 0} + end. + +handle_call({backup_state, OldState}, _From, State) -> + io:format("Received old state from backup~n"), + {noreply, OldState}. + + +handle_info({tcp, Socket, RawData}, State) -> + ggs_protocol:parse(RawData), + {noreply, State#state{lsock = Socket}}; + +handle_info({tcp_closed, Socket}, State) -> + gen_tcp:close(Socket), + {stop, "Client closed socket", State}; + +handle_info(timeout, #state{lsock = LSock} = State) -> + {ok, _Sock} = gen_tcp:accept(LSock), + {noreply, State}; + +handle_info(Other, State) -> + erlang:display(Other). + +terminate(_Reason, _State) -> + ok. + +code_change(_OldVsn, State, _Extra) -> + {ok, State}. + +%%----------------------------------------------------- +%% Internal functions +%%----------------------------------------------------- +handle_cast(stop, State) -> + {stop, normal, State}; + +% Handle javascript defines +handle_cast({define, Token, Payload}, State) -> + JSVM = getJSVM(Token, State), + %js_runner:define(JSVM, Payload), + JSVM!{define,self(),Payload}, + send(State#state.lsock, Token, "Okay, defined that for you!"), + {noreply, State}; + +% Handle javascript calls +handle_cast({call, Token, Payload}, State) -> + io:format("test1~n"), + io:format("Got call request: ~p~n", [Payload]), + io:format("test2~n"), + JSVM = getJSVM(Token, State), + JSVM!{get_port, self()}, + receive + {ok, Port} -> erlang:display(erlang:port_info(Port)), + io:format("test1~n") + end, + %erlang:display(erlang:port_info(Port)), + %{ok, Ret} = js_runner:call(JSVM, Payload, []), + JSVM!{call, self(), Payload, []}, + receive + {ok, Ret} -> + send(State#state.lsock, Token, "JS says:", binary_to_list(Ret)), + {noreply, State} + end; +% Set the new state to the reference generated, and JSVM associated +handle_cast({hello, _, _}, State) -> + JSVM = js_runner:boot(), + Client = getRef(), + send(State#state.lsock, Client, "This is your refID"), + OldMap = State#state.client_vm_map, + JSVM!{get_port, self()}, + receive + {ok, Port} -> NewState = State#state{client_vm_map = OldMap ++ [{Client, Port}]}, + gen_server:cast(ggs_backup, {set_backup, NewState}), + {noreply, NewState} + end. +%%----------------------------------------------------- +%% Helpers +%%----------------------------------------------------- +getRef() -> + %{A1,A2,A3} = now(), + %#random:seed(A1, A2, A3), + %random:uniform(1000). + string:strip(os:cmd("uuidgen"), right, $\n ). + +getJSVM(RefID, State) -> + VMs = State#state.client_vm_map, + erlang:display(RefID), + erlang:display(VMs), + {value, {_,VM}} = lists:keysearch(RefID, 1, VMs), + VM. + +send(Socket, RefID, String) -> + gen_tcp:send(Socket, string:join([RefID,String,"\n"], " ")). + +send(Socket, RefID, String1, String2) -> + gen_tcp:send(Socket, string:join([RefID,String1, String2,"\n"], " ")). diff --git a/src/js_runner.erl b/src/js_runner.erl new file mode 100644 index 0000000..65511e9 --- /dev/null +++ b/src/js_runner.erl @@ -0,0 +1,33 @@ +-module(js_runner). +-export([boot/0]). + +%Mattias +boot() -> + erlang_js:start(), + {ok, Port} = js_driver:new(), + PortPid = spawn(fun() -> port_process(Port) end ), + PortPid. + + +port_process(Port) -> +receive + {get_port, From} -> + From!{ok,Port}, + port_process(Port); + {define, From, Data} -> + ok = js:define(From, list_to_binary(Data)), + From!{ok}, + port_process(Port); + {call, From, Func, Params} -> + {ok,Ret} = js:call(From, list_to_binary(Func), Params), %Port unsure + From!{ok,Ret}, + port_process(Port) +end. + +%These two babies will be ambigiuous +%define(Port, Data) -> +% port_pid!{define,self(),Port,Data}. + + +%call(Port, Func, Params) -> +% port_pid!{call, self(), Port, Func, Params}. From df197dab408e09910a6cb2aa09fe92990c7d6d8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 14 Feb 2011 17:45:56 +0100 Subject: [PATCH 019/192] Switched over to new protocol module --- src/ggs_protocol.erl | 16 +++++++++++++--- src/ggs_server.erl | 40 ++++++++++++++++------------------------ 2 files changed, 29 insertions(+), 27 deletions(-) diff --git a/src/ggs_protocol.erl b/src/ggs_protocol.erl index 46c1ba1..35da585 100644 --- a/src/ggs_protocol.erl +++ b/src/ggs_protocol.erl @@ -1,10 +1,20 @@ -module(ggs_protocol). --export([parse/1]). +-export([parse/1, getToken/1]). +%% API Functions parse(Data) -> Parsed = do_parse(Data, []), prettify(Parsed). +getToken(Parsed) -> + case lists:keyfind(token, 1, Parsed) of + {_, Value} -> + Value; + false -> + false + end. + +%% Internal helpers do_parse(Data, ParsedMessage) -> NewLinePos = string:chr(Data, $\n), Line = string:substr(Data, 1, NewLinePos-1), @@ -15,7 +25,8 @@ do_parse(Data, ParsedMessage) -> {separator, data_next} -> {_, Value} = lists:keyfind(content_len, 1, ParsedMessage), {ContentLength, []} = string:to_integer(Value), - {ParsedMessage, handle_data(string:substr(Data, NewLinePos+1), ContentLength)} + {data, ArgumentData} = handle_data(string:substr(Data, NewLinePos+1), ContentLength), + {ParsedMessage, ArgumentData} end. handle([[]]) -> @@ -33,7 +44,6 @@ handle_data(Data, Length) -> {data, string:substr(Data,1,Length)}. -%% Helpers prettify({Args, Data}) -> case lists:keyfind(srv_cmd, 1, Args) of {_, Value} -> diff --git a/src/ggs_server.erl b/src/ggs_server.erl index 4a116fa..f8eae1e 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -1,10 +1,3 @@ -%%%---------------------------------------------------- -%%% @author Jonatan Pålsson -%%% @copyright 2010 Jonatan Pålsson -%%% @doc RPC over TCP server -%%% @end -%%%---------------------------------------------------- - -module(ggs_server). -behaviour(gen_server). @@ -95,37 +88,36 @@ handle_cast(stop, State) -> {stop, normal, State}; % Handle javascript defines -handle_cast({srv_cmd, "define", Args, Data}, State) -> - %JSVM = getJSVM(Token, State), - %js_runner:define(JSVM, Payload), +handle_cast({srv_cmd, "define", Headers, Data}, State) -> + Token = ggs_protocol:getToken(Headers), + JSVM = getJSVM(Token, State), + js_runner:define(JSVM, Data), send(State#state.lsock, "Token", "Okay, defined that for you!"), {noreply, State}; % Handle javascript calls -handle_cast({srv_cmd, "call", Args, Data}, State) -> - %io:format("Got call request: ~p~n", [Payload]), - %JSVM = getJSVM(Token, State), - %erlang:display(erlang:port_info(JSVM)), - %{ok, Ret} = js_runner:call(JSVM, Payload, []),%Payload, []), - %send(State#state.lsock, Token, "JS says:", binary_to_list(Ret)), +handle_cast({srv_cmd, "call", Headers, Data}, State) -> + Token = ggs_protocol:getToken(Headers), + io:format("Got call request: ~p~n", [Data]), + JSVM = getJSVM(Token, State), + erlang:display(erlang:port_info(JSVM)), + {ok, Ret} = js_runner:call(JSVM, Data, []),%Payload, []), + send(State#state.lsock, Token, "JS says:", binary_to_list(Ret)), {noreply, State}; % Set the new state to the reference generated, and JSVM associated handle_cast({srv_cmd, "hello", Headers, Data}, State) -> - %JSVM = js_runner:boot(), + JSVM = js_runner:boot(), Client = getRef(), send(State#state.lsock, Client, "This is your refID"), - %OldMap = State#state.client_vm_map, - %NewState = State#state{client_vm_map = OldMap ++ [{Client, JSVM}]}, - %gen_server:cast(ggs_backup, {set_backup, NewState}), - {noreply, State}. %NewState + OldMap = State#state.client_vm_map, + NewState = State#state{client_vm_map = OldMap ++ [{Client, JSVM}]}, + gen_server:cast(ggs_backup, {set_backup, NewState}), + {noreply, NewState}. %%----------------------------------------------------- %% Helpers %%----------------------------------------------------- getRef() -> - %{A1,A2,A3} = now(), - %#random:seed(A1, A2, A3), - %random:uniform(1000). string:strip(os:cmd("uuidgen"), right, $\n ). getJSVM(RefID, State) -> From 1e08fe0015b936fdecfaceb4177e628d2d25b275 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Mon, 14 Feb 2011 17:50:22 +0100 Subject: [PATCH 020/192] Interface modifications. Methods for vm handling. --- src/ggs_server.erl | 43 ++++++++++++++----------------------------- src/ggs_vm_runner.erl | 28 ++++++++++++++++++++++++++++ src/js_runner.erl | 33 --------------------------------- 3 files changed, 42 insertions(+), 62 deletions(-) create mode 100644 src/ggs_vm_runner.erl delete mode 100644 src/js_runner.erl diff --git a/src/ggs_server.erl b/src/ggs_server.erl index aae268e..34d297f 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -95,44 +95,29 @@ handle_cast(stop, State) -> {stop, normal, State}; % Handle javascript defines -handle_cast({define, Token, Payload}, State) -> - JSVM = getJSVM(Token, State), - %js_runner:define(JSVM, Payload), - JSVM!{define,self(),Payload}, +handle_cast({define, Token, SourceCode}, State) -> + GameVM = getJSVM(Token, State), + ggs_vm_runner:define(GameVM, SourceCode), send(State#state.lsock, Token, "Okay, defined that for you!"), {noreply, State}; % Handle javascript calls -handle_cast({call, Token, Payload}, State) -> - io:format("test1~n"), - io:format("Got call request: ~p~n", [Payload]), - io:format("test2~n"), - JSVM = getJSVM(Token, State), - JSVM!{get_port, self()}, - receive - {ok, Port} -> erlang:display(erlang:port_info(Port)), - io:format("test1~n") - end, - %erlang:display(erlang:port_info(Port)), - %{ok, Ret} = js_runner:call(JSVM, Payload, []), - JSVM!{call, self(), Payload, []}, - receive - {ok, Ret} -> - send(State#state.lsock, Token, "JS says:", binary_to_list(Ret)), - {noreply, State} - end; +handle_cast({call, Token, Command}, State) -> + GameVM = getJSVM(Token, State), + ggs_vm_runner:user_command(GameVM, "User", Command, []), + %send(State#state.lsock, Token, "JS says:", binary_to_list(Ret)), Unessecary + {noreply, State}; + % Set the new state to the reference generated, and JSVM associated handle_cast({hello, _, _}, State) -> - JSVM = js_runner:boot(), + GameVM = ggs_vm_runner:start_link(), Client = getRef(), send(State#state.lsock, Client, "This is your refID"), OldMap = State#state.client_vm_map, - JSVM!{get_port, self()}, - receive - {ok, Port} -> NewState = State#state{client_vm_map = OldMap ++ [{Client, Port}]}, - gen_server:cast(ggs_backup, {set_backup, NewState}), - {noreply, NewState} - end. + NewState = State#state{client_vm_map = OldMap ++ [{Client, GameVM}]}, + gen_server:cast(ggs_backup, {set_backup, NewState}), + {noreply, NewState}. + %%----------------------------------------------------- %% Helpers %%----------------------------------------------------- diff --git a/src/ggs_vm_runner.erl b/src/ggs_vm_runner.erl new file mode 100644 index 0000000..cf633f0 --- /dev/null +++ b/src/ggs_vm_runner.erl @@ -0,0 +1,28 @@ +-module(ggs_vm_runner). +-export([start_link/0, define/2, user_command/4]). + +%Mattias +start_link() -> + erlang_js:start(), + {ok, Port} = js_driver:new(), + js:define(Port, <<"function userCommand(user, command, args){}">>), + PortPid = spawn_link(fun() -> loop(Port) end ), + PortPid. + + +loop(Port) -> +receive + {define, SourceCode} -> + ok = js:define(Port, list_to_binary(SourceCode)), + loop(Port); + {user_command, User, Command, Args} -> + {ok, Ret} = js:call(Port, <<"userCommand">>, list_to_binary([User,Command,Args])), + loop(Port) +end. + + +define(GameVM, SourceCode) -> + GameVM ! {define,SourceCode}. + +user_command(GameVM, User, Command, Args) -> + GameVM ! {user_command, User, Command, Args}. diff --git a/src/js_runner.erl b/src/js_runner.erl deleted file mode 100644 index 65511e9..0000000 --- a/src/js_runner.erl +++ /dev/null @@ -1,33 +0,0 @@ --module(js_runner). --export([boot/0]). - -%Mattias -boot() -> - erlang_js:start(), - {ok, Port} = js_driver:new(), - PortPid = spawn(fun() -> port_process(Port) end ), - PortPid. - - -port_process(Port) -> -receive - {get_port, From} -> - From!{ok,Port}, - port_process(Port); - {define, From, Data} -> - ok = js:define(From, list_to_binary(Data)), - From!{ok}, - port_process(Port); - {call, From, Func, Params} -> - {ok,Ret} = js:call(From, list_to_binary(Func), Params), %Port unsure - From!{ok,Ret}, - port_process(Port) -end. - -%These two babies will be ambigiuous -%define(Port, Data) -> -% port_pid!{define,self(),Port,Data}. - - -%call(Port, Func, Params) -> -% port_pid!{call, self(), Port, Func, Params}. From bf98e1fee2c9338466ea58b2d08c9a277cf370ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 14 Feb 2011 19:32:46 +0100 Subject: [PATCH 021/192] Fixed ggs_vm_runner --- src/ggs_server.erl | 4 ++-- src/ggs_vm_runner.erl | 40 ++++++++++++++++++++++++++++------------ 2 files changed, 30 insertions(+), 14 deletions(-) diff --git a/src/ggs_server.erl b/src/ggs_server.erl index 34d297f..c695fd6 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -104,8 +104,8 @@ handle_cast({define, Token, SourceCode}, State) -> % Handle javascript calls handle_cast({call, Token, Command}, State) -> GameVM = getJSVM(Token, State), - ggs_vm_runner:user_command(GameVM, "User", Command, []), - %send(State#state.lsock, Token, "JS says:", binary_to_list(Ret)), Unessecary + Ret = ggs_vm_runner:user_command(GameVM, "User", Command, []), + send(State#state.lsock, Token, "JS says:", binary_to_list(Ret)), {noreply, State}; % Set the new state to the reference generated, and JSVM associated diff --git a/src/ggs_vm_runner.erl b/src/ggs_vm_runner.erl index cf633f0..6c66378 100644 --- a/src/ggs_vm_runner.erl +++ b/src/ggs_vm_runner.erl @@ -4,25 +4,41 @@ %Mattias start_link() -> erlang_js:start(), - {ok, Port} = js_driver:new(), - js:define(Port, <<"function userCommand(user, command, args){}">>), - PortPid = spawn_link(fun() -> loop(Port) end ), + PortPid = spawn_link( fun() -> + process_flag(trap_exit, true), + {ok, Port} = js_driver:new(), + js:define(Port, <<"function userCommand(user, command, args){return 'Hello world';}">>), + loop(Port) + end ), PortPid. loop(Port) -> -receive - {define, SourceCode} -> - ok = js:define(Port, list_to_binary(SourceCode)), - loop(Port); - {user_command, User, Command, Args} -> - {ok, Ret} = js:call(Port, <<"userCommand">>, list_to_binary([User,Command,Args])), - loop(Port) -end. + io:format("I am PID"), + erlang:display(self()), + receive + {define, SourceCode} -> + ok = js:define(Port, list_to_binary(SourceCode)), + loop(Port); + {user_command, User, Command, Args, From, Ref} -> + {ok, Ret} = js:call(Port, <<"userCommand">>, + [ list_to_binary(User), + list_to_binary(Command), + list_to_binary(Args) + ]), + From ! {Ref, Ret}, + loop(Port) + end. define(GameVM, SourceCode) -> GameVM ! {define,SourceCode}. user_command(GameVM, User, Command, Args) -> - GameVM ! {user_command, User, Command, Args}. + Ref = make_ref(), + GameVM ! {user_command, User, Command, Args, self(), Ref}, + receive + {Ref, RetVal} -> + RetVal; + Other -> Other + end. From 66aa7f4bf123e6157a0c6fa8679dde63ce397542 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 15 Feb 2011 07:57:44 +0100 Subject: [PATCH 022/192] some more interface compatibility --- src/ggs_server.erl | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/src/ggs_server.erl b/src/ggs_server.erl index ab9b8f8..833feac 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -105,26 +105,33 @@ handle_cast({srv_cmd, "call", Headers, Data}, State) -> {noreply, State}; % Set the new state to the reference generated, and JSVM associated +%handle_cast({server, hello, Headers}, State) -> handle_cast({srv_cmd, "hello", Headers, Data}, State) -> - GameVM = ggs_vm_runner:start_link(), - Client = getRef(), - send(State#state.lsock, Client, "This is your refID"), + GameToken = case proplist:get_value(game_token, Headers) of -> + undefined -> getNewToken(); + GT -> GT; + end, + ClientToken = getNewToken(), OldMap = State#state.client_vm_map, - NewState = State#state{client_vm_map = OldMap ++ [{Client, GameVM}]}, + NewState = State#state{client_vm_map = OldMap ++ [{ClientToken, GameVM, GameToken}]}, gen_server:cast(ggs_backup, {set_backup, NewState}), {noreply, NewState}. + %%----------------------------------------------------- %% Helpers %%----------------------------------------------------- -getRef() -> +getNewToken() -> string:strip(os:cmd("uuidgen"), right, $\n ). -getJSVM(RefID, State) -> +getJSVM(ClientToken, State) -> VMs = State#state.client_vm_map, - erlang:display(RefID), - erlang:display(VMs), - {value, {_,VM}} = lists:keysearch(RefID, 1, VMs), + {value, {_,VM}} = lists:keysearch(ClientToken, 1, VMs), + VM. + +getGameVMByGameToken(GameToken, State) -> + VMs = State#state.client_vm_map, + {value, {_,VM}} = lists:keysearch(GameToken, 3, VMs), VM. send(Socket, RefID, String) -> From ac63eb124bfd255d7d85a420e5247228417f4148 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 16 Feb 2011 15:48:55 +0100 Subject: [PATCH 023/192] Added specification and documentation for the dispatcher --- src/ggs_dispatcher.erl | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/ggs_dispatcher.erl b/src/ggs_dispatcher.erl index e69de29..8f89ceb 100644 --- a/src/ggs_dispatcher.erl +++ b/src/ggs_dispatcher.erl @@ -0,0 +1,21 @@ +-module(ggs_dispatcher). +-export([start_link/1, stop/1]). + +%% @doc This module is the entry-point for clients connecting to GGS. This is +%% the module responsible for: +%% * Greeting a connecting client, and associating a socket for it +%% * Spawning a ggs_player for the connecting client, passing the socket + +%% @doc Starts a new dispatcher with the specified port. Registers this +%% dispatcher under the name "ggs_dispatcher". The pid of the dispatcher +%% is returned. +%% @spec start_link(Port) -> Pid +%% Port = Integer +%% Pid = # +start_link(Port) -> + not_implemented. + +%% @doc Stops the dispatcher with the specified reason. +%% @spec stop(Reason) -> ok. +%% Reason = String +stop(Reason) -> not_implemented. From e4bdc05bc816f4b314544f0a8a0baea9631e4cf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 16 Feb 2011 16:05:48 +0100 Subject: [PATCH 024/192] Added documentation for ggs_gamevm.erl --- src/ggs_gamevm.erl | 50 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index e69de29..8116a96 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -0,0 +1,50 @@ +-module(ggs_vm_runner). +-export([start_link/0, define/2, user_command/4]). +%% @doc This module is responsible for running the game VM:s. You can issue +%% commands to a vm using this module. + +%% @doc Create a new VM process. The process ID is returned and can be used +%% with for example the define method of this module. +start_link() -> + erlang_js:start(), %% @TODO: should only be done once + PortPid = spawn_link( fun() -> + process_flag(trap_exit, true), + {ok, Port} = js_driver:new(), + js:define(Port, <<"function userCommand(user, command, args){return 'Hello world';}">>), + loop(Port) + end ), + PortPid. + +%% @doc Define some new code on the specified VM, returns the atom ok. +define(GameVM, SourceCode) -> + GameVM ! {define,SourceCode}, + ok. + +%% @doc Execute a user command on the specified VM. This function is +%% asynchronous, and returns ok. +%% @spec user_command(GameVM, User, Command, Args) -> ok +%% GameVM = process IS of VM +%% Player = the player running the command +%% Command = a game command to run +%% Args = arguments for the Command parameter +user_command(GameVM, Player, Command, Args) -> + Ref = make_ref(), + GameVM ! {user_command, Player, Command, Args, self(), Ref}, + ok. + +%% Helper functions + +loop(Port) -> + receive + {define, SourceCode} -> + ok = js:define(Port, list_to_binary(SourceCode)), + loop(Port); + {user_command, User, Command, Args, From, Ref} -> + {ok, Ret} = js:call(Port, <<"userCommand">>, + [ list_to_binary(User), + list_to_binary(Command), + list_to_binary(Args) + ]), + From ! {Ref, Ret}, + loop(Port) + end. From e84e9cef5320e2a6100d33e5adcba535b06399bf Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 16 Feb 2011 16:05:55 +0100 Subject: [PATCH 025/192] added interface --- src/ggs_table.erl | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/src/ggs_table.erl b/src/ggs_table.erl index e69de29..87a623a 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -0,0 +1,36 @@ +%% @doc This module represents a Player with a Socket and a Token + +-module(ggs_table). +-export([ + start_link/1, + add_player/2, + remove_player/2, + stop/2, + notify/3 +]). + +% @doc returns a new table +start_link(Token) -> + not_implemented(). + +% @doc adds a player to a table +add_player(Table, Player) -> + not_implemented(). + +% @doc removes player form a table +remove_player(Table, Player) -> + not_implemented(). + +% @doc stops the table process +stop(Table) -> + not_implemented(). + +% @doc notifies the table with a message from a player +notify(Table, Player, Message) -> + not_implemented(). + + +% loop + + +% private helpers \ No newline at end of file From ae1856e1f2a96381f77425ee03a6545bd314e93a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 16 Feb 2011 16:50:57 +0100 Subject: [PATCH 026/192] Added supervisor structure --- src/ggs_app.erl | 14 ++++++++++++++ src/ggs_sup.erl | 41 +++++++++++++++++++++++++++++++++++++++++ src/start_ggs.erl | 7 +++++++ 3 files changed, 62 insertions(+) create mode 100644 src/ggs_app.erl create mode 100644 src/ggs_sup.erl create mode 100644 src/start_ggs.erl diff --git a/src/ggs_app.erl b/src/ggs_app.erl new file mode 100644 index 0000000..d8b2e60 --- /dev/null +++ b/src/ggs_app.erl @@ -0,0 +1,14 @@ +-module(ggs_app). +-behaviour(application). +-export([start/2, stop/1]). + +start(_StartType, _StartArgs) -> + case ggs_sup:start_link(9000) of + {ok, Pid} -> + {ok, Pid}; + Other -> + {error, Other} + end. + +stop(_State) -> + ok. diff --git a/src/ggs_sup.erl b/src/ggs_sup.erl new file mode 100644 index 0000000..bfb2617 --- /dev/null +++ b/src/ggs_sup.erl @@ -0,0 +1,41 @@ +-module(ggs_sup). +-behaviour(supervisor). + +%% API +-export([start/1, start_link/1]). + +%% Supervisor callbacks +-export([init/1]). +-define(SERVER, ?MODULE). + +start(Port) -> + [FirstArg] = Port, + {IntPort, _} = string:to_integer(FirstArg), + start_link(IntPort). + +start_link(Port) -> + supervisor:start_link({local, ?SERVER}, ?MODULE, [Port]). + +init([Port]) -> + Dispatcher = {ggs_dispatcher, + {ggs_dispatcher, start_link, [Port]}, + permanent, + 2000, + worker, + [ggs_dispatcher] + }, + Coordinator = {ggs_coordinator, + {ggs_coordinator, start_link, []}, + permanent, + 2000, + worker, + [ggs_dispatcher] + }, + Children = [Dispatcher, Coordinator], + + RestartStrategy = { one_for_one, % Restart only crashing child + 10, % Allow ten crashes per.. + 1 % 1 second, then crash supervisor. + }, + {ok, {RestartStrategy, Children}}. + diff --git a/src/start_ggs.erl b/src/start_ggs.erl new file mode 100644 index 0000000..3955715 --- /dev/null +++ b/src/start_ggs.erl @@ -0,0 +1,7 @@ +-module(start_ggs). +-export([start/0]). + +start() -> + application:start(inets), + application:start(erlang_js), + application:start(ggs). From 3b94f5da2447f14119f4004a0fd15f590822cac9 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Wed, 16 Feb 2011 17:11:27 +0100 Subject: [PATCH 027/192] Added edoc to player. --- src/ggs_player.erl | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/ggs_player.erl b/src/ggs_player.erl index e69de29..bdfcf7d 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -0,0 +1,22 @@ + + + +%% @spec start_link(GameToken::string()) -> socket() +%% @doc Spawn a new player process. +start_link(Socket) -> end. + + +%% @spec notify(Player::Pid(), From::Pid(), +%% {Command::String(), Message::string()}) -> ok +%% @doc send a message to a player. +notify(Player, From, Message) -> end. + + +%% @spec get_token() -> string() +%% @doc Get the player token. +get_token() -> end. + + +%% @spec stop(Table::pid()) -> Reason::string() +%% @doc Properly terminates the process. +stop(Table) -> end. From e09b3cbd143facecb87714029fb31c6972c4b453 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Wed, 16 Feb 2011 17:28:55 +0100 Subject: [PATCH 028/192] Refined ggs_player. --- src/ggs_player.erl | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/ggs_player.erl b/src/ggs_player.erl index bdfcf7d..4a24ef4 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -1,22 +1,26 @@ +-module(ggs_player). +-export([start_link/1, notify/3, get_token/1, stop/1]). +%% @doc This module handles communication between a player and GGS. This module is +%%responsible for: +%% * the storage of the player socket, player token and a table token. - -%% @spec start_link(GameToken::string()) -> socket() -%% @doc Spawn a new player process. -start_link(Socket) -> end. +%% @doc Spawns a new player process. +%% @spec start_link(Socket::socket()) -> ok +start_link(Socket) -> not_implemented. %% @spec notify(Player::Pid(), From::Pid(), %% {Command::String(), Message::string()}) -> ok %% @doc send a message to a player. -notify(Player, From, Message) -> end. +notify(Player, From, Message) -> not_implemented. %% @spec get_token() -> string() %% @doc Get the player token. -get_token() -> end. +get_token() -> not_implemented. %% @spec stop(Table::pid()) -> Reason::string() %% @doc Properly terminates the process. -stop(Table) -> end. +stop(Table) -> not_implemented. From c42bd46c44c211eee59a325a7d9bcf798bd324c0 Mon Sep 17 00:00:00 2001 From: niklas Date: Wed, 16 Feb 2011 16:56:06 +0100 Subject: [PATCH 029/192] Initial interface --- src/ggs_coordinator.erl | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index e69de29..ed9c4e3 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -0,0 +1,38 @@ +-module(ggs_coordinator). +-export(). + +%% @doc This module act as "the man in the middle". +%% Creates the starting connection between table and players. + +%% @doc Starts the coordinator process. +start_link() -> + not_implemented. + +%% @doc Terminates the coordinator process. +stop() -> + not_implemented. + +%% @doc Creates a unique token for the table. +join_table() -> + not_implemented. + +%% @doc +create_table() -> + not_implemented. + +%% @doc This is the first function run by a newly created players. +%% Generates a unique token that we use to identify the player. +join_lobby() -> + not_implemented. + +%% @doc Act as a supervisor to player and respawns player when it gets bad data. +respawn_player(Player, Socket) -> + not_implemented. + +%% @doc Act as a supervisor to table and respawns table when it gets bad data. +respawn_table() -> + not_implemented. + +%% @doc Removes a player from coordinator. +remove_player(From, Player) -> + not_implemented. From c23e79de240b0c20d85f6a30188f96a4793c147f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 16 Feb 2011 17:05:22 +0100 Subject: [PATCH 030/192] Updated ggs_dispatcher with gen_server functionality --- src/ggs_dispatcher.erl | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/ggs_dispatcher.erl b/src/ggs_dispatcher.erl index 8f89ceb..bc3327a 100644 --- a/src/ggs_dispatcher.erl +++ b/src/ggs_dispatcher.erl @@ -1,6 +1,13 @@ -module(ggs_dispatcher). + +%% API Exports -export([start_link/1, stop/1]). +%% gen_server callback exports +-export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, + code_change/3]). + + %% @doc This module is the entry-point for clients connecting to GGS. This is %% the module responsible for: %% * Greeting a connecting client, and associating a socket for it @@ -19,3 +26,22 @@ start_link(Port) -> %% @spec stop(Reason) -> ok. %% Reason = String stop(Reason) -> not_implemented. + + +%% gen_server callbacks + +%% @doc Initiate the dispatcher. This is called from gen_server +init([Port]) -> + {ok, ok}. + +handle_call(_Message, _From, State) -> + {noreply, State}. + +handle_cast(_Message, State) -> + {noreply, State}. + +terminate(normal, _State) -> + ok. + +code_change(_OldVsn, State, Extra) -> + {ok, State}. From 702a887117cf9c1992b2d4b6997ee1e28a2d6065 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Wed, 16 Feb 2011 18:03:48 +0100 Subject: [PATCH 031/192] Completed edoc of player. --- src/ggs_player.erl | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 4a24ef4..b5815af 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -3,24 +3,30 @@ %% @doc This module handles communication between a player and GGS. This module is %%responsible for: -%% * the storage of the player socket, player token and a table token. +%% * The storage of the player socket, player token and a table token. +%% * Ability to fetch a player token. +%% * Forwarding messages from players to the game +%% * Remove a player from GGS -%% @doc Spawns a new player process. +%% @doc Spawns a process representing the player in GGS. Takes the player socket as +%% an argument for storage and later usage. Creates a unique player token +%% identifying the player. %% @spec start_link(Socket::socket()) -> ok start_link(Socket) -> not_implemented. +%% @doc Handles incoming messages from the GGS and forwards them through the player +%% socket to the player. %% @spec notify(Player::Pid(), From::Pid(), %% {Command::String(), Message::string()}) -> ok -%% @doc send a message to a player. notify(Player, From, Message) -> not_implemented. - +%% @doc Get the player token uniquely representing the player. %% @spec get_token() -> string() -%% @doc Get the player token. get_token() -> not_implemented. +%% @doc Properly terminates the player process. The player token will be destroyed. +%% Makes table token unreferenced and destroys the process in the end. %% @spec stop(Table::pid()) -> Reason::string() -%% @doc Properly terminates the process. stop(Table) -> not_implemented. From a801008cd9438971db21a54d1b5b910e34716733 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 16 Feb 2011 17:11:51 +0100 Subject: [PATCH 032/192] Initial interface --- src/ggs_network.erl | 170 ------------------------------------------ src/ggs_table.erl | 36 +++++++++ src/ggs_vm_runner.erl | 28 ------- 3 files changed, 36 insertions(+), 198 deletions(-) delete mode 100644 src/ggs_network.erl delete mode 100644 src/ggs_vm_runner.erl diff --git a/src/ggs_network.erl b/src/ggs_network.erl deleted file mode 100644 index be1b9d1..0000000 --- a/src/ggs_network.erl +++ /dev/null @@ -1,170 +0,0 @@ -%%%---------------------------------------------------- -%%% @author Jonatan Plsson -%%% @copyright 2010 Jonatan Plsson -%%% @doc RPC over TCP server -%%% @end -%%%---------------------------------------------------- -%%% @author Mattias Pettersson -%%% @doc Socket module for GGS -%%% @end -%%%---------------------------------------------------- - - --module(ggs_network). - --behaviour(gen_server). - -%define --define(SERVER, ?MODULE). --define(DEFAULT_PORT, 1055). - - -% export --export([start_link/0,start_link/1]). --export([init/1, handle_call/3, handle_cast/2, handle_info/2]). -%-export([get_count/1,crash/0,vms/0,hello/0,echo/0]). --export([get_count/1]). --export([send/3, send/4]). --export([stop/0]). - -%% gen_server callbacks --export([terminate/2, code_change/3]). - -%state --record(state, {port, lsock, client_vm_map = []}). - - -%%----------------------------------------------------- -%% @doc Starts gen_server -%% @end -%%----------------------------------------------------- -start_link() -> - start_link(?DEFAULT_PORT). - -start_link(Port) -> - process_flag(trap_exit, true), - gen_server:start_link({local, ?SERVER}, ?MODULE, [Port], []). - -%%----------------------------------------------------- -%% Creation -%%----------------------------------------------------- -init([Port]) -> - {ok, LSock} = gen_tcp:listen(Port, [{active, true}, - {reuseaddr, true}]), - {ok, #state{port = Port, lsock = LSock}, 0}. - -%%----------------------------------------------------- -%% @doc Fetches the number of requests made to this server -%% @spec get_count() -> {ok, Count} -%% where -%% Count = integer() -%% @end -%%----------------------------------------------------- -get_count(get_count) -> - gen_server:call(?SERVER, get_count). - -%crash() -> gen_server:call(?SERVER, crash). -%vms() -> gen_server:call(?SERVER, vms). -%hello() -> gen_server:call(?SERVER, hello). -%echo() -> gen_server:call(?SERVER, {echo, RefID, _, MSG}). - - - - -%%----------------------------------------------------- -%% @doc Stops the server. -%% @spec stop() -> ok -%% @end -%%----------------------------------------------------- -stop() -> - gen_server:cast(?SERVER, stop). - -%%----------------------------------------------------- -%% Handlers -%%----------------------------------------------------- -handle_call(get_count, _From, State) -> - {reply, {ok, State#state.client_vm_map}, State}. - -handle_cast(stop, State) -> - {stop, normal, State}. - -handle_info({tcp, Socket, RawData}, State) -> %parameters coming from gen_server - NewState = do_JSCall(Socket, RawData, State), %TODO - OldMap = State#state.client_vm_map, - io:format("Old map: ~p NewState: ~p~n", [OldMap, NewState]), - {noreply, State#state{client_vm_map = OldMap ++ [NewState]}}; - -handle_info(timeout, #state{lsock = LSock} = State) -> - {ok, _Sock} = gen_tcp:accept(LSock), - {noreply, State}. - - -%%----------------------------------------------------- -%% TCP Calls -%%----------------------------------------------------- -send(Socket, RefID, String) -> - gen_tcp:send(Socket, io_lib:fwrite("~p ~p~n", [RefID,String])). - -send(Socket, RefID, String1, String2) -> - gen_tcp:send(Socket, io_lib:fwrite("~p ~p ~p~n", [RefID, String1, String2])). - - -%%----------------------------------------------------- -%% gen_server callbacks -%%----------------------------------------------------- -terminate(_Reason, _State) -> - ok. - -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - -%%----------------------------------------------------- -%% Internal functions -%%----------------------------------------------------- -do_JSCall(Socket, Data, State) -> - JSVM = js_runner:boot(), - js_runner:define(JSVM, "function userCommand(cmd, par) {return cmd+' '+ par}"), - Parsed = ggs_protocol:parse(Data), - NewState = case Parsed of - {cmd, Command, Parameter} -> - % Set the new state to [] - Ret = js_runner:call(JSVM, "userCommand", - [list_to_binary(Command), - list_to_binary(Parameter)]), - send(Socket, "RefID", "JS says: ", Ret), - []; - % Set the new state to the reference generated, and JSVM associated - {hello} -> - Client = getRef(), - send(Socket, Client, "__ok_hello"), - {Client, JSVM}; - {echo, RefID, _, MSG} -> - send(Socket, RefID, "Your VM is ", getJSVM(RefID, State)), - []; - {crash, Zero} -> - 10/Zero; - {vms} -> - send(Socket, "RefID", State); - % Set the new state to [] - Other -> - send(Socket, "RefID", "__error"), - [] - end, - % Return the new state - NewState. - -%%----------------------------------------------------- -%% Helpers -%%----------------------------------------------------- -getRef() -> - {A1,A2,A3} = now(), - random:seed(A1, A2, A3), - random:uniform(1000). - -%%----------------------------------------------------- -%% Helpers -%%----------------------------------------------------- -getJSVM(RefID, State) -> - VMs = State#state.client_vm_map, - {value, {_,VM}} = lists:keysearch(RefID, 1, VMs), - VM. diff --git a/src/ggs_table.erl b/src/ggs_table.erl index e69de29..87a623a 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -0,0 +1,36 @@ +%% @doc This module represents a Player with a Socket and a Token + +-module(ggs_table). +-export([ + start_link/1, + add_player/2, + remove_player/2, + stop/2, + notify/3 +]). + +% @doc returns a new table +start_link(Token) -> + not_implemented(). + +% @doc adds a player to a table +add_player(Table, Player) -> + not_implemented(). + +% @doc removes player form a table +remove_player(Table, Player) -> + not_implemented(). + +% @doc stops the table process +stop(Table) -> + not_implemented(). + +% @doc notifies the table with a message from a player +notify(Table, Player, Message) -> + not_implemented(). + + +% loop + + +% private helpers \ No newline at end of file diff --git a/src/ggs_vm_runner.erl b/src/ggs_vm_runner.erl deleted file mode 100644 index cf633f0..0000000 --- a/src/ggs_vm_runner.erl +++ /dev/null @@ -1,28 +0,0 @@ --module(ggs_vm_runner). --export([start_link/0, define/2, user_command/4]). - -%Mattias -start_link() -> - erlang_js:start(), - {ok, Port} = js_driver:new(), - js:define(Port, <<"function userCommand(user, command, args){}">>), - PortPid = spawn_link(fun() -> loop(Port) end ), - PortPid. - - -loop(Port) -> -receive - {define, SourceCode} -> - ok = js:define(Port, list_to_binary(SourceCode)), - loop(Port); - {user_command, User, Command, Args} -> - {ok, Ret} = js:call(Port, <<"userCommand">>, list_to_binary([User,Command,Args])), - loop(Port) -end. - - -define(GameVM, SourceCode) -> - GameVM ! {define,SourceCode}. - -user_command(GameVM, User, Command, Args) -> - GameVM ! {user_command, User, Command, Args}. From 4927d47065cac9d6fa19c2c5b8f99f2699c79a92 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 16 Feb 2011 17:17:03 +0100 Subject: [PATCH 033/192] renamed test to unit_tests --- {tests => unit_tests}/ggs_protocol_test.erl | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename {tests => unit_tests}/ggs_protocol_test.erl (100%) diff --git a/tests/ggs_protocol_test.erl b/unit_tests/ggs_protocol_test.erl similarity index 100% rename from tests/ggs_protocol_test.erl rename to unit_tests/ggs_protocol_test.erl From db7c99adb17d4af875b8f96d27648748e5c33bc6 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 16 Feb 2011 17:17:56 +0100 Subject: [PATCH 034/192] removed unnecessary files --- unit_tests/ggs_protocol_test.erl | 6 ------ 1 file changed, 6 deletions(-) delete mode 100644 unit_tests/ggs_protocol_test.erl diff --git a/unit_tests/ggs_protocol_test.erl b/unit_tests/ggs_protocol_test.erl deleted file mode 100644 index 2230cbf..0000000 --- a/unit_tests/ggs_protocol_test.erl +++ /dev/null @@ -1,6 +0,0 @@ --module(ggs_protocol_test). --export([test_parse/0]). - -test_parse() -> - Ret = ggs_protocol:parse("<> __define JavaScript"), - io:format("~p~n", [Ret]). From 5d71202a00b70664616ee6650a51f790473ffa9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 16 Feb 2011 17:19:00 +0100 Subject: [PATCH 035/192] Added OTP structure to ggs_coordinator --- src/ggs_coordinator.erl | 39 +++++++++++++++++++++++++++++++-------- 1 file changed, 31 insertions(+), 8 deletions(-) diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index ed9c4e3..4f38c6a 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -1,5 +1,11 @@ -module(ggs_coordinator). --export(). + +%% API Exports +-export([start_link/1, stop/1]). + +%% gen_server callback exports +-export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, + code_change/3]). %% @doc This module act as "the man in the middle". %% Creates the starting connection between table and players. @@ -9,15 +15,15 @@ start_link() -> not_implemented. %% @doc Terminates the coordinator process. -stop() -> +stop(_Reason) -> not_implemented. -%% @doc Creates a unique token for the table. -join_table() -> +%% @doc Joins table with specified token +join_table(_Token) -> not_implemented. -%% @doc -create_table() -> +%% @doc Create a new table +create_table(_Params) -> not_implemented. %% @doc This is the first function run by a newly created players. @@ -26,13 +32,30 @@ join_lobby() -> not_implemented. %% @doc Act as a supervisor to player and respawns player when it gets bad data. -respawn_player(Player, Socket) -> +respawn_player(_Player, _Socket) -> not_implemented. %% @doc Act as a supervisor to table and respawns table when it gets bad data. -respawn_table() -> +respawn_table(_Token) -> not_implemented. %% @doc Removes a player from coordinator. remove_player(From, Player) -> not_implemented. + +%% gen_server callbacks + +init([Port]) -> + {ok, ok}. + +handle_call(_Message, _From, State) -> + {noreply, State}. + +handle_cast(_Message, State) -> + {noreply, State}. + +terminate(normal, _State) -> + ok. + +code_change(_OldVsn, State, Extra) -> + {ok, State}. From 62be1f04cc570c9fab2f6cdfa4bb5982b64bb050 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 16 Feb 2011 17:23:58 +0100 Subject: [PATCH 036/192] changed not_implemented to a function --- src/ggs_coordinator.erl | 16 ++++++++-------- src/ggs_dispatcher.erl | 4 ++-- src/ggs_player.erl | 12 ++++++++---- 3 files changed, 18 insertions(+), 14 deletions(-) diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 4f38c6a..1081077 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -12,36 +12,36 @@ %% @doc Starts the coordinator process. start_link() -> - not_implemented. + not_implemented(). %% @doc Terminates the coordinator process. stop(_Reason) -> - not_implemented. + not_implemented(). %% @doc Joins table with specified token join_table(_Token) -> - not_implemented. + not_implemented(). %% @doc Create a new table create_table(_Params) -> - not_implemented. + not_implemented(). %% @doc This is the first function run by a newly created players. %% Generates a unique token that we use to identify the player. join_lobby() -> - not_implemented. + not_implemented(). %% @doc Act as a supervisor to player and respawns player when it gets bad data. respawn_player(_Player, _Socket) -> - not_implemented. + not_implemented(). %% @doc Act as a supervisor to table and respawns table when it gets bad data. respawn_table(_Token) -> - not_implemented. + not_implemented(). %% @doc Removes a player from coordinator. remove_player(From, Player) -> - not_implemented. + not_implemented(). %% gen_server callbacks diff --git a/src/ggs_dispatcher.erl b/src/ggs_dispatcher.erl index bc3327a..69d5481 100644 --- a/src/ggs_dispatcher.erl +++ b/src/ggs_dispatcher.erl @@ -20,12 +20,12 @@ %% Port = Integer %% Pid = # start_link(Port) -> - not_implemented. + not_implemented(). %% @doc Stops the dispatcher with the specified reason. %% @spec stop(Reason) -> ok. %% Reason = String -stop(Reason) -> not_implemented. +stop(Reason) -> not_implemented(). %% gen_server callbacks diff --git a/src/ggs_player.erl b/src/ggs_player.erl index b5815af..6eb31c9 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -12,21 +12,25 @@ %% an argument for storage and later usage. Creates a unique player token %% identifying the player. %% @spec start_link(Socket::socket()) -> ok -start_link(Socket) -> not_implemented. +start_link(Socket) -> + not_implemented(). %% @doc Handles incoming messages from the GGS and forwards them through the player %% socket to the player. %% @spec notify(Player::Pid(), From::Pid(), %% {Command::String(), Message::string()}) -> ok -notify(Player, From, Message) -> not_implemented. +notify(Player, From, Message) -> + not_implemented(). %% @doc Get the player token uniquely representing the player. %% @spec get_token() -> string() -get_token() -> not_implemented. +get_token() -> + not_implemented(). %% @doc Properly terminates the player process. The player token will be destroyed. %% Makes table token unreferenced and destroys the process in the end. %% @spec stop(Table::pid()) -> Reason::string() -stop(Table) -> not_implemented. +stop(Table) -> + not_implemented(). From 70a6beb8b9c7752afb018ec62e7febc9d3d9b146 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 16 Feb 2011 19:49:43 +0100 Subject: [PATCH 037/192] Added some basic echo functionality --- ebin/ggs.app | 3 +- src/ggs_coordinator.erl | 14 ++- src/ggs_dispatcher.erl | 30 ++++- src/ggs_gamevm.erl | 2 +- src/ggs_player.erl | 19 ++- src/ggs_sup.erl | 9 +- src/ggs_table.erl | 22 ++-- src/helpers.erl | 4 + src/old/ggs_app.erl | 14 --- src/old/ggs_backup.erl | 41 ------- src/old/ggs_mnesia_controller_server.erl | 68 ----------- src/old/ggs_protocol.erl | 49 -------- src/old/ggs_server.erl | 141 ----------------------- src/old/ggs_server_sup.erl | 48 -------- src/old/ggs_sup.erl | 34 ------ src/old/js_runner.erl | 13 --- src/old/start_ggs.erl | 7 -- 17 files changed, 70 insertions(+), 448 deletions(-) create mode 100644 src/helpers.erl delete mode 100644 src/old/ggs_app.erl delete mode 100644 src/old/ggs_backup.erl delete mode 100644 src/old/ggs_mnesia_controller_server.erl delete mode 100644 src/old/ggs_protocol.erl delete mode 100644 src/old/ggs_server.erl delete mode 100644 src/old/ggs_server_sup.erl delete mode 100644 src/old/ggs_sup.erl delete mode 100644 src/old/js_runner.erl delete mode 100644 src/old/start_ggs.erl diff --git a/ebin/ggs.app b/ebin/ggs.app index 3315864..b3ea744 100644 --- a/ebin/ggs.app +++ b/ebin/ggs.app @@ -3,7 +3,8 @@ {vsn, "0.1.0"}, {modules, [ ggs_app, - ggs_sup + ggs_sup, + ggs_dispatcher ]}, {registered, [ggs_sup]}, {applications, [kernel, stdlib]}, diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 4f38c6a..9acffe4 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -1,18 +1,19 @@ -module(ggs_coordinator). %% API Exports --export([start_link/1, stop/1]). +-export([start_link/0, stop/1]). %% gen_server callback exports -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]). +-define(SERVER, ?MODULE). %% @doc This module act as "the man in the middle". %% Creates the starting connection between table and players. %% @doc Starts the coordinator process. start_link() -> - not_implemented. + gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). %% @doc Terminates the coordinator process. stop(_Reason) -> @@ -40,12 +41,12 @@ respawn_table(_Token) -> not_implemented. %% @doc Removes a player from coordinator. -remove_player(From, Player) -> +remove_player(_From, _Player) -> not_implemented. %% gen_server callbacks -init([Port]) -> +init([]) -> {ok, ok}. handle_call(_Message, _From, State) -> @@ -54,8 +55,11 @@ handle_call(_Message, _From, State) -> handle_cast(_Message, State) -> {noreply, State}. +handle_info(_Message, State) -> + {noreply, State}. + terminate(normal, _State) -> ok. -code_change(_OldVsn, State, Extra) -> +code_change(_OldVsn, State, _Extra) -> {ok, State}. diff --git a/src/ggs_dispatcher.erl b/src/ggs_dispatcher.erl index bc3327a..4b47ba3 100644 --- a/src/ggs_dispatcher.erl +++ b/src/ggs_dispatcher.erl @@ -1,5 +1,7 @@ -module(ggs_dispatcher). +-behaviour(gen_server). + %% API Exports -export([start_link/1, stop/1]). @@ -7,6 +9,8 @@ -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]). +-define(SERVER, ?MODULE). + %% @doc This module is the entry-point for clients connecting to GGS. This is %% the module responsible for: @@ -20,19 +24,21 @@ %% Port = Integer %% Pid = # start_link(Port) -> - not_implemented. + gen_server:start_link({local, ?SERVER}, ?MODULE, [Port], []). %% @doc Stops the dispatcher with the specified reason. %% @spec stop(Reason) -> ok. %% Reason = String -stop(Reason) -> not_implemented. +stop(_Reason) -> not_implemented. %% gen_server callbacks %% @doc Initiate the dispatcher. This is called from gen_server init([Port]) -> - {ok, ok}. + {ok, LSock} = gen_tcp:listen(Port, [{active, true}, + {reuseaddr, true}]), + {ok, LSock, 0}. handle_call(_Message, _From, State) -> {noreply, State}. @@ -40,8 +46,24 @@ handle_call(_Message, _From, State) -> handle_cast(_Message, State) -> {noreply, State}. +handle_info({tcp, _Socket, RawData}, State) -> + io:format("Got connect request!~n"), + {noreply, State}; + +handle_info({tcp_closed, Socket}, State) -> + gen_tcp:close(Socket), + {stop, "Client closed socket", State}; + +%% @doc This is our function for accepting connections. When a client connects, +%% it will immediately time out due to timing settings set in init and here, +%% and when it does, we accept the connection. +handle_info(timeout, LSock) -> + {ok, Sock} = gen_tcp:accept(LSock), + spawn(ggs_player, start_link, [Sock]), + {noreply, LSock, 0}. + terminate(normal, _State) -> ok. -code_change(_OldVsn, State, Extra) -> +code_change(_OldVsn, State, _Extra) -> {ok, State}. diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 8116a96..1a8f547 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -1,4 +1,4 @@ --module(ggs_vm_runner). +-module(ggs_gamevm). -export([start_link/0, define/2, user_command/4]). %% @doc This module is responsible for running the game VM:s. You can issue %% commands to a vm using this module. diff --git a/src/ggs_player.erl b/src/ggs_player.erl index b5815af..87c003c 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -12,21 +12,32 @@ %% an argument for storage and later usage. Creates a unique player token %% identifying the player. %% @spec start_link(Socket::socket()) -> ok -start_link(Socket) -> not_implemented. +start_link(Socket) -> + loop(Socket). %% @doc Handles incoming messages from the GGS and forwards them through the player %% socket to the player. %% @spec notify(Player::Pid(), From::Pid(), %% {Command::String(), Message::string()}) -> ok -notify(Player, From, Message) -> not_implemented. +notify(_Player, _From, _Message) -> not_implemented. %% @doc Get the player token uniquely representing the player. %% @spec get_token() -> string() -get_token() -> not_implemented. +get_token(_Player) -> not_implemented. %% @doc Properly terminates the player process. The player token will be destroyed. %% Makes table token unreferenced and destroys the process in the end. %% @spec stop(Table::pid()) -> Reason::string() -stop(Table) -> not_implemented. +stop(_Table) -> not_implemented. + + +%% Internals + +loop(Socket) -> + receive {tcp, Socket, Data} -> % Just echo for now.. + gen_tcp:send(Socket,Data), + loop(Socket) + end. + diff --git a/src/ggs_sup.erl b/src/ggs_sup.erl index bfb2617..05fab65 100644 --- a/src/ggs_sup.erl +++ b/src/ggs_sup.erl @@ -2,17 +2,12 @@ -behaviour(supervisor). %% API --export([start/1, start_link/1]). +-export([start_link/1]). %% Supervisor callbacks -export([init/1]). -define(SERVER, ?MODULE). -start(Port) -> - [FirstArg] = Port, - {IntPort, _} = string:to_integer(FirstArg), - start_link(IntPort). - start_link(Port) -> supervisor:start_link({local, ?SERVER}, ?MODULE, [Port]). @@ -29,7 +24,7 @@ init([Port]) -> permanent, 2000, worker, - [ggs_dispatcher] + [ggs_coordinator] }, Children = [Dispatcher, Coordinator], diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 87a623a..e00b840 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -10,27 +10,27 @@ ]). % @doc returns a new table -start_link(Token) -> - not_implemented(). +start_link(_Token) -> + helpers:not_implemented(). % @doc adds a player to a table -add_player(Table, Player) -> - not_implemented(). +add_player(_Table, _Player) -> + helpers:not_implemented(). % @doc removes player form a table -remove_player(Table, Player) -> - not_implemented(). +remove_player(_Table, _Player) -> + helpers:not_implemented(). % @doc stops the table process -stop(Table) -> - not_implemented(). +stop(_Table, _Msg) -> + helpers:not_implemented(). % @doc notifies the table with a message from a player -notify(Table, Player, Message) -> - not_implemented(). +notify(_Table, _Player, _Message) -> + helpers:not_implemented(). % loop -% private helpers \ No newline at end of file +% private helpers diff --git a/src/helpers.erl b/src/helpers.erl new file mode 100644 index 0000000..1bf7825 --- /dev/null +++ b/src/helpers.erl @@ -0,0 +1,4 @@ +-module(helpers). + +not_implemented() -> + exit("Not implemented"). diff --git a/src/old/ggs_app.erl b/src/old/ggs_app.erl deleted file mode 100644 index d8b2e60..0000000 --- a/src/old/ggs_app.erl +++ /dev/null @@ -1,14 +0,0 @@ --module(ggs_app). --behaviour(application). --export([start/2, stop/1]). - -start(_StartType, _StartArgs) -> - case ggs_sup:start_link(9000) of - {ok, Pid} -> - {ok, Pid}; - Other -> - {error, Other} - end. - -stop(_State) -> - ok. diff --git a/src/old/ggs_backup.erl b/src/old/ggs_backup.erl deleted file mode 100644 index 30c80a2..0000000 --- a/src/old/ggs_backup.erl +++ /dev/null @@ -1,41 +0,0 @@ --module(ggs_backup). --behaviour(gen_server). - -%% API --export([start_link/0 ]). - -%% gen_server callbacks --export([init/1, handle_call/3, handle_cast/2, - handle_info/2, terminate/2, code_change/3]). - - --define(SERVER, ?MODULE). - --record(state, {port, lsock, client_vm_map = []}). - -start_link() -> - gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). - -init([]) -> - {ok, #state{port = -1, lsock = -1, client_vm_map = -1}, 0}. - -handle_call(get_backup, _From, State) -> - BackedUpState = case State of - #state{port = -1, lsock = -1, client_vm_map = -1} -> - not_initialized; - Other -> - Other - end, - {reply, {backup_state, BackedUpState}, State}. - -handle_cast({set_backup, NewState}, _State) -> - {noreply, NewState}. - -handle_info(_Msg, State) -> - {noreply, State}. - -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - -terminate(_Reason, _State) -> - ok. diff --git a/src/old/ggs_mnesia_controller_server.erl b/src/old/ggs_mnesia_controller_server.erl deleted file mode 100644 index c1f8a10..0000000 --- a/src/old/ggs_mnesia_controller_server.erl +++ /dev/null @@ -1,68 +0,0 @@ --module(ggs_mnesia_controller_server). --behaviour(gen_server). - -%% API --export([start_link/0, - stop/0 - ]). - -%% gen_server callbacks --export([init/1, handle_call/3, handle_cast/2, - handle_info/2, terminate/2, code_change/3]). - - --define(SERVER, ?MODULE). - --record(state, {}). - -%%%==================================================== -%%% API -%%%==================================================== - -%%----------------------------------------------------- -%% @doc Starts the server -%% @end -%%----------------------------------------------------- -start_link() -> - gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). - -%%----------------------------------------------------- -%% @doc Stops the server. -%% @spec stop() -> ok -%% @end -%%----------------------------------------------------- -stop() -> - gen_server:cast(?SERVER, stop). - -%%----------------------------------------------------- -%% gen_server callbacks -%%----------------------------------------------------- - -init([]) -> - mnesia:create_schema([node()]), - mnesia:start(), - {ok, {}, 0}. - -handle_cast(a, State) -> - {noreply, State}. - -% Request a value from the Mnesia database -handle_call({getValue, _Key},_From,State) -> - {reply,value_of_key_requested_goes_here, State}; - -% Set a value in the Mnesia database -handle_call({setValue, _Key, Value},_From,State) -> - {reply,value_set_or_updated, State}. - -handle_info(timeout, State) -> - {noreply, State}. - -terminate(_Reason, _State) -> - ok. - -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - -%%----------------------------------------------------- -%% Internal functions -%%----------------------------------------------------- diff --git a/src/old/ggs_protocol.erl b/src/old/ggs_protocol.erl deleted file mode 100644 index 46c1ba1..0000000 --- a/src/old/ggs_protocol.erl +++ /dev/null @@ -1,49 +0,0 @@ --module(ggs_protocol). --export([parse/1]). - -parse(Data) -> - Parsed = do_parse(Data, []), - prettify(Parsed). - -do_parse(Data, ParsedMessage) -> - NewLinePos = string:chr(Data, $\n), - Line = string:substr(Data, 1, NewLinePos-1), - Tokens = re:split(Line, ": ", [{return, list}]), - case handle(Tokens) of - {Command, more} -> - do_parse(string:substr(Data, NewLinePos+1), ParsedMessage ++ [Command]); - {separator, data_next} -> - {_, Value} = lists:keyfind(content_len, 1, ParsedMessage), - {ContentLength, []} = string:to_integer(Value), - {ParsedMessage, handle_data(string:substr(Data, NewLinePos+1), ContentLength)} - end. - -handle([[]]) -> - {separator, data_next}; -handle(["Server-Command", Param]) -> - {{srv_cmd, Param}, more}; -handle(["Content-Length", Param]) -> - {{content_len, Param}, more}; -handle(["Token", Param]) -> - {{token, Param}, more}; -handle(["Content-Type", Param]) -> - {{content_type, Param}, more}. - -handle_data(Data, Length) -> - {data, string:substr(Data,1,Length)}. - - -%% Helpers -prettify({Args, Data}) -> - case lists:keyfind(srv_cmd, 1, Args) of - {_, Value} -> - gen_server:cast(ggs_server, {srv_cmd, Value, Args, Data}); - _Other -> - case lists:keyfind(game_cmd, 1, Args) of - {_, Value} -> - gen_server:cast(ggs_server, {game_cmd, Value, Args, Data}); - _ -> - ok - end - end. - diff --git a/src/old/ggs_server.erl b/src/old/ggs_server.erl deleted file mode 100644 index 34d297f..0000000 --- a/src/old/ggs_server.erl +++ /dev/null @@ -1,141 +0,0 @@ -%%%---------------------------------------------------- -%%% @author Jonatan Pålsson -%%% @copyright 2010 Jonatan Pålsson -%%% @doc RPC over TCP server -%%% @end -%%%---------------------------------------------------- - --module(ggs_server). --behaviour(gen_server). - -%% API --export([start_link/1, - start_link/0, - stop/0 - ]). - -%% gen_server callbacks --export([init/1, handle_call/3, handle_cast/2, - handle_info/2, terminate/2, code_change/3]). - - --define(SERVER, ?MODULE). --define(DEFAULT_PORT, 1055). - --record(state, {port, lsock, client_vm_map = []}). - -%%%==================================================== -%%% API -%%%==================================================== - -%%----------------------------------------------------- -%% @doc Starts the server -%% @end -%%----------------------------------------------------- -start_link(Port) -> - gen_server:start_link({local, ?SERVER}, ?MODULE, [Port], []). - -start_link() -> - start_link(?DEFAULT_PORT). - -%%----------------------------------------------------- -%% @doc Stops the server. -%% @spec stop() -> ok -%% @end -%%----------------------------------------------------- -stop() -> - gen_server:cast(?SERVER, stop). - -%%----------------------------------------------------- -%% gen_server callbacks -%%----------------------------------------------------- - -init([Port]) -> - case gen_server:call(ggs_backup, get_backup) of - {backup_state, not_initialized} -> - {ok, LSock} = gen_tcp:listen(Port, [{active, true}, - {reuseaddr, true}]), - {ok, #state{port = Port, lsock = LSock}, 0}; - {backup_state, State} -> - {ok, LSock} = gen_tcp:listen(Port, [{active, true}, - {reuseaddr, true}]), - {ok, State#state{lsock = LSock}, 0} - end. - -handle_call({backup_state, OldState}, _From, State) -> - io:format("Received old state from backup~n"), - {noreply, OldState}. - - -handle_info({tcp, Socket, RawData}, State) -> - ggs_protocol:parse(RawData), - {noreply, State#state{lsock = Socket}}; - -handle_info({tcp_closed, Socket}, State) -> - gen_tcp:close(Socket), - {stop, "Client closed socket", State}; - -handle_info(timeout, #state{lsock = LSock} = State) -> - {ok, _Sock} = gen_tcp:accept(LSock), - {noreply, State}; - -handle_info(Other, State) -> - erlang:display(Other). - -terminate(_Reason, _State) -> - ok. - -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - -%%----------------------------------------------------- -%% Internal functions -%%----------------------------------------------------- -handle_cast(stop, State) -> - {stop, normal, State}; - -% Handle javascript defines -handle_cast({define, Token, SourceCode}, State) -> - GameVM = getJSVM(Token, State), - ggs_vm_runner:define(GameVM, SourceCode), - send(State#state.lsock, Token, "Okay, defined that for you!"), - {noreply, State}; - -% Handle javascript calls -handle_cast({call, Token, Command}, State) -> - GameVM = getJSVM(Token, State), - ggs_vm_runner:user_command(GameVM, "User", Command, []), - %send(State#state.lsock, Token, "JS says:", binary_to_list(Ret)), Unessecary - {noreply, State}; - -% Set the new state to the reference generated, and JSVM associated -handle_cast({hello, _, _}, State) -> - GameVM = ggs_vm_runner:start_link(), - Client = getRef(), - send(State#state.lsock, Client, "This is your refID"), - OldMap = State#state.client_vm_map, - NewState = State#state{client_vm_map = OldMap ++ [{Client, GameVM}]}, - gen_server:cast(ggs_backup, {set_backup, NewState}), - {noreply, NewState}. - -%%----------------------------------------------------- -%% Helpers -%%----------------------------------------------------- -getRef() -> - %{A1,A2,A3} = now(), - %#random:seed(A1, A2, A3), - %random:uniform(1000). - string:strip(os:cmd("uuidgen"), right, $\n ). - -getJSVM(RefID, State) -> - VMs = State#state.client_vm_map, - erlang:display(RefID), - erlang:display(VMs), - {value, {_,VM}} = lists:keysearch(RefID, 1, VMs), - VM. - -send(Socket, RefID, String) -> - gen_tcp:send(Socket, string:join([RefID,String,"\n"], " ")). - -send(Socket, RefID, String1, String2) -> - gen_tcp:send(Socket, string:join([RefID,String1, String2,"\n"], " ")). diff --git a/src/old/ggs_server_sup.erl b/src/old/ggs_server_sup.erl deleted file mode 100644 index 23d32f7..0000000 --- a/src/old/ggs_server_sup.erl +++ /dev/null @@ -1,48 +0,0 @@ --module(ggs_server_sup). --behaviour(supervisor). - -%% API --export([start/1, start_link/1]). - -%% Supervisor callbacks --export([init/1]). --define(SERVER, ?MODULE). - -start(Port) -> - [FirstArg] = Port, - {IntPort, _} = string:to_integer(FirstArg), - start_link(IntPort). - -start_link(Port) -> - supervisor:start_link({local, ?SERVER}, ?MODULE, [Port]). - -init([Port]) -> - GGSServer = {ggs_server, - {ggs_server, start_link, [Port]}, - permanent, - 2000, - worker, - [ggs_server] - }, - Backup = {ggs_backup, - {ggs_backup, start_link, []}, - permanent, - 2000, - worker, - [ggs_backup] - }, - MnesiaServer = {ggs_mnesia_controller_server, - {ggs_mnesia_controller_server, start_link, []}, - permanent, - 2000, - worker, - [ggs_mnesia_controller_server] - }, - Children = [MnesiaServer, Backup, GGSServer], - - RestartStrategy = { one_for_one, % Restart only crashing child - 10, % Allow ten crashes per.. - 1 % 1 second, then crash supervisor. - }, - {ok, {RestartStrategy, Children}}. - diff --git a/src/old/ggs_sup.erl b/src/old/ggs_sup.erl deleted file mode 100644 index ee6f8cd..0000000 --- a/src/old/ggs_sup.erl +++ /dev/null @@ -1,34 +0,0 @@ --module(ggs_sup). --behaviour(supervisor). - -%% API --export([start/1, start_link/1]). - -%% Supervisor callbacks --export([init/1]). --define(SERVER, ?MODULE). - -start(Port) -> - [FirstArg] = Port, - {IntPort, _} = string:to_integer(FirstArg), - start_link(IntPort). - -start_link(Port) -> - supervisor:start_link({local, ?SERVER}, ?MODULE, [Port]). - -init([Port]) -> - Server = {ggs_server_sup, - {ggs_server_sup, start_link, [Port]}, - permanent, - 2000, - worker, - [ggs_server_sup] - }, - Children = [Server], - - RestartStrategy = { one_for_one, % Restart only crashing child - 10, % Allow ten crashes per.. - 1 % 1 second, then crash supervisor. - }, - {ok, {RestartStrategy, Children}}. - diff --git a/src/old/js_runner.erl b/src/old/js_runner.erl deleted file mode 100644 index ca866c4..0000000 --- a/src/old/js_runner.erl +++ /dev/null @@ -1,13 +0,0 @@ --module(js_runner). --export([define/2,call/3, boot/0]). - -boot() -> - erlang_js:start(), - {ok, Port} = js_driver:new(), - Port. - -define(Port, Data) -> - ok = js:define(Port, list_to_binary(Data)). - -call(Port, Func, Params) -> - js:call(Port, list_to_binary(Func), Params). diff --git a/src/old/start_ggs.erl b/src/old/start_ggs.erl deleted file mode 100644 index 3955715..0000000 --- a/src/old/start_ggs.erl +++ /dev/null @@ -1,7 +0,0 @@ --module(start_ggs). --export([start/0]). - -start() -> - application:start(inets), - application:start(erlang_js), - application:start(ggs). From ec78283a4640ab4e126cb65c0ea39f1005bc86ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 16 Feb 2011 19:49:43 +0100 Subject: [PATCH 038/192] Added some basic echo functionality --- ebin/ggs.app | 3 +- src/ggs_coordinator.erl | 14 ++- src/ggs_dispatcher.erl | 30 ++++- src/ggs_gamevm.erl | 2 +- src/ggs_player.erl | 24 +++- src/ggs_sup.erl | 9 +- src/ggs_table.erl | 22 ++-- src/helpers.erl | 4 + src/old/ggs_app.erl | 14 --- src/old/ggs_backup.erl | 41 ------- src/old/ggs_mnesia_controller_server.erl | 68 ----------- src/old/ggs_protocol.erl | 49 -------- src/old/ggs_server.erl | 141 ----------------------- src/old/ggs_server_sup.erl | 48 -------- src/old/ggs_sup.erl | 34 ------ src/old/js_runner.erl | 13 --- src/old/start_ggs.erl | 7 -- 17 files changed, 75 insertions(+), 448 deletions(-) create mode 100644 src/helpers.erl delete mode 100644 src/old/ggs_app.erl delete mode 100644 src/old/ggs_backup.erl delete mode 100644 src/old/ggs_mnesia_controller_server.erl delete mode 100644 src/old/ggs_protocol.erl delete mode 100644 src/old/ggs_server.erl delete mode 100644 src/old/ggs_server_sup.erl delete mode 100644 src/old/ggs_sup.erl delete mode 100644 src/old/js_runner.erl delete mode 100644 src/old/start_ggs.erl diff --git a/ebin/ggs.app b/ebin/ggs.app index 3315864..b3ea744 100644 --- a/ebin/ggs.app +++ b/ebin/ggs.app @@ -3,7 +3,8 @@ {vsn, "0.1.0"}, {modules, [ ggs_app, - ggs_sup + ggs_sup, + ggs_dispatcher ]}, {registered, [ggs_sup]}, {applications, [kernel, stdlib]}, diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 4f38c6a..9acffe4 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -1,18 +1,19 @@ -module(ggs_coordinator). %% API Exports --export([start_link/1, stop/1]). +-export([start_link/0, stop/1]). %% gen_server callback exports -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]). +-define(SERVER, ?MODULE). %% @doc This module act as "the man in the middle". %% Creates the starting connection between table and players. %% @doc Starts the coordinator process. start_link() -> - not_implemented. + gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). %% @doc Terminates the coordinator process. stop(_Reason) -> @@ -40,12 +41,12 @@ respawn_table(_Token) -> not_implemented. %% @doc Removes a player from coordinator. -remove_player(From, Player) -> +remove_player(_From, _Player) -> not_implemented. %% gen_server callbacks -init([Port]) -> +init([]) -> {ok, ok}. handle_call(_Message, _From, State) -> @@ -54,8 +55,11 @@ handle_call(_Message, _From, State) -> handle_cast(_Message, State) -> {noreply, State}. +handle_info(_Message, State) -> + {noreply, State}. + terminate(normal, _State) -> ok. -code_change(_OldVsn, State, Extra) -> +code_change(_OldVsn, State, _Extra) -> {ok, State}. diff --git a/src/ggs_dispatcher.erl b/src/ggs_dispatcher.erl index bc3327a..4b47ba3 100644 --- a/src/ggs_dispatcher.erl +++ b/src/ggs_dispatcher.erl @@ -1,5 +1,7 @@ -module(ggs_dispatcher). +-behaviour(gen_server). + %% API Exports -export([start_link/1, stop/1]). @@ -7,6 +9,8 @@ -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]). +-define(SERVER, ?MODULE). + %% @doc This module is the entry-point for clients connecting to GGS. This is %% the module responsible for: @@ -20,19 +24,21 @@ %% Port = Integer %% Pid = # start_link(Port) -> - not_implemented. + gen_server:start_link({local, ?SERVER}, ?MODULE, [Port], []). %% @doc Stops the dispatcher with the specified reason. %% @spec stop(Reason) -> ok. %% Reason = String -stop(Reason) -> not_implemented. +stop(_Reason) -> not_implemented. %% gen_server callbacks %% @doc Initiate the dispatcher. This is called from gen_server init([Port]) -> - {ok, ok}. + {ok, LSock} = gen_tcp:listen(Port, [{active, true}, + {reuseaddr, true}]), + {ok, LSock, 0}. handle_call(_Message, _From, State) -> {noreply, State}. @@ -40,8 +46,24 @@ handle_call(_Message, _From, State) -> handle_cast(_Message, State) -> {noreply, State}. +handle_info({tcp, _Socket, RawData}, State) -> + io:format("Got connect request!~n"), + {noreply, State}; + +handle_info({tcp_closed, Socket}, State) -> + gen_tcp:close(Socket), + {stop, "Client closed socket", State}; + +%% @doc This is our function for accepting connections. When a client connects, +%% it will immediately time out due to timing settings set in init and here, +%% and when it does, we accept the connection. +handle_info(timeout, LSock) -> + {ok, Sock} = gen_tcp:accept(LSock), + spawn(ggs_player, start_link, [Sock]), + {noreply, LSock, 0}. + terminate(normal, _State) -> ok. -code_change(_OldVsn, State, Extra) -> +code_change(_OldVsn, State, _Extra) -> {ok, State}. diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 8116a96..1a8f547 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -1,4 +1,4 @@ --module(ggs_vm_runner). +-module(ggs_gamevm). -export([start_link/0, define/2, user_command/4]). %% @doc This module is responsible for running the game VM:s. You can issue %% commands to a vm using this module. diff --git a/src/ggs_player.erl b/src/ggs_player.erl index b5815af..a459499 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -12,21 +12,37 @@ %% an argument for storage and later usage. Creates a unique player token %% identifying the player. %% @spec start_link(Socket::socket()) -> ok -start_link(Socket) -> not_implemented. +start_link(Socket) -> + loop(Socket). %% @doc Handles incoming messages from the GGS and forwards them through the player %% socket to the player. %% @spec notify(Player::Pid(), From::Pid(), %% {Command::String(), Message::string()}) -> ok -notify(Player, From, Message) -> not_implemented. +notify(_Player, _From, _Message) -> not_implemented. %% @doc Get the player token uniquely representing the player. %% @spec get_token() -> string() -get_token() -> not_implemented. +get_token(_Player) -> not_implemented. %% @doc Properly terminates the player process. The player token will be destroyed. %% Makes table token unreferenced and destroys the process in the end. %% @spec stop(Table::pid()) -> Reason::string() -stop(Table) -> not_implemented. +stop(_Table) -> not_implemented. + + +%% Internals + +loop(Socket) -> + % The socket is in 'active' mode, and that means we are pushed any data + % that arrives on it, we do not need to recv() manually. Since the socket + % was opened in our parent process, we need to change the owner of it to + % us, otherwise these messages end up in our parent. + erlang:port_connect(Socket, self()), + receive {tcp, Socket, Data} -> % Just echo for now.. + gen_tcp:send(Socket,Data), + loop(Socket) + end. + diff --git a/src/ggs_sup.erl b/src/ggs_sup.erl index bfb2617..05fab65 100644 --- a/src/ggs_sup.erl +++ b/src/ggs_sup.erl @@ -2,17 +2,12 @@ -behaviour(supervisor). %% API --export([start/1, start_link/1]). +-export([start_link/1]). %% Supervisor callbacks -export([init/1]). -define(SERVER, ?MODULE). -start(Port) -> - [FirstArg] = Port, - {IntPort, _} = string:to_integer(FirstArg), - start_link(IntPort). - start_link(Port) -> supervisor:start_link({local, ?SERVER}, ?MODULE, [Port]). @@ -29,7 +24,7 @@ init([Port]) -> permanent, 2000, worker, - [ggs_dispatcher] + [ggs_coordinator] }, Children = [Dispatcher, Coordinator], diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 87a623a..e00b840 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -10,27 +10,27 @@ ]). % @doc returns a new table -start_link(Token) -> - not_implemented(). +start_link(_Token) -> + helpers:not_implemented(). % @doc adds a player to a table -add_player(Table, Player) -> - not_implemented(). +add_player(_Table, _Player) -> + helpers:not_implemented(). % @doc removes player form a table -remove_player(Table, Player) -> - not_implemented(). +remove_player(_Table, _Player) -> + helpers:not_implemented(). % @doc stops the table process -stop(Table) -> - not_implemented(). +stop(_Table, _Msg) -> + helpers:not_implemented(). % @doc notifies the table with a message from a player -notify(Table, Player, Message) -> - not_implemented(). +notify(_Table, _Player, _Message) -> + helpers:not_implemented(). % loop -% private helpers \ No newline at end of file +% private helpers diff --git a/src/helpers.erl b/src/helpers.erl new file mode 100644 index 0000000..1bf7825 --- /dev/null +++ b/src/helpers.erl @@ -0,0 +1,4 @@ +-module(helpers). + +not_implemented() -> + exit("Not implemented"). diff --git a/src/old/ggs_app.erl b/src/old/ggs_app.erl deleted file mode 100644 index d8b2e60..0000000 --- a/src/old/ggs_app.erl +++ /dev/null @@ -1,14 +0,0 @@ --module(ggs_app). --behaviour(application). --export([start/2, stop/1]). - -start(_StartType, _StartArgs) -> - case ggs_sup:start_link(9000) of - {ok, Pid} -> - {ok, Pid}; - Other -> - {error, Other} - end. - -stop(_State) -> - ok. diff --git a/src/old/ggs_backup.erl b/src/old/ggs_backup.erl deleted file mode 100644 index 30c80a2..0000000 --- a/src/old/ggs_backup.erl +++ /dev/null @@ -1,41 +0,0 @@ --module(ggs_backup). --behaviour(gen_server). - -%% API --export([start_link/0 ]). - -%% gen_server callbacks --export([init/1, handle_call/3, handle_cast/2, - handle_info/2, terminate/2, code_change/3]). - - --define(SERVER, ?MODULE). - --record(state, {port, lsock, client_vm_map = []}). - -start_link() -> - gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). - -init([]) -> - {ok, #state{port = -1, lsock = -1, client_vm_map = -1}, 0}. - -handle_call(get_backup, _From, State) -> - BackedUpState = case State of - #state{port = -1, lsock = -1, client_vm_map = -1} -> - not_initialized; - Other -> - Other - end, - {reply, {backup_state, BackedUpState}, State}. - -handle_cast({set_backup, NewState}, _State) -> - {noreply, NewState}. - -handle_info(_Msg, State) -> - {noreply, State}. - -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - -terminate(_Reason, _State) -> - ok. diff --git a/src/old/ggs_mnesia_controller_server.erl b/src/old/ggs_mnesia_controller_server.erl deleted file mode 100644 index c1f8a10..0000000 --- a/src/old/ggs_mnesia_controller_server.erl +++ /dev/null @@ -1,68 +0,0 @@ --module(ggs_mnesia_controller_server). --behaviour(gen_server). - -%% API --export([start_link/0, - stop/0 - ]). - -%% gen_server callbacks --export([init/1, handle_call/3, handle_cast/2, - handle_info/2, terminate/2, code_change/3]). - - --define(SERVER, ?MODULE). - --record(state, {}). - -%%%==================================================== -%%% API -%%%==================================================== - -%%----------------------------------------------------- -%% @doc Starts the server -%% @end -%%----------------------------------------------------- -start_link() -> - gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). - -%%----------------------------------------------------- -%% @doc Stops the server. -%% @spec stop() -> ok -%% @end -%%----------------------------------------------------- -stop() -> - gen_server:cast(?SERVER, stop). - -%%----------------------------------------------------- -%% gen_server callbacks -%%----------------------------------------------------- - -init([]) -> - mnesia:create_schema([node()]), - mnesia:start(), - {ok, {}, 0}. - -handle_cast(a, State) -> - {noreply, State}. - -% Request a value from the Mnesia database -handle_call({getValue, _Key},_From,State) -> - {reply,value_of_key_requested_goes_here, State}; - -% Set a value in the Mnesia database -handle_call({setValue, _Key, Value},_From,State) -> - {reply,value_set_or_updated, State}. - -handle_info(timeout, State) -> - {noreply, State}. - -terminate(_Reason, _State) -> - ok. - -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - -%%----------------------------------------------------- -%% Internal functions -%%----------------------------------------------------- diff --git a/src/old/ggs_protocol.erl b/src/old/ggs_protocol.erl deleted file mode 100644 index 46c1ba1..0000000 --- a/src/old/ggs_protocol.erl +++ /dev/null @@ -1,49 +0,0 @@ --module(ggs_protocol). --export([parse/1]). - -parse(Data) -> - Parsed = do_parse(Data, []), - prettify(Parsed). - -do_parse(Data, ParsedMessage) -> - NewLinePos = string:chr(Data, $\n), - Line = string:substr(Data, 1, NewLinePos-1), - Tokens = re:split(Line, ": ", [{return, list}]), - case handle(Tokens) of - {Command, more} -> - do_parse(string:substr(Data, NewLinePos+1), ParsedMessage ++ [Command]); - {separator, data_next} -> - {_, Value} = lists:keyfind(content_len, 1, ParsedMessage), - {ContentLength, []} = string:to_integer(Value), - {ParsedMessage, handle_data(string:substr(Data, NewLinePos+1), ContentLength)} - end. - -handle([[]]) -> - {separator, data_next}; -handle(["Server-Command", Param]) -> - {{srv_cmd, Param}, more}; -handle(["Content-Length", Param]) -> - {{content_len, Param}, more}; -handle(["Token", Param]) -> - {{token, Param}, more}; -handle(["Content-Type", Param]) -> - {{content_type, Param}, more}. - -handle_data(Data, Length) -> - {data, string:substr(Data,1,Length)}. - - -%% Helpers -prettify({Args, Data}) -> - case lists:keyfind(srv_cmd, 1, Args) of - {_, Value} -> - gen_server:cast(ggs_server, {srv_cmd, Value, Args, Data}); - _Other -> - case lists:keyfind(game_cmd, 1, Args) of - {_, Value} -> - gen_server:cast(ggs_server, {game_cmd, Value, Args, Data}); - _ -> - ok - end - end. - diff --git a/src/old/ggs_server.erl b/src/old/ggs_server.erl deleted file mode 100644 index 34d297f..0000000 --- a/src/old/ggs_server.erl +++ /dev/null @@ -1,141 +0,0 @@ -%%%---------------------------------------------------- -%%% @author Jonatan Pålsson -%%% @copyright 2010 Jonatan Pålsson -%%% @doc RPC over TCP server -%%% @end -%%%---------------------------------------------------- - --module(ggs_server). --behaviour(gen_server). - -%% API --export([start_link/1, - start_link/0, - stop/0 - ]). - -%% gen_server callbacks --export([init/1, handle_call/3, handle_cast/2, - handle_info/2, terminate/2, code_change/3]). - - --define(SERVER, ?MODULE). --define(DEFAULT_PORT, 1055). - --record(state, {port, lsock, client_vm_map = []}). - -%%%==================================================== -%%% API -%%%==================================================== - -%%----------------------------------------------------- -%% @doc Starts the server -%% @end -%%----------------------------------------------------- -start_link(Port) -> - gen_server:start_link({local, ?SERVER}, ?MODULE, [Port], []). - -start_link() -> - start_link(?DEFAULT_PORT). - -%%----------------------------------------------------- -%% @doc Stops the server. -%% @spec stop() -> ok -%% @end -%%----------------------------------------------------- -stop() -> - gen_server:cast(?SERVER, stop). - -%%----------------------------------------------------- -%% gen_server callbacks -%%----------------------------------------------------- - -init([Port]) -> - case gen_server:call(ggs_backup, get_backup) of - {backup_state, not_initialized} -> - {ok, LSock} = gen_tcp:listen(Port, [{active, true}, - {reuseaddr, true}]), - {ok, #state{port = Port, lsock = LSock}, 0}; - {backup_state, State} -> - {ok, LSock} = gen_tcp:listen(Port, [{active, true}, - {reuseaddr, true}]), - {ok, State#state{lsock = LSock}, 0} - end. - -handle_call({backup_state, OldState}, _From, State) -> - io:format("Received old state from backup~n"), - {noreply, OldState}. - - -handle_info({tcp, Socket, RawData}, State) -> - ggs_protocol:parse(RawData), - {noreply, State#state{lsock = Socket}}; - -handle_info({tcp_closed, Socket}, State) -> - gen_tcp:close(Socket), - {stop, "Client closed socket", State}; - -handle_info(timeout, #state{lsock = LSock} = State) -> - {ok, _Sock} = gen_tcp:accept(LSock), - {noreply, State}; - -handle_info(Other, State) -> - erlang:display(Other). - -terminate(_Reason, _State) -> - ok. - -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - -%%----------------------------------------------------- -%% Internal functions -%%----------------------------------------------------- -handle_cast(stop, State) -> - {stop, normal, State}; - -% Handle javascript defines -handle_cast({define, Token, SourceCode}, State) -> - GameVM = getJSVM(Token, State), - ggs_vm_runner:define(GameVM, SourceCode), - send(State#state.lsock, Token, "Okay, defined that for you!"), - {noreply, State}; - -% Handle javascript calls -handle_cast({call, Token, Command}, State) -> - GameVM = getJSVM(Token, State), - ggs_vm_runner:user_command(GameVM, "User", Command, []), - %send(State#state.lsock, Token, "JS says:", binary_to_list(Ret)), Unessecary - {noreply, State}; - -% Set the new state to the reference generated, and JSVM associated -handle_cast({hello, _, _}, State) -> - GameVM = ggs_vm_runner:start_link(), - Client = getRef(), - send(State#state.lsock, Client, "This is your refID"), - OldMap = State#state.client_vm_map, - NewState = State#state{client_vm_map = OldMap ++ [{Client, GameVM}]}, - gen_server:cast(ggs_backup, {set_backup, NewState}), - {noreply, NewState}. - -%%----------------------------------------------------- -%% Helpers -%%----------------------------------------------------- -getRef() -> - %{A1,A2,A3} = now(), - %#random:seed(A1, A2, A3), - %random:uniform(1000). - string:strip(os:cmd("uuidgen"), right, $\n ). - -getJSVM(RefID, State) -> - VMs = State#state.client_vm_map, - erlang:display(RefID), - erlang:display(VMs), - {value, {_,VM}} = lists:keysearch(RefID, 1, VMs), - VM. - -send(Socket, RefID, String) -> - gen_tcp:send(Socket, string:join([RefID,String,"\n"], " ")). - -send(Socket, RefID, String1, String2) -> - gen_tcp:send(Socket, string:join([RefID,String1, String2,"\n"], " ")). diff --git a/src/old/ggs_server_sup.erl b/src/old/ggs_server_sup.erl deleted file mode 100644 index 23d32f7..0000000 --- a/src/old/ggs_server_sup.erl +++ /dev/null @@ -1,48 +0,0 @@ --module(ggs_server_sup). --behaviour(supervisor). - -%% API --export([start/1, start_link/1]). - -%% Supervisor callbacks --export([init/1]). --define(SERVER, ?MODULE). - -start(Port) -> - [FirstArg] = Port, - {IntPort, _} = string:to_integer(FirstArg), - start_link(IntPort). - -start_link(Port) -> - supervisor:start_link({local, ?SERVER}, ?MODULE, [Port]). - -init([Port]) -> - GGSServer = {ggs_server, - {ggs_server, start_link, [Port]}, - permanent, - 2000, - worker, - [ggs_server] - }, - Backup = {ggs_backup, - {ggs_backup, start_link, []}, - permanent, - 2000, - worker, - [ggs_backup] - }, - MnesiaServer = {ggs_mnesia_controller_server, - {ggs_mnesia_controller_server, start_link, []}, - permanent, - 2000, - worker, - [ggs_mnesia_controller_server] - }, - Children = [MnesiaServer, Backup, GGSServer], - - RestartStrategy = { one_for_one, % Restart only crashing child - 10, % Allow ten crashes per.. - 1 % 1 second, then crash supervisor. - }, - {ok, {RestartStrategy, Children}}. - diff --git a/src/old/ggs_sup.erl b/src/old/ggs_sup.erl deleted file mode 100644 index ee6f8cd..0000000 --- a/src/old/ggs_sup.erl +++ /dev/null @@ -1,34 +0,0 @@ --module(ggs_sup). --behaviour(supervisor). - -%% API --export([start/1, start_link/1]). - -%% Supervisor callbacks --export([init/1]). --define(SERVER, ?MODULE). - -start(Port) -> - [FirstArg] = Port, - {IntPort, _} = string:to_integer(FirstArg), - start_link(IntPort). - -start_link(Port) -> - supervisor:start_link({local, ?SERVER}, ?MODULE, [Port]). - -init([Port]) -> - Server = {ggs_server_sup, - {ggs_server_sup, start_link, [Port]}, - permanent, - 2000, - worker, - [ggs_server_sup] - }, - Children = [Server], - - RestartStrategy = { one_for_one, % Restart only crashing child - 10, % Allow ten crashes per.. - 1 % 1 second, then crash supervisor. - }, - {ok, {RestartStrategy, Children}}. - diff --git a/src/old/js_runner.erl b/src/old/js_runner.erl deleted file mode 100644 index ca866c4..0000000 --- a/src/old/js_runner.erl +++ /dev/null @@ -1,13 +0,0 @@ --module(js_runner). --export([define/2,call/3, boot/0]). - -boot() -> - erlang_js:start(), - {ok, Port} = js_driver:new(), - Port. - -define(Port, Data) -> - ok = js:define(Port, list_to_binary(Data)). - -call(Port, Func, Params) -> - js:call(Port, list_to_binary(Func), Params). diff --git a/src/old/start_ggs.erl b/src/old/start_ggs.erl deleted file mode 100644 index 3955715..0000000 --- a/src/old/start_ggs.erl +++ /dev/null @@ -1,7 +0,0 @@ --module(start_ggs). --export([start/0]). - -start() -> - application:start(inets), - application:start(erlang_js), - application:start(ggs). From 4be808049e0de12cd0a2cb5ea08353bd251884f0 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 16 Feb 2011 20:53:36 +0100 Subject: [PATCH 039/192] added ggs_logger module and implemented some ggs_table stuff --- src/ggs_coordinator.erl | 16 ++++++++-------- src/ggs_dispatcher.erl | 4 ++-- src/ggs_logger.erl | 8 ++++++++ src/ggs_player.erl | 8 ++++---- src/ggs_table.erl | 39 ++++++++++++++++++++++++++++++--------- 5 files changed, 52 insertions(+), 23 deletions(-) create mode 100644 src/ggs_logger.erl diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 1081077..21bb641 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -12,36 +12,36 @@ %% @doc Starts the coordinator process. start_link() -> - not_implemented(). + ggs_logger:not_implemented(). %% @doc Terminates the coordinator process. stop(_Reason) -> - not_implemented(). + ggs_logger:not_implemented(). %% @doc Joins table with specified token join_table(_Token) -> - not_implemented(). + ggs_logger:not_implemented(). %% @doc Create a new table create_table(_Params) -> - not_implemented(). + ggs_logger:not_implemented(). %% @doc This is the first function run by a newly created players. %% Generates a unique token that we use to identify the player. join_lobby() -> - not_implemented(). + ggs_logger:not_implemented(). %% @doc Act as a supervisor to player and respawns player when it gets bad data. respawn_player(_Player, _Socket) -> - not_implemented(). + ggs_logger:not_implemented(). %% @doc Act as a supervisor to table and respawns table when it gets bad data. respawn_table(_Token) -> - not_implemented(). + ggs_logger:not_implemented(). %% @doc Removes a player from coordinator. remove_player(From, Player) -> - not_implemented(). + ggs_logger:not_implemented(). %% gen_server callbacks diff --git a/src/ggs_dispatcher.erl b/src/ggs_dispatcher.erl index 69d5481..fadb96d 100644 --- a/src/ggs_dispatcher.erl +++ b/src/ggs_dispatcher.erl @@ -20,12 +20,12 @@ %% Port = Integer %% Pid = # start_link(Port) -> - not_implemented(). + ggs_logger:not_implemented(). %% @doc Stops the dispatcher with the specified reason. %% @spec stop(Reason) -> ok. %% Reason = String -stop(Reason) -> not_implemented(). +stop(Reason) -> ggs_logger:not_implemented(). %% gen_server callbacks diff --git a/src/ggs_logger.erl b/src/ggs_logger.erl new file mode 100644 index 0000000..40a9595 --- /dev/null +++ b/src/ggs_logger.erl @@ -0,0 +1,8 @@ +-module(ggs_logger). +-export(not_implemented/0, log/2). + +not_implemented() -> + exit(not_implemented). + +log(Format, Args) -> + error_logger:info_msg(Format, Args). \ No newline at end of file diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 6eb31c9..ae20ae8 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -13,7 +13,7 @@ %% identifying the player. %% @spec start_link(Socket::socket()) -> ok start_link(Socket) -> - not_implemented(). + ggs_logger:not_implemented(). %% @doc Handles incoming messages from the GGS and forwards them through the player @@ -21,16 +21,16 @@ start_link(Socket) -> %% @spec notify(Player::Pid(), From::Pid(), %% {Command::String(), Message::string()}) -> ok notify(Player, From, Message) -> - not_implemented(). + ggs_logger:not_implemented(). %% @doc Get the player token uniquely representing the player. %% @spec get_token() -> string() get_token() -> - not_implemented(). + ggs_logger:not_implemented(). %% @doc Properly terminates the player process. The player token will be destroyed. %% Makes table token unreferenced and destroys the process in the end. %% @spec stop(Table::pid()) -> Reason::string() stop(Table) -> - not_implemented(). + ggs_logger:not_implemented(). diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 87a623a..5c0cbf0 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -1,5 +1,3 @@ -%% @doc This module represents a Player with a Socket and a Token - -module(ggs_table). -export([ start_link/1, @@ -9,28 +7,51 @@ notify/3 ]). +%% @doc This module represents a Player with a Socket and a Token + % @doc returns a new table -start_link(Token) -> - not_implemented(). +start_link(Token, Socket) -> + spawn_link(fun(Token, Socket) -> + GameVM = ggs_gamevm:start_link(); + loop(Token, Socket, GameVM, []) + ). % @doc adds a player to a table add_player(Table, Player) -> - not_implemented(). + ggs_logger:not_implemented(). % @doc removes player form a table remove_player(Table, Player) -> - not_implemented(). + ggs_logger:not_implemented(). % @doc stops the table process stop(Table) -> - not_implemented(). + Table ! {'EXIT', self(), normal} % @doc notifies the table with a message from a player notify(Table, Player, Message) -> - not_implemented(). + Table ! {notify, Player, Message}. % loop - +loop(Token, Socket, GameVM, PlayerList) -> + receive + {add_player, Player} -> + NewPlayerList = list:append(PlayerList, [Player]), + loop(Token, Socket, GameVM, NewPlayerList); + {remove_player, Player} -> + NewPlayerList = list:delete(Player, PlayerList), + loop(Token, Socket, GameVM, NewPlayerList); + {notify, Player, Message} -> + case Message of + {server, define, Args} -> + ggs_gamevm:define(GameVM, Args), + loop(Token, Socket, GameVM, PlayerList); + {game, Command, Args} -> + ggs_gamevm:user_command(GameVM, Player, Command, Args), + loop(Token, Socket, GameVM, PlayerList); + end + end. + % private helpers \ No newline at end of file From 2455f5582ce6858065143330c47299cd89529a24 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Wed, 16 Feb 2011 21:18:32 +0100 Subject: [PATCH 040/192] Added ggs_player_test skeleton. Return in player start_link is now {ok, Pid} | {error, Reason}. --- src/ggs_player.erl | 9 +++++---- tests/ggs_player_test.erl | 23 +++++++++++++++++++++++ 2 files changed, 28 insertions(+), 4 deletions(-) create mode 100644 tests/ggs_player_test.erl diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 79d0d06..2a9aee1 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -11,7 +11,7 @@ %% @doc Spawns a process representing the player in GGS. Takes the player socket as %% an argument for storage and later usage. Creates a unique player token %% identifying the player. -%% @spec start_link(Socket::socket()) -> ok +%% @spec start_link(Socket::socket()) -> {ok, Pid} | {error, Reason} start_link(Socket) -> loop(Socket). @@ -27,10 +27,11 @@ notify(Player, From, Message) -> get_token(_Player) -> helpers:not_implemented(). -%% @doc Properly terminates the player process. The player token will be destroyed. -%% Makes table token unreferenced and destroys the process in the end. +%% @doc Properly terminates the player process. The player token will be lost +%% together with the table token. It should also close the player socket and the +%% process should return in the end. %% @spec stop(Table::pid()) -> Reason::string() -stop(_Table) -> +stop(_Player,_Table) -> helpers:not_implemented(). %% Internals diff --git a/tests/ggs_player_test.erl b/tests/ggs_player_test.erl new file mode 100644 index 0000000..fc13eb5 --- /dev/null +++ b/tests/ggs_player_test.erl @@ -0,0 +1,23 @@ +-include_lib("eunit/include/eunit.hrl"). +-import(ggs_player). + +%% @doc start_link should always return ok for any valid socket. A valid socket +%% should always return {ok, Pid} and {error, Reason} otherwise. +start_link_test() -> + helpers:not_implemented(). + +%% @doc Given that start_link returned {ok, Player}. Notify shall always return ok and +%% deliver a specified message through the socket. +notify_test() -> + helpers:not_implemented(). + +%% @doc Given that start_link returned {ok, Player}. get_token shall always return a valid +%% player token. a valid token should be unique. +get_token_test() -> + helpers:not_implemented(). + +%% @doc Given that start_link returned {ok, Pid}. There shouldn't be possible to +%% execute this function with the same Player and Table arguments twice. +stop_test() -> + helpers:not_implemented(). + From 8a780adb2d8a89e78a191dea856f289d94e17555 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 17 Feb 2011 01:01:54 +0100 Subject: [PATCH 041/192] changed to a gen_server --- src/ggs_table.erl | 132 ++++++++++++++++++++++++++++++++-------------- 1 file changed, 92 insertions(+), 40 deletions(-) diff --git a/src/ggs_table.erl b/src/ggs_table.erl index e9c1518..cf22ddc 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -1,53 +1,105 @@ --module(ggs_table). --export([ - start_link/1, - add_player/2, - remove_player/2, - stop/2, - notify/3 -]). - %% @doc This module represents a Player with a Socket and a Token +-module(ggs_table). +-behaviour(gen_server). + +%% gen_server callbacks +-export([init/1, handle_call/3, handle_cast/2, handle_info/2, + terminate/2, code_change/3]). + +-record(state, { token, players, socket, game_vm } ). + +%% API +-export([start_link/2, + add_player/2, + remove_player/2, + stop/1, + notify/3]). + +-include_lib("eunit/include/eunit.hrl"). + +%% ---------------------------------------------------------------------- +% API implementation + % @doc returns a new table start_link(Token, Socket) -> - spawn_link(fun(Token, Socket) -> - GameVM = ggs_gamevm:start_link(); - loop(Token, Socket, GameVM, []) - ). + GameVM = ggs_gamevm:start_link(), + {ok, Pid} = gen_server:start_link(?MODULE, [Token, Socket, GameVM], []), + Pid. + +%% @private +call(Pid, Msg) -> + gen_server:call(Pid, Msg, infinity). % @doc adds a player to a table add_player(Table, Player) -> - ggs_logger:not_implemented(). - + call(Table, {add_player, Player}). + % @doc removes player form a table remove_player(Table, Player) -> - ggs_logger:not_implemented(). - + call(Table, {remove_player, Player}). + % @doc stops the table process stop(Table) -> - Table ! {'EXIT', self(), normal} - + gen_server:cast(Table, stop). + % @doc notifies the table with a message from a player notify(Table, Player, Message) -> - Table ! {notify, Player, Message}. - -% loop -loop(Token, Socket, GameVM, PlayerList) -> - receive - {add_player, Player} -> - NewPlayerList = list:append(PlayerList, [Player]), - loop(Token, Socket, GameVM, NewPlayerList); - {remove_player, Player} -> - NewPlayerList = list:delete(Player, PlayerList), - loop(Token, Socket, GameVM, NewPlayerList); - {notify, Player, Message} -> - case Message of - {server, define, Args} -> - ggs_gamevm:define(GameVM, Args), - loop(Token, Socket, GameVM, PlayerList); - {game, Command, Args} -> - ggs_gamevm:user_command(GameVM, Player, Command, Args), - loop(Token, Socket, GameVM, PlayerList); - end - end. + gen_server:cast(Table, {notify, Player, Message}). + +%% ---------------------------------------------------------------------- + +%% @private +init([Token, Socket, GameVM]) -> + {ok, #state { token = Token, + socket = Socket, + game_vm = GameVM, + players = [] }}. + +%% @private +handle_call({add_player, Player}, _From, #state { players = Players } = State) -> + {reply, ok, State#state { players = [Player | Players] }}; +handle_call({remove_player, Player}, _From, #state { players = Players } = State) -> + {reply, ok, State#state { players = Players -- [Player] }}; +handle_call(Msg, _From, State) -> + error_logger:error_report([unknown_msg, Msg]), + {reply, ok, State}. + +%% @private +handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> + case Message of + {server, define, Args} -> + ggs_gamevm:define(GameVM, Args); + {game, Command, Args} -> + ggs_gamevm:user_command(GameVM, Player, Command, Args) + end, + {noreply, State}; +handle_cast(stop, State) -> + {stop, normal, State}; +handle_cast(Msg, S) -> + error_logger:error_report([unknown_msg, Msg]), + {noreply, S}. + +%% @private +handle_info(Msg, S) -> + error_logger:error_report([unknown_msg, Msg]), + {noreply, S}. + +%% @private +terminate(_Reason, _State) -> + ok. + +%% @private +code_change(_OldVsn, State, _Extra) -> + {ok, State}. + + +%% ---------------------------------------------------------------------- + +% Tests + +%% @private +start_link_test() -> + ClientToken = "123", + Pid = start_link(ClientToken, none), + ?assertNot(Pid =:= undefined). From 6865e7368412a4f55b786092d746bce05c6aa0a4 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 17 Feb 2011 01:57:09 +0100 Subject: [PATCH 042/192] changed from stop/1 to stop/2 in export --- src/ggs_player.erl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 2a9aee1..c3695af 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -1,5 +1,5 @@ -module(ggs_player). --export([start_link/1, notify/3, get_token/1, stop/1]). +-export([start_link/1, notify/3, get_token/1, stop/2]). %% @doc This module handles communication between a player and GGS. This module is %%responsible for: From d018034b7f55ff4449a5984f5eb70e68f7c74fb9 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 17 Feb 2011 01:57:29 +0100 Subject: [PATCH 043/192] added another test --- src/ggs_table.erl | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/ggs_table.erl b/src/ggs_table.erl index cf22ddc..db247c4 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -61,6 +61,8 @@ handle_call({add_player, Player}, _From, #state { players = Players } = State) - {reply, ok, State#state { players = [Player | Players] }}; handle_call({remove_player, Player}, _From, #state { players = Players } = State) -> {reply, ok, State#state { players = Players -- [Player] }}; +handle_call(get_player_list, _From, #state { players = Players } = State) -> + {reply, {ok, Players}, State}; handle_call(Msg, _From, State) -> error_logger:error_report([unknown_msg, Msg]), {reply, ok, State}. @@ -98,8 +100,15 @@ code_change(_OldVsn, State, _Extra) -> % Tests -%% @private start_link_test() -> ClientToken = "123", Pid = start_link(ClientToken, none), ?assertNot(Pid =:= undefined). + +add_player_test() -> + Table = start_link("123", none), + Player = "test", %ggs_player:start_link(none), + add_player(Table, Player), + {ok, [Player]} = gen_server:call(Table, get_player_list). + + From ea1557e2d74ca72bf2afcbf6d09aeef83b24190b Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 17 Feb 2011 02:28:14 +0100 Subject: [PATCH 044/192] added a notify test --- src/ggs_table.erl | 32 ++++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/src/ggs_table.erl b/src/ggs_table.erl index db247c4..1e4f323 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -101,14 +101,38 @@ code_change(_OldVsn, State, _Extra) -> % Tests start_link_test() -> - ClientToken = "123", - Pid = start_link(ClientToken, none), - ?assertNot(Pid =:= undefined). + Table = start_link("123", none), + ?assertNot(Table =:= undefined). add_player_test() -> Table = start_link("123", none), - Player = "test", %ggs_player:start_link(none), + Player = test_player, add_player(Table, Player), {ok, [Player]} = gen_server:call(Table, get_player_list). +remove_player_test() -> + Table = start_link("123", none), + Player = test_player, + Player2 = test_player2, + add_player(Table, Player), + {ok, [Player]} = gen_server:call(Table, get_player_list), + add_player(Table, Player2), + {ok, [Player2, Player]} = gen_server:call(Table, get_player_list), + remove_player(Table, Player), + {ok, [Player2]} = gen_server:call(Table, get_player_list), + remove_player(Table, Player2), + {ok, []} = gen_server:call(Table, get_player_list). +stop_test() -> + Table = start_link("123", none), + ok = stop(Table). + +% @private +notify_test() -> + Table = start_link("123", none), + Player = test_player, + Message = {server, define, "function helloWorld(x) { }"}, + ok = notify(Table, Player, Message). + %Message2 = {game, "helloWorld", "test"}, + %ok = notify(Table, Player, Message2). + \ No newline at end of file From 94d9dc6d7f546b0e4613bb66510488f181934bd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Thu, 17 Feb 2011 08:33:55 +0100 Subject: [PATCH 045/192] ggs_logger got lost somewhere? I added it again, also replaced all references to helpers with ggs_logger --- src/ggs_coordinator.erl | 14 +++++++------- src/ggs_dispatcher.erl | 2 +- src/ggs_logger.erl | 8 ++++++++ src/ggs_player.erl | 6 +++--- tests/ggs_player_test.erl | 8 ++++---- 5 files changed, 23 insertions(+), 15 deletions(-) create mode 100644 src/ggs_logger.erl diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 2a755f0..4e6b623 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -17,32 +17,32 @@ start_link() -> %% @doc Terminates the coordinator process. stop(_Reason) -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% @doc Joins table with specified token join_table(_Token) -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% @doc Create a new table create_table(_Params) -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% @doc This is the first function run by a newly created players. %% Generates a unique token that we use to identify the player. join_lobby() -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% @doc Act as a supervisor to player and respawns player when it gets bad data. respawn_player(_Player, _Socket) -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% @doc Act as a supervisor to table and respawns table when it gets bad data. respawn_table(_Token) -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% @doc Removes a player from coordinator. remove_player(_From, _Player) -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% gen_server callbacks diff --git a/src/ggs_dispatcher.erl b/src/ggs_dispatcher.erl index 4e353da..49dcf4b 100644 --- a/src/ggs_dispatcher.erl +++ b/src/ggs_dispatcher.erl @@ -29,7 +29,7 @@ start_link(Port) -> %% @doc Stops the dispatcher with the specified reason. %% @spec stop(Reason) -> ok. %% Reason = String -stop(_Reason) -> helpers:not_implemented(). +stop(_Reason) -> ggs_logger:not_implemented(). %% gen_server callbacks diff --git a/src/ggs_logger.erl b/src/ggs_logger.erl new file mode 100644 index 0000000..49f5abc --- /dev/null +++ b/src/ggs_logger.erl @@ -0,0 +1,8 @@ +-module(ggs_logger). +-export([not_implemented/0, log/2]). + +not_implemented() -> + exit(not_implemented). + +log(Format, Args) -> + error_logger:info_msg(Format, Args). diff --git a/src/ggs_player.erl b/src/ggs_player.erl index c3695af..37c8496 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -20,19 +20,19 @@ start_link(Socket) -> %% @spec notify(Player::Pid(), From::Pid(), %% {Command::String(), Message::string()}) -> ok notify(Player, From, Message) -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% @doc Get the player token uniquely representing the player. %% @spec get_token() -> string() get_token(_Player) -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% @doc Properly terminates the player process. The player token will be lost %% together with the table token. It should also close the player socket and the %% process should return in the end. %% @spec stop(Table::pid()) -> Reason::string() stop(_Player,_Table) -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% Internals diff --git a/tests/ggs_player_test.erl b/tests/ggs_player_test.erl index fc13eb5..1067f71 100644 --- a/tests/ggs_player_test.erl +++ b/tests/ggs_player_test.erl @@ -4,20 +4,20 @@ %% @doc start_link should always return ok for any valid socket. A valid socket %% should always return {ok, Pid} and {error, Reason} otherwise. start_link_test() -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% @doc Given that start_link returned {ok, Player}. Notify shall always return ok and %% deliver a specified message through the socket. notify_test() -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% @doc Given that start_link returned {ok, Player}. get_token shall always return a valid %% player token. a valid token should be unique. get_token_test() -> - helpers:not_implemented(). + ggs_logger:not_implemented(). %% @doc Given that start_link returned {ok, Pid}. There shouldn't be possible to %% execute this function with the same Player and Table arguments twice. stop_test() -> - helpers:not_implemented(). + ggs_logger:not_implemented(). From 654aa837ddacc2623b418173a48072f6b22873de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Thu, 17 Feb 2011 09:35:39 +0100 Subject: [PATCH 046/192] Added some tests for coordinator --- src/ggs_coordinator.erl | 7 +++++-- tests/ggs_coordinator_test.erl | 16 ++++++++++++++++ 2 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 tests/ggs_coordinator_test.erl diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 4e6b623..a28fc2a 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -16,8 +16,8 @@ start_link() -> gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). %% @doc Terminates the coordinator process. -stop(_Reason) -> - ggs_logger:not_implemented(). +stop(Reason) -> + gen_server:cast(ggs_coordinator, {stop, Reason}). %% @doc Joins table with specified token join_table(_Token) -> @@ -52,6 +52,9 @@ init([]) -> handle_call(_Message, _From, State) -> {noreply, State}. +handle_cast({stop, Reason}, State) -> + {stop, normal, state}; + handle_cast(_Message, State) -> {noreply, State}. diff --git a/tests/ggs_coordinator_test.erl b/tests/ggs_coordinator_test.erl new file mode 100644 index 0000000..03b5389 --- /dev/null +++ b/tests/ggs_coordinator_test.erl @@ -0,0 +1,16 @@ +-module(ggs_coordinator_test). +-include_lib("eunit/include/eunit.hrl"). + +start_link_test() -> + {ok, Coord} = ggs_coordinator:start_link(), % Start + PInfo = erlang:process_info(Coord), % Check process info + ggs_coordinator:stop(""), % Clean up + timer:sleep(100), % Wait for cleaning.. + ?assert((PInfo /= undefined)). % Did the server start? + +stop_test() -> + ok = ggs_coordinator:stop(""), % Extra cleaning + {ok, Coord} = ggs_coordinator:start_link(), % Start server + ggs_coordinator:stop("Terminate now"), % Send stop message + timer:sleep(100), % Wait for cleaning.. + ?assert((erlang:process_info(Coord) == undefined)). % Did it stop? From 391af1a96af8b2f603459181bedcd1e191668a89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Thu, 17 Feb 2011 10:04:54 +0100 Subject: [PATCH 047/192] Added more tests & functionality. (failing join table, create_table_test with force) --- src/ggs_coordinator.erl | 21 ++++++++++++++------- tests/ggs_coordinator_test.erl | 17 +++++++++++++++++ 2 files changed, 31 insertions(+), 7 deletions(-) diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index a28fc2a..2a5d509 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -1,7 +1,7 @@ -module(ggs_coordinator). %% API Exports --export([start_link/0, stop/1]). +-export([start_link/0, stop/1, join_table/1, create_table/1]). %% gen_server callback exports -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, @@ -19,13 +19,14 @@ start_link() -> stop(Reason) -> gen_server:cast(ggs_coordinator, {stop, Reason}). -%% @doc Joins table with specified token -join_table(_Token) -> - ggs_logger:not_implemented(). +%% @doc Joins table with specified token, returns {error, no_such_table} +%% if the specified table token does not exist +join_table(Token) -> + gen_server:call(ggs_coordinator, {join_table, Token}). -%% @doc Create a new table -create_table(_Params) -> - ggs_logger:not_implemented(). +%% @doc Create a new table, return {error, Reason} or {ok, TableToken} +create_table(Params) -> + gen_server:call(ggs_coordinator, {create_table, Params}). %% @doc This is the first function run by a newly created players. %% Generates a unique token that we use to identify the player. @@ -49,6 +50,12 @@ remove_player(_From, _Player) -> init([]) -> {ok, ok}. +handle_call({join_table, Table}, From, State) -> + {reply, {error, no_such_table}, State}; + +handle_call({create_table, {force, TID}}, From, State) -> + {reply, {ok, TID}, State}; + handle_call(_Message, _From, State) -> {noreply, State}. diff --git a/tests/ggs_coordinator_test.erl b/tests/ggs_coordinator_test.erl index 03b5389..ba05c95 100644 --- a/tests/ggs_coordinator_test.erl +++ b/tests/ggs_coordinator_test.erl @@ -14,3 +14,20 @@ stop_test() -> ggs_coordinator:stop("Terminate now"), % Send stop message timer:sleep(100), % Wait for cleaning.. ?assert((erlang:process_info(Coord) == undefined)). % Did it stop? + +join_bad_table_test() -> + {ok, _Coord} = ggs_coordinator:start_link(), + Response = ggs_coordinator:join_table("Nonexistant table"), + ggs_coordinator:stop(""), + timer:sleep(100), + ?assert(Response == {error, no_such_table}). + + +create_table_test() -> + {ok, _Coord} = ggs_coordinator:start_link(), + % Forcibly create a table. This functionality should be disabled + % in the production system, but is pretty nice for testing. + Response = ggs_coordinator:create_table({force, 1337}), + ggs_coordinator:stop(""), + timer:sleep(100), + ?assert(Response == {ok, 1337}). From 818205e19b505580ee66c2836e97617c12455f5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Thu, 17 Feb 2011 12:12:12 +0100 Subject: [PATCH 048/192] Now we store the tables when they are created --- src/ggs_coordinator.erl | 10 ++++++-- start_test | 2 +- tests/ggs_coordinator_test.erl | 47 ++++++++++++++++++++-------------- 3 files changed, 37 insertions(+), 22 deletions(-) diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 2a5d509..c6e01d6 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -8,6 +8,11 @@ code_change/3]). -define(SERVER, ?MODULE). +-record(co_state, + {players = [], % List of all player processes + player_table_map = [], % Players <-> Table map + table_state_map = []}). % Table <-> Table state map + %% @doc This module act as "the man in the middle". %% Creates the starting connection between table and players. @@ -48,13 +53,14 @@ remove_player(_From, _Player) -> %% gen_server callbacks init([]) -> - {ok, ok}. + {ok, #co_state{}}. handle_call({join_table, Table}, From, State) -> {reply, {error, no_such_table}, State}; handle_call({create_table, {force, TID}}, From, State) -> - {reply, {ok, TID}, State}; + TIDs = State#co_state.player_table_map, + {reply, {ok, TID}, State#co_state{player_table_map = [TID | TIDs]}}; handle_call(_Message, _From, State) -> {noreply, State}. diff --git a/start_test b/start_test index 5920151..76050c1 100755 --- a/start_test +++ b/start_test @@ -1,3 +1,3 @@ #!/usr/bin/env bash -erl -boot start_sasl -pa ebin_test -pa erlang_js/ebin/ -pa erlv8/ebin -pa ebin -pa src -eval 'ggs_protocol_test:test_parse().' +erl -boot start_sasl -pa ebin_test -pa erlang_js/ebin/ -pa ebin -pa src -eval 'ggs_coordinator_test:test().' diff --git a/tests/ggs_coordinator_test.erl b/tests/ggs_coordinator_test.erl index ba05c95..ccc9256 100644 --- a/tests/ggs_coordinator_test.erl +++ b/tests/ggs_coordinator_test.erl @@ -1,33 +1,42 @@ -module(ggs_coordinator_test). -include_lib("eunit/include/eunit.hrl"). -start_link_test() -> - {ok, Coord} = ggs_coordinator:start_link(), % Start - PInfo = erlang:process_info(Coord), % Check process info - ggs_coordinator:stop(""), % Clean up - timer:sleep(100), % Wait for cleaning.. - ?assert((PInfo /= undefined)). % Did the server start? +coordinator_test_() -> + {foreach, + fun() -> + {ok, _Coord} = ggs_coordinator:start_link(), + timer:sleep(100) + end, + fun(_X) -> + ggs_coordinator:stop("End of test"), + timer:sleep(100) + end, + [ + fun test_start_link/0, + fun test_stop/0, + fun test_join_bad_table/0, + fun test_create_table/0 + ] + }. -stop_test() -> +test_start_link() -> + % Check process info + PInfo = whereis(ggs_coordinator), + ?assert((PInfo /= undefined)). % Did the server start? + +test_stop() -> ok = ggs_coordinator:stop(""), % Extra cleaning - {ok, Coord} = ggs_coordinator:start_link(), % Start server - ggs_coordinator:stop("Terminate now"), % Send stop message - timer:sleep(100), % Wait for cleaning.. - ?assert((erlang:process_info(Coord) == undefined)). % Did it stop? + timer:sleep(100), + % Did it stop? + ?assert((whereis(ggs_coordinator)) == undefined). -join_bad_table_test() -> - {ok, _Coord} = ggs_coordinator:start_link(), +test_join_bad_table() -> Response = ggs_coordinator:join_table("Nonexistant table"), - ggs_coordinator:stop(""), - timer:sleep(100), ?assert(Response == {error, no_such_table}). -create_table_test() -> - {ok, _Coord} = ggs_coordinator:start_link(), +test_create_table() -> % Forcibly create a table. This functionality should be disabled % in the production system, but is pretty nice for testing. Response = ggs_coordinator:create_table({force, 1337}), - ggs_coordinator:stop(""), - timer:sleep(100), ?assert(Response == {ok, 1337}). From 3f417692339b7d727b0ec37295bf10e489fc4f66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Thu, 17 Feb 2011 12:57:41 +0100 Subject: [PATCH 049/192] Now we have join_table, create_table and join_lobby + test cases --- src/ggs_coordinator.erl | 30 +++++++++++++++++++++++------- src/helpers.erl | 4 ++++ tests/ggs_coordinator_test.erl | 15 +++++++++++++-- 3 files changed, 40 insertions(+), 9 deletions(-) diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index c6e01d6..756bb2c 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -1,7 +1,8 @@ -module(ggs_coordinator). %% API Exports --export([start_link/0, stop/1, join_table/1, create_table/1]). +-export([start_link/0, stop/1, join_table/1, create_table/1, join_lobby/0, + respawn_player/2, respawn_table/1, remove_player/2]). %% gen_server callback exports -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, @@ -11,7 +12,8 @@ -record(co_state, {players = [], % List of all player processes player_table_map = [], % Players <-> Table map - table_state_map = []}). % Table <-> Table state map + table_state_map = [], + tables = []}). % Table <-> Table state map %% @doc This module act as "the man in the middle". %% Creates the starting connection between table and players. @@ -36,7 +38,7 @@ create_table(Params) -> %% @doc This is the first function run by a newly created players. %% Generates a unique token that we use to identify the player. join_lobby() -> - ggs_logger:not_implemented(). + gen_server:call(ggs_coordinator, join_lobby). %% @doc Act as a supervisor to player and respawns player when it gets bad data. respawn_player(_Player, _Socket) -> @@ -55,12 +57,26 @@ remove_player(_From, _Player) -> init([]) -> {ok, #co_state{}}. -handle_call({join_table, Table}, From, State) -> - {reply, {error, no_such_table}, State}; +handle_call(join_lobby, _From, State) -> + Token = helpers:get_new_token(), + {reply, {ok, Token}, State}; + +handle_call({join_table, Table}, _From, State) -> + Tables = State#co_state.tables, + case lists:keyfind(Table, 1, Tables) of + {Table} -> + {reply, {ok, Table}, State}; %% @TODO: Also add player to table + false -> + {reply, {error, no_such_table}, State} + end; handle_call({create_table, {force, TID}}, From, State) -> - TIDs = State#co_state.player_table_map, - {reply, {ok, TID}, State#co_state{player_table_map = [TID | TIDs]}}; + TIDMap = State#co_state.player_table_map, + Tables = State#co_state.tables, + {reply, {ok, TID}, State#co_state{ + player_table_map = [{From, TID} | TIDMap], + tables = [{TID} | TID] + }}; handle_call(_Message, _From, State) -> {noreply, State}. diff --git a/src/helpers.erl b/src/helpers.erl index 1bf7825..3a42fbf 100644 --- a/src/helpers.erl +++ b/src/helpers.erl @@ -1,4 +1,8 @@ -module(helpers). +-export([not_implemented/0, get_new_token/0]). not_implemented() -> exit("Not implemented"). + +get_new_token() -> + string:strip(os:cmd("uuidgen"), right, $\n ). diff --git a/tests/ggs_coordinator_test.erl b/tests/ggs_coordinator_test.erl index ccc9256..6ec41c6 100644 --- a/tests/ggs_coordinator_test.erl +++ b/tests/ggs_coordinator_test.erl @@ -15,7 +15,7 @@ coordinator_test_() -> fun test_start_link/0, fun test_stop/0, fun test_join_bad_table/0, - fun test_create_table/0 + fun test_join_lobby/0 ] }. @@ -34,9 +34,20 @@ test_join_bad_table() -> Response = ggs_coordinator:join_table("Nonexistant table"), ?assert(Response == {error, no_such_table}). +test_join_lobby() -> + {Response, _} = ggs_coordinator:join_lobby(), + ?assert(Response /= error). -test_create_table() -> +%% 'Manual' tests + +create_table_test() -> + {ok, _Coord} = ggs_coordinator:start_link(), + timer:sleep(100), % Forcibly create a table. This functionality should be disabled % in the production system, but is pretty nice for testing. Response = ggs_coordinator:create_table({force, 1337}), ?assert(Response == {ok, 1337}). + +join_good_table_test() -> + Response = ggs_coordinator:join_table(1337), + ?assert(Response == {ok, 1337}). From e38bab50545c71f20bd7234e6c6034bc965f5511 Mon Sep 17 00:00:00 2001 From: niklas Date: Thu, 17 Feb 2011 13:52:56 +0100 Subject: [PATCH 050/192] Modified player test --- tests/ggs_player_test.erl | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/tests/ggs_player_test.erl b/tests/ggs_player_test.erl index 1067f71..be38135 100644 --- a/tests/ggs_player_test.erl +++ b/tests/ggs_player_test.erl @@ -4,20 +4,24 @@ %% @doc start_link should always return ok for any valid socket. A valid socket %% should always return {ok, Pid} and {error, Reason} otherwise. start_link_test() -> - ggs_logger:not_implemented(). + ggs_logger:not_implemented(). %% @doc Given that start_link returned {ok, Player}. Notify shall always return ok and %% deliver a specified message through the socket. notify_test() -> - ggs_logger:not_implemented(). - + Player = start_link("bad arg"), + Message = {"something", ""}, + Ret = ggs_player:notify(Player, self(), Message) + ?assertNot(ok =:= Ret). + %% @doc Given that start_link returned {ok, Player}. get_token shall always return a valid %% player token. a valid token should be unique. get_token_test() -> - ggs_logger:not_implemented(). + ggs_logger:not_implemented(). -%% @doc Given that start_link returned {ok, Pid}. There shouldn't be possible to +%% @doc Given that start_link returned {ok, Pid}. There shouldn't be possible to %% execute this function with the same Player and Table arguments twice. stop_test() -> - ggs_logger:not_implemented(). - + Player = start_link(something), + Table = test, + ok = stop(Player, Table). From 041fee24419644398c9841ebd2b6450076053891 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 17 Feb 2011 14:14:32 +0100 Subject: [PATCH 051/192] removed Token and Socket --- src/ggs_table.erl | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 1e4f323..3c0237d 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -1,4 +1,4 @@ -%% @doc This module represents a Player with a Socket and a Token +%% @doc This module represents a table with players -module(ggs_table). -behaviour(gen_server). @@ -7,10 +7,10 @@ -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]). --record(state, { token, players, socket, game_vm } ). +-record(state, { players, game_vm } ). %% API --export([start_link/2, +-export([start_link/0, add_player/2, remove_player/2, stop/1, @@ -22,9 +22,9 @@ % API implementation % @doc returns a new table -start_link(Token, Socket) -> +start_link() -> GameVM = ggs_gamevm:start_link(), - {ok, Pid} = gen_server:start_link(?MODULE, [Token, Socket, GameVM], []), + {ok, Pid} = gen_server:start_link(?MODULE, [GameVM], []), Pid. %% @private @@ -50,11 +50,8 @@ notify(Table, Player, Message) -> %% ---------------------------------------------------------------------- %% @private -init([Token, Socket, GameVM]) -> - {ok, #state { token = Token, - socket = Socket, - game_vm = GameVM, - players = [] }}. +init([GameVM]) -> + {ok, #state { game_vm = GameVM, players = [] }}. %% @private handle_call({add_player, Player}, _From, #state { players = Players } = State) -> @@ -97,21 +94,20 @@ code_change(_OldVsn, State, _Extra) -> %% ---------------------------------------------------------------------- - % Tests start_link_test() -> - Table = start_link("123", none), + Table = start_link(), ?assertNot(Table =:= undefined). add_player_test() -> - Table = start_link("123", none), + Table = start_link(), Player = test_player, add_player(Table, Player), {ok, [Player]} = gen_server:call(Table, get_player_list). remove_player_test() -> - Table = start_link("123", none), + Table = start_link(), Player = test_player, Player2 = test_player2, add_player(Table, Player), @@ -124,12 +120,12 @@ remove_player_test() -> {ok, []} = gen_server:call(Table, get_player_list). stop_test() -> - Table = start_link("123", none), + Table = start_link(), ok = stop(Table). % @private notify_test() -> - Table = start_link("123", none), + Table = start_link(), Player = test_player, Message = {server, define, "function helloWorld(x) { }"}, ok = notify(Table, Player, Message). From 44d26278ccc34a0c9a2d2718c063bd496d43bee1 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 17 Feb 2011 20:05:12 +0100 Subject: [PATCH 052/192] rewrite to gen_server and added tests --- src/ggs_gamevm.erl | 126 ++++++++++++++++++++++++++++++++++----------- 1 file changed, 97 insertions(+), 29 deletions(-) diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 1a8f547..15cbb64 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -1,24 +1,34 @@ --module(ggs_gamevm). --export([start_link/0, define/2, user_command/4]). %% @doc This module is responsible for running the game VM:s. You can issue %% commands to a vm using this module. +-module(ggs_gamevm). +-behaviour(gen_server). + +%% gen_server callbacks +-export([init/1, handle_call/3, handle_cast/2, handle_info/2, + terminate/2, code_change/3]). + +-record(state, { port, table } ). + +%% API +-export([start_link/1, define/2, user_command/4, stop/1, call_js/2]). + +-include_lib("eunit/include/eunit.hrl"). + + +%% ---------------------------------------------------------------------- +% API implementation + %% @doc Create a new VM process. The process ID is returned and can be used %% with for example the define method of this module. -start_link() -> +start_link(Table) -> erlang_js:start(), %% @TODO: should only be done once - PortPid = spawn_link( fun() -> - process_flag(trap_exit, true), - {ok, Port} = js_driver:new(), - js:define(Port, <<"function userCommand(user, command, args){return 'Hello world';}">>), - loop(Port) - end ), - PortPid. + {ok, Pid} = gen_server:start_link(?MODULE, [Table], []), + Pid. %% @doc Define some new code on the specified VM, returns the atom ok. define(GameVM, SourceCode) -> - GameVM ! {define,SourceCode}, - ok. + gen_server:cast(GameVM, {define, SourceCode}). %% @doc Execute a user command on the specified VM. This function is %% asynchronous, and returns ok. @@ -28,23 +38,81 @@ define(GameVM, SourceCode) -> %% Command = a game command to run %% Args = arguments for the Command parameter user_command(GameVM, Player, Command, Args) -> - Ref = make_ref(), - GameVM ! {user_command, Player, Command, Args, self(), Ref}, + gen_server:cast(GameVM, {user_command, Player, Command, Args}). + +%% @private +% only for tests +call_js(GameVM, SourceCode) -> + gen_server:call(GameVM, {eval, SourceCode}). + +% @doc stops the gamevm process +stop(GameVM) -> + gen_server:cast(GameVM, stop). + + +%% ---------------------------------------------------------------------- + +%% @private +init([Table]) -> + process_flag(trap_exit, true), + {ok, Port} = js_driver:new(), + %% @TODO: add here default JS API instead + {ok, #state { port = Port, table = Table }}. + +%% private +% only needed for the tests +handle_call({eval, SourceCode}, _From, #state { port = Port } = State) -> + {ok, Ret} = js:eval(Port, list_to_binary(SourceCode)), + {reply, Ret, State}. + +%% @private +handle_cast({define, SourceCode}, #state { port = Port } = State) -> + ok = js:define(Port, list_to_binary(SourceCode)), + {noreply, State}; +handle_cast({user_command, Player, Command, Args}, #state { port = Port } = State) -> + Arguments = string:sub(string:join([Player, Command, Args], ","), "'", "\'"), + Js = list_to_binary(string:concat(string:concat("userCommand(", Arguments), ");")), + js_driver:define_js(Port, Js), + {noreply, State}; +handle_cast(stop, State) -> + {stop, normal, State}; +handle_cast(Msg, S) -> + error_logger:error_report([unknown_msg, Msg]), + {noreply, S}. + +%% @private +handle_info(Msg, S) -> + error_logger:error_report([unknown_msg, Msg]), + {noreply, S}. + +%% @private +terminate(_Reason, _State) -> ok. -%% Helper functions +%% @private +code_change(_OldVsn, State, _Extra) -> + {ok, State}. -loop(Port) -> - receive - {define, SourceCode} -> - ok = js:define(Port, list_to_binary(SourceCode)), - loop(Port); - {user_command, User, Command, Args, From, Ref} -> - {ok, Ret} = js:call(Port, <<"userCommand">>, - [ list_to_binary(User), - list_to_binary(Command), - list_to_binary(Args) - ]), - From ! {Ref, Ret}, - loop(Port) - end. +%% ---------------------------------------------------------------------- +% Tests + +start_link_test() -> + erlang_js:start(), %% @TODO: should only be done once + GameVM = start_link(test_table), + ?assertNot(GameVM =:= undefined). + +define_test() -> + GameVM = start_link(test_table), + define(GameVM, "function hello(test) { return test; }"), + ?assertMatch(<<"jeena">>, gen_server:call(GameVM, {eval, "hello('jeena')"})). + +stop_test() -> + GameVM = start_link(test_table), + ok = stop(GameVM). + +user_command_test() -> + GameVM = start_link(test_table), + define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = user + command + args; }\n"), + user_command(GameVM, "'jeena'", "'thecommand'", "'theargs'"), + ?assertMatch(<<"jeenathecommandtheargs">>, gen_server:call(GameVM, {eval, "t;"})). + From dd9b92bf43b7969d896209b2aad98371c9d31b33 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 17 Feb 2011 20:14:45 +0100 Subject: [PATCH 053/192] fixed escaping problem --- src/ggs_gamevm.erl | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 15cbb64..6493c9f 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -70,7 +70,8 @@ handle_cast({define, SourceCode}, #state { port = Port } = State) -> ok = js:define(Port, list_to_binary(SourceCode)), {noreply, State}; handle_cast({user_command, Player, Command, Args}, #state { port = Port } = State) -> - Arguments = string:sub(string:join([Player, Command, Args], ","), "'", "\'"), + Arguments = string:concat("'", string:concat( + string:join([js_escape(Player), js_escape(Command), js_escape(Args)], "','"), "'")), Js = list_to_binary(string:concat(string:concat("userCommand(", Arguments), ");")), js_driver:define_js(Port, Js), {noreply, State}; @@ -93,6 +94,9 @@ terminate(_Reason, _State) -> code_change(_OldVsn, State, _Extra) -> {ok, State}. +js_escape(S) -> + lists:flatmap(fun($\') -> [$\\, $\']; (X) -> [X] end, S). + %% ---------------------------------------------------------------------- % Tests @@ -113,6 +117,6 @@ stop_test() -> user_command_test() -> GameVM = start_link(test_table), define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = user + command + args; }\n"), - user_command(GameVM, "'jeena'", "'thecommand'", "'theargs'"), - ?assertMatch(<<"jeenathecommandtheargs">>, gen_server:call(GameVM, {eval, "t;"})). + user_command(GameVM, "'jeena", "thecommand", "theargs'"), + ?assertMatch(<<"'jeenathecommandtheargs'">>, gen_server:call(GameVM, {eval, "t;"})). From 883cf9e9d714a79645df9b67068e2b5ec13e56a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Thu, 17 Feb 2011 23:17:04 +0100 Subject: [PATCH 054/192] Now we have some myltiplayer action! --- src/ggs_coordinator.erl | 21 ++++---- src/ggs_gamevm_e.erl | 41 +++++++++++++++ src/ggs_player.erl | 40 ++++++++++---- src/ggs_table.erl | 112 +++++++++++++++++++++++++--------------- 4 files changed, 151 insertions(+), 63 deletions(-) create mode 100644 src/ggs_gamevm_e.erl diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 756bb2c..733ff8d 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -61,21 +61,24 @@ handle_call(join_lobby, _From, State) -> Token = helpers:get_new_token(), {reply, {ok, Token}, State}; -handle_call({join_table, Table}, _From, State) -> +handle_call({join_table, Table}, From, State) -> + {FromPlayer, _Ref} = From, Tables = State#co_state.tables, case lists:keyfind(Table, 1, Tables) of - {Table} -> - {reply, {ok, Table}, State}; %% @TODO: Also add player to table + {TableID, TablePID} -> + ggs_table:add_player(TablePID, FromPlayer), + {reply, {ok, TablePID}, State}; false -> {reply, {error, no_such_table}, State} end; -handle_call({create_table, {force, TID}}, From, State) -> - TIDMap = State#co_state.player_table_map, - Tables = State#co_state.tables, - {reply, {ok, TID}, State#co_state{ - player_table_map = [{From, TID} | TIDMap], - tables = [{TID} | TID] +handle_call({create_table, {force, TableID}}, From, State) -> + TableIDMap = State#co_state.player_table_map, + Tables = State#co_state.tables, + NewTableProc = ggs_table:start_link(), + {reply, {ok, TableID}, State#co_state{ + player_table_map = [{From, TableID} | TableIDMap], + tables = [{TableID, NewTableProc} | Tables] }}; handle_call(_Message, _From, State) -> diff --git a/src/ggs_gamevm_e.erl b/src/ggs_gamevm_e.erl new file mode 100644 index 0000000..76b9350 --- /dev/null +++ b/src/ggs_gamevm_e.erl @@ -0,0 +1,41 @@ +-module(ggs_gamevm_e). +-export([start_link/1, define/2, user_command/4]). +%% @doc This module is responsible for running the game VM:s. You can issue +%% commands to a vm using this module. + +%% @doc Create a new VM process. The process ID is returned and can be used +%% with for example the define method of this module. +start_link(Table) -> + PortPid = spawn( fun() -> + loop(Table) + end ), + PortPid. + +%% @doc Define some new code on the specified VM, returns the atom ok. +define(GameVM, SourceCode) -> + GameVM ! {define,SourceCode}, + ok. + +%% @doc Execute a user command on the specified VM. This function is +%% asynchronous, and returns ok. +%% @spec user_command(GameVM, User, Command, Args) -> ok +%% GameVM = process IS of VM +%% Player = the player running the command +%% Command = a game command to run +%% Args = arguments for the Command parameter +user_command(GameVM, Player, Command, Args) -> + Ref = make_ref(), + GameVM ! {user_command, Player, Command, Args, self(), Ref}, + ok. + +%% Helper functions + +loop(Table) -> + receive + {define, SourceCode} -> + loop(Table); + {user_command, _User, Command, _Args, _From, _Ref} -> + io:format("GameVM received a message~n"), + ggs_table:notify_all_players(Table, Command), + loop(Table) + end. diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 37c8496..af92ad9 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -1,5 +1,9 @@ -module(ggs_player). -export([start_link/1, notify/3, get_token/1, stop/2]). +-record(pl_state, + {token, % Player's token + socket, % Player's socket + table}). % Player's table %% @doc This module handles communication between a player and GGS. This module is %%responsible for: @@ -13,14 +17,28 @@ %% identifying the player. %% @spec start_link(Socket::socket()) -> {ok, Pid} | {error, Reason} start_link(Socket) -> - loop(Socket). + % The socket is in 'active' mode, and that means we are pushed any data + % that arrives on it, we do not need to recv() manually. Since the socket + % was opened in our parent process, we need to change the owner of it to + % us, otherwise these messages end up in our parent. + erlang:port_connect(Socket, self()), + {ok, Token} = ggs_coordinator:join_lobby(), + TableStatus = ggs_coordinator:join_table(1337), + case TableStatus of + {ok, Table} -> + loop(#pl_state{socket = Socket, token = Token, table = Table}); + {error, no_such_table} -> + ggs_coordinator:create_table({force, 1337}), + {ok, Table} = ggs_coordinator:join_table(1337), + loop(#pl_state{socket = Socket, token = Token, table = Table}) + end. %% @doc Handles incoming messages from the GGS and forwards them through the player %% socket to the player. %% @spec notify(Player::Pid(), From::Pid(), %% {Command::String(), Message::string()}) -> ok notify(Player, From, Message) -> - ggs_logger:not_implemented(). + Player ! {notify, From, Message}. %% @doc Get the player token uniquely representing the player. %% @spec get_token() -> string() @@ -36,13 +54,13 @@ stop(_Player,_Table) -> %% Internals -loop(Socket) -> - % The socket is in 'active' mode, and that means we are pushed any data - % that arrives on it, we do not need to recv() manually. Since the socket - % was opened in our parent process, we need to change the owner of it to - % us, otherwise these messages end up in our parent. - erlang:port_connect(Socket, self()), - receive {tcp, Socket, Data} -> % Just echo for now.. - gen_tcp:send(Socket,Data), - loop(Socket) +loop(#pl_state{token = Token, socket = Socket, table = Table} = State) -> + receive + {tcp, Socket, Data} -> % Just echo for now.. + io:format("Notifying table..~n"), + ggs_table:notify_game(Table, Token, Data), + loop(State); + {notify, From, Message} -> + gen_tcp:send(Socket, Message), + loop(State) end. diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 1e4f323..53c27e9 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -5,12 +5,13 @@ %% gen_server callbacks -export([init/1, handle_call/3, handle_cast/2, handle_info/2, - terminate/2, code_change/3]). + terminate/2, code_change/3, notify_all_players/2, notify_game/3, + add_player/2]). -record(state, { token, players, socket, game_vm } ). %% API --export([start_link/2, +-export([start_link/0, add_player/2, remove_player/2, stop/1, @@ -22,9 +23,8 @@ % API implementation % @doc returns a new table -start_link(Token, Socket) -> - GameVM = ggs_gamevm:start_link(), - {ok, Pid} = gen_server:start_link(?MODULE, [Token, Socket, GameVM], []), +start_link() -> + {ok, Pid} = gen_server:start_link(?MODULE, [], []), Pid. %% @private @@ -47,22 +47,34 @@ stop(Table) -> notify(Table, Player, Message) -> gen_server:cast(Table, {notify, Player, Message}). +notify_all_players(Table, Message) -> + gen_server:cast(Table, {notify_all_players, Message}). + +notify_game(Table, From, Message) -> + io:format("Notify game called on"), + erlang:display(Table), + io:format("~n"), + gen_server:cast(Table, {notify_game, Message, From}). + %% ---------------------------------------------------------------------- %% @private -init([Token, Socket, GameVM]) -> - {ok, #state { token = Token, - socket = Socket, +init([]) -> + GameVM = ggs_gamevm_e:start_link(self()), + {ok, #state { game_vm = GameVM, players = [] }}. %% @private handle_call({add_player, Player}, _From, #state { players = Players } = State) -> {reply, ok, State#state { players = [Player | Players] }}; + handle_call({remove_player, Player}, _From, #state { players = Players } = State) -> {reply, ok, State#state { players = Players -- [Player] }}; + handle_call(get_player_list, _From, #state { players = Players } = State) -> {reply, {ok, Players}, State}; + handle_call(Msg, _From, State) -> error_logger:error_report([unknown_msg, Msg]), {reply, ok, State}. @@ -71,11 +83,25 @@ handle_call(Msg, _From, State) -> handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> case Message of {server, define, Args} -> - ggs_gamevm:define(GameVM, Args); + ggs_gamevm_e:define(GameVM, Args); {game, Command, Args} -> - ggs_gamevm:user_command(GameVM, Player, Command, Args) + ggs_gamevm_e:user_command(GameVM, Player, Command, Args) end, {noreply, State}; + +handle_cast({notify_game, Message, From}, #state { game_vm = GameVM } = State) -> + io:format("notify_game message received~n"), + ggs_gamevm_e:user_command(GameVM, From, Message, ""), + {noreply, State}; + +handle_cast({notify_all_players, Message}, #state{players = Players} = State) -> + io:format("Notifying all players... ~p~n", [Players]), + lists:foreach(fun(P) -> + io:format("Notifying ~p~n", [P]), + ggs_player:notify(P, "Server", Message) + end, Players), + {noreply, State}; + handle_cast(stop, State) -> {stop, normal, State}; handle_cast(Msg, S) -> @@ -100,39 +126,39 @@ code_change(_OldVsn, State, _Extra) -> % Tests -start_link_test() -> - Table = start_link("123", none), - ?assertNot(Table =:= undefined). +%start_link_test() -> +% Table = start_link("123", none), +% ?assertNot(Table =:= undefined). +% +%add_player_test() -> +% Table = start_link("123", none), +% Player = test_player, +% add_player(Table, Player), +% {ok, [Player]} = gen_server:call(Table, get_player_list). -add_player_test() -> - Table = start_link("123", none), - Player = test_player, - add_player(Table, Player), - {ok, [Player]} = gen_server:call(Table, get_player_list). - -remove_player_test() -> - Table = start_link("123", none), - Player = test_player, - Player2 = test_player2, - add_player(Table, Player), - {ok, [Player]} = gen_server:call(Table, get_player_list), - add_player(Table, Player2), - {ok, [Player2, Player]} = gen_server:call(Table, get_player_list), - remove_player(Table, Player), - {ok, [Player2]} = gen_server:call(Table, get_player_list), - remove_player(Table, Player2), - {ok, []} = gen_server:call(Table, get_player_list). - -stop_test() -> - Table = start_link("123", none), - ok = stop(Table). - -% @private -notify_test() -> - Table = start_link("123", none), - Player = test_player, - Message = {server, define, "function helloWorld(x) { }"}, - ok = notify(Table, Player, Message). +%remove_player_test() -> +% Table = start_link("123", none), +% Player = test_player, +% Player2 = test_player2, +% add_player(Table, Player), +% {ok, [Player]} = gen_server:call(Table, get_player_list), +% add_player(Table, Player2), +% {ok, [Player2, Player]} = gen_server:call(Table, get_player_list), +% remove_player(Table, Player), +% {ok, [Player2]} = gen_server:call(Table, get_player_list), +% remove_player(Table, Player2), +% {ok, []} = gen_server:call(Table, get_player_list). +% +%stop_test() -> +% Table = start_link("123", none), +% ok = stop(Table). +% +%% @private +%notify_test() -> +% Table = start_link("123", none), +% Player = test_player, +% Message = {server, define, "function helloWorld(x) { }"}, +% ok = notify(Table, Player, Message). %Message2 = {game, "helloWorld", "test"}, %ok = notify(Table, Player, Message2). - \ No newline at end of file + From 67567fe2636189c49a635661d9abf8502264d3e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Sun, 20 Feb 2011 01:41:40 +0100 Subject: [PATCH 055/192] Added some more ggsvm_e functionality and also a chat client --- .gitignore | 2 +- games/GGSCalc/calc.glade | 317 ++++++++++++++++++++++++++++++++++++ games/GGSCalc/calc.py | 101 ++++++++++++ games/GGSChat/calc.glade | 317 ++++++++++++++++++++++++++++++++++++ games/GGSChat/chat.py | 85 ++++++++++ games/GGSChat/ggschat.glade | 92 +++++++++++ mnesia/.gamedb.erl.swp | Bin 12288 -> 0 bytes python_client | 64 ++++---- src/.ggs_connection.erl.swp | Bin 12288 -> 0 bytes src/.ggs_server.erl.swo | Bin 12288 -> 0 bytes src/ggs_coordinator.erl | 8 +- src/ggs_gamevm_e.erl | 21 ++- src/ggs_player.erl | 23 ++- src/ggs_protocol.erl | 61 +++++++ src/ggs_table.erl | 12 +- 15 files changed, 1058 insertions(+), 45 deletions(-) create mode 100644 games/GGSCalc/calc.glade create mode 100644 games/GGSCalc/calc.py create mode 100644 games/GGSChat/calc.glade create mode 100644 games/GGSChat/chat.py create mode 100644 games/GGSChat/ggschat.glade delete mode 100644 mnesia/.gamedb.erl.swp delete mode 100644 src/.ggs_connection.erl.swp delete mode 100644 src/.ggs_server.erl.swo create mode 100644 src/ggs_protocol.erl diff --git a/.gitignore b/.gitignore index d176978..d6f2bf3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ -*.swp +*.sw* *.dump *.beam Mnesia.* diff --git a/games/GGSCalc/calc.glade b/games/GGSCalc/calc.glade new file mode 100644 index 0000000..720b7b4 --- /dev/null +++ b/games/GGSCalc/calc.glade @@ -0,0 +1,317 @@ + + + + + + + + True + + + True + True + + + + False + 0 + + + + + True + 5 + 4 + + + True + True + True + + + + + / + True + True + True + + + + 1 + 2 + + + + + * + True + True + True + + + + 2 + 3 + + + + + - + True + True + True + + + + 3 + 4 + + + + + 7 + True + True + True + + + + 1 + 2 + + + + + 8 + True + True + True + + + + 1 + 2 + 1 + 2 + + + + + 9 + True + True + True + + + + 2 + 3 + 1 + 2 + + + + + + + True + True + True + + + + 3 + 4 + 1 + 2 + + + + + 4 + True + True + True + + + + 2 + 3 + + + + + 5 + True + True + True + + + + 1 + 2 + 2 + 3 + + + + + 6 + True + True + True + + + + 2 + 3 + 2 + 3 + + + + + + True + True + True + + + + 3 + 4 + 2 + 3 + + + + + 1 + True + True + True + + + + 3 + 4 + + + + + 2 + True + True + True + + + + 1 + 2 + 3 + 4 + + + + + 3 + True + True + True + + + + 2 + 3 + 3 + 4 + + + + + = + True + True + True + + + + 3 + 4 + 3 + 4 + + + + + 0 + True + True + True + + + + 4 + 5 + + + + + True + True + True + + + 1 + 2 + 4 + 5 + + + + + True + True + True + + + 2 + 3 + 4 + 5 + + + + + + True + True + True + + + + 3 + 4 + 4 + 5 + + + + + 1 + + + + + True + 2 + + + False + 2 + + + + + + diff --git a/games/GGSCalc/calc.py b/games/GGSCalc/calc.py new file mode 100644 index 0000000..8468ceb --- /dev/null +++ b/games/GGSCalc/calc.py @@ -0,0 +1,101 @@ +#!/usr/bin/env python + +import sys, socket +try: + import pygtk + pygtk.require("2.16") +except: + pass +try: + import gtk + import gtk.glade +except: + sys.exit(1) + +class GGSCalc: + + def __init__(self): + #Set the Glade file + self.gladefile = "calc.glade" + self.wTree = gtk.glade.XML(self.gladefile, "window1") + + #Create our dictionay and connect it + dic = {"on_mainWindow_destroy" : gtk.main_quit + , "on_btn0_clicked" : lambda x: self.OnBtnClick(0) + , "on_btn1_clicked" : lambda x: self.OnBtnClick(1) + , "on_btn2_clicked" : lambda x: self.OnBtnClick(2) + , "on_btn3_clicked" : lambda x: self.OnBtnClick(3) + , "on_btn4_clicked" : lambda x: self.OnBtnClick(4) + , "on_btn5_clicked" : lambda x: self.OnBtnClick(5) + , "on_btn6_clicked" : lambda x: self.OnBtnClick(6) + , "on_btn7_clicked" : lambda x: self.OnBtnClick(7) + , "on_btn8_clicked" : lambda x: self.OnBtnClick(8) + , "on_btn9_clicked" : lambda x: self.OnBtnClick(9) + , "on_btnDiv_clicked" : lambda x: self.OnBtnClick("/") + , "on_btnMul_clicked" : lambda x: self.OnBtnClick("*") + , "on_btnMin_clicked" : lambda x: self.OnBtnClick("-") + , "on_btnPlus_clicked" : lambda x: self.OnBtnClick("+") + , "on_btnEq_clicked" : lambda x: self.calc() + , "on_btnDel_clicked" : lambda x: self.OnBtnClick("Del") + , "on_btnConnect_clicked" : lambda x: self.connect() + } + + for i in range(0,9): + dic + self.wTree.signal_autoconnect(dic) + + self.wTree.get_widget("window1").show() + self.setStatus("Not connected") + + def setStatus(self, msg): + self.wTree.get_widget("statusbar").push(0, msg) + + def calc(self): + exp = self.wTree.get_widget("txtCalc").get_text() + self.s.send("Server-Command: call\n"+ + "Token: %s\n" % self.token + + "Content-Type: text\n"+ + "Content-Length: %s\n" % len(exp)+ + "\n"+ + exp) + fs = self.s.makefile() + self.wTree.get_widget("txtCalc").set_text(fs.readline().split(" ")[1]) + + + def connect(self): + print "Connecting" + self.setStatus("Connecting") + HOST = 'localhost' # The remote host + PORT = 9000 # The same port as used by the server + self.s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + self.s.connect((HOST, PORT)) + self.s.send("Server-Command: hello\n"+ + "Content-Type: text\n"+ + "Content-Length: 0\n"+ + "\n") + fs = self.s.makefile() + self.token = fs.readline().split(" ")[0] + self.setStatus("Connected!") + + def OnBtnClick(self, btn): + calcTxt = self.wTree.get_widget("txtCalc") + t = calcTxt.get_text() + if btn == "+": + t += "+" + elif btn == "-": + t += "-" + elif btn == "/": + t += "/" + elif btn == "=": + t += "=" + elif btn == "*": + t += "*" + elif btn == "Del": + t = t[:-1] + else: + t += str("\""+str(btn)+"\"") + calcTxt.set_text(t) + +if __name__ == "__main__": + calc = GGSCalc() + gtk.main() diff --git a/games/GGSChat/calc.glade b/games/GGSChat/calc.glade new file mode 100644 index 0000000..720b7b4 --- /dev/null +++ b/games/GGSChat/calc.glade @@ -0,0 +1,317 @@ + + + + + + + + True + + + True + True + + + + False + 0 + + + + + True + 5 + 4 + + + True + True + True + + + + + / + True + True + True + + + + 1 + 2 + + + + + * + True + True + True + + + + 2 + 3 + + + + + - + True + True + True + + + + 3 + 4 + + + + + 7 + True + True + True + + + + 1 + 2 + + + + + 8 + True + True + True + + + + 1 + 2 + 1 + 2 + + + + + 9 + True + True + True + + + + 2 + 3 + 1 + 2 + + + + + + + True + True + True + + + + 3 + 4 + 1 + 2 + + + + + 4 + True + True + True + + + + 2 + 3 + + + + + 5 + True + True + True + + + + 1 + 2 + 2 + 3 + + + + + 6 + True + True + True + + + + 2 + 3 + 2 + 3 + + + + + + True + True + True + + + + 3 + 4 + 2 + 3 + + + + + 1 + True + True + True + + + + 3 + 4 + + + + + 2 + True + True + True + + + + 1 + 2 + 3 + 4 + + + + + 3 + True + True + True + + + + 2 + 3 + 3 + 4 + + + + + = + True + True + True + + + + 3 + 4 + 3 + 4 + + + + + 0 + True + True + True + + + + 4 + 5 + + + + + True + True + True + + + 1 + 2 + 4 + 5 + + + + + True + True + True + + + 2 + 3 + 4 + 5 + + + + + + True + True + True + + + + 3 + 4 + 4 + 5 + + + + + 1 + + + + + True + 2 + + + False + 2 + + + + + + diff --git a/games/GGSChat/chat.py b/games/GGSChat/chat.py new file mode 100644 index 0000000..c10ca8f --- /dev/null +++ b/games/GGSChat/chat.py @@ -0,0 +1,85 @@ +#!/usr/bin/env python + +import sys, socket, thread, gobject, getpass +try: + import pygtk + pygtk.require("2.16") +except: + pass +try: + import gtk + import gtk.glade +except: + sys.exit(1) + +class GGSChat: + + def __init__(self,host, port): + #Set the Glade file + self.gladefile = "ggschat.glade" + self.wTree = gtk.glade.XML(self.gladefile, "window1") + + self.setStatus("Not connected") + self.connect(host, port) + thread.start_new_thread(self.listenChat, ()) + #Create our dictionay and connect it + dic = {"on_window1_destroy_event" : gtk.main_quit + , "on_sendButton_clicked" : lambda x: self.chat() + , "on_entry_activate" : lambda x : self.chat() + , "on_chatBox_focus" : lambda x, y: self.wTree.get_widget("entry").grab_focus() + } + + for i in range(0,9): + dic + self.wTree.signal_autoconnect(dic) + + self.wTree.get_widget("nickBox").set_text(getpass.getuser()) + self.wTree.get_widget("window1").show() + self.wTree.get_widget("entry").grab_focus() + + def setStatus(self, msg): + self.wTree.get_widget("statusbar").push(0, msg) + + def chat(self): + exp = self.wTree.get_widget("entry").get_text() + nick = self.wTree.get_widget("nickBox").get_text() + exp = "<%s> %s" % (nick, exp) + self.s.send("Game-Command: chat\n"+ + "Token: %s\n" % self.token + + "Content-Type: text\n"+ + "Content-Length: %s\n" % (len(exp))+ + "\n"+ + exp+"\n") + self.wTree.get_widget("entry").set_text("") + #self.listenChat() + + + def connect(self, host,port): + print "Connecting" + self.setStatus("Connecting") + HOST = host # The remote host + PORT = port # The same port as used by the server + self.s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + self.s.connect((HOST, PORT)) + self.token = self.s.recv(1024) + self.setStatus("Connected!") + + def listenChat(self): + print "listening" + fs = self.s.makefile() + while True: + line = fs.readline() + print "Received: ", line + gobject.idle_add(self.updateChatText, line) + + def updateChatText(self, text): + self.wTree.get_widget("chatBox").get_buffer().insert_at_cursor(text) +if __name__ == "__main__": + host = "localhost" + port = 9000 + if len(sys.argv) >= 2: + host = sys.argv[1] + port = int(sys.argv[2]) + chat = GGSChat(host, port) + gobject.threads_init() + gtk.main() diff --git a/games/GGSChat/ggschat.glade b/games/GGSChat/ggschat.glade new file mode 100644 index 0000000..ac4e9cb --- /dev/null +++ b/games/GGSChat/ggschat.glade @@ -0,0 +1,92 @@ + + + + + + 500 + 500 + + + + True + + + True + + + True + True + False + + + + 0 + + + + + 0 + + + + + True + + + True + True + + 10 + Anonymous + + + False + 0 + + + + + True + True + + + + + 1 + + + + + Chat! + True + True + True + + + + False + False + 2 + + + + + False + False + 1 + + + + + True + 2 + + + False + 2 + + + + + + diff --git a/mnesia/.gamedb.erl.swp b/mnesia/.gamedb.erl.swp deleted file mode 100644 index 469b1f85b2ecf7663f6f99f957c41243aa53c9d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12288 zcmeI2zfTlF6vqcEQBk9XjV9wE^c~uUwxG9A3wj3SpnmAjS;oFXpP_fq7W5WsLG#cJs2}=` z*tenA&^%Ow94N`@1lEK?CIUo&2oM1xKm>@u|3rXec*zmXaifJFiH1>upT8UXg)*~~ z>5#r#WV<)}R~3ve1=%yL;PBeT2;Jn`8LfGIzc+H@1JWO|Mq+22omqCbw2|9xebwV&MdL9H&}jaz%JyTka;4q><#@S!BC3>)Gzy4_c#PjEwfs92d$g zeDw@9$s((11KAk4Xhgj&_xgNpO&Ft9Jx0hyu4N<8?xOOSg8Y(_Z5Pkd9xtpfAbI60 zlk|Vj0invbZ5$|a&pud5`Hgn$%6u+6_TAF$9KtKfl`zmIKWF2tIK{3yRjS4AN?}1q zeKFlpwTffYEh!vShrbk{ec%Od40`En@qpXv@LICLF(fp^C$W{KAKaj^+l+SvsEbH) z>}FiYzERkptP}oRXk`n+an@anrYxtnjUZgrs@XD}k2uvTuc1mxM0`dXBXtxd^zbqf jn-*N!@$V9T6Fa9h3+=0-$)+b%yW9vo`z7sdlVX1X$Qr-k diff --git a/python_client b/python_client index e265120..10feefd 100755 --- a/python_client +++ b/python_client @@ -7,50 +7,56 @@ PORT = int(sys.argv[1]) # The same port as used by the server s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((HOST, PORT)) -# Say hello +# Define ourselves a function! +token = s.recv(1024) -print "Saying hello to server" +#print "Defining a function called myFun" +#s.send( +#"Token: %s\n\ +#Server-Command: define\n\ +#Content-Type: text\n\ +#Content-Length: 49\n\ +#\n\ +#function myFun() {return 'Hello World!' ;}" % token) +#fs = s.makefile() +#data = fs.readline() +#print "Token:", token +#print "Data: ", ' '.join(data.split(" ")[1:]) + +# Call that function! +fs = s.makefile() +print "Token: ", token s.send( -"Server-Command: hello\n\ +"Token: %s\n\ +Game-Command: greet\n\ Content-Type: text\n\ Content-Length: 0\n\ \n\ -") -fs = s.makefile() -data = fs.readline() -token = data.split(" ")[0] -print "Token:", token -print "Data: ", ' '.join(data.split(" ")[1:]) +" % token) +time.sleep(1) -# Define ourselves a function! - -print "Defining a function called myFun" s.send( "Token: %s\n\ -Server-Command: define\n\ +Game-Command: uname\n\ Content-Type: text\n\ -Content-Length: 49\n\ +Content-Length: 0\n\ \n\ -function myFun() {return 'Hello World!' ;}" % token) -fs = s.makefile() -data = fs.readline() -print "Token:", token -print "Data: ", ' '.join(data.split(" ")[1:]) +" % token) +time.sleep(1) -# Call that function! - -print "Calling myFun" s.send( "Token: %s\n\ -Server-Command: call\n\ +Game-Command: chat\n\ Content-Type: text\n\ -Content-Length: 6\n\ +Content-Length: 23\n\ \n\ -myFun" % token) -fs = s.makefile() -data = fs.readline() -print "Token:", token -print "Data: ", ' '.join(data.split(" ")[1:]) +Hello guys, what's up?\n" % token) +time.sleep(1) + + +while True: + data = fs.readline() + print "Data: ", data s.close() diff --git a/src/.ggs_connection.erl.swp b/src/.ggs_connection.erl.swp deleted file mode 100644 index 0c009f8287377d2e3763a3fb7610231c3237d3fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12288 zcmeI2O>Z1E7{^^+M0qKoqMo?8TdkN?XJ3-EAceGwl!%h3+pLndm(^7W&e$W5 zH=){YkdU|{!I^9M0Eiwz;sQv$@CmqagL`?A;O}|aYywf~wg)QN%3m`c+m9drp2wC} z@pkLxTARMpSRg2`6LRL$wf0X-7s$022}!jSJV-*tG&jx1l^q@@QXbcO@O^*UU^7v2 zpjaG-V$kF&Vt8D+veitL-y955&zC}QUx!jO(0X9RzF7j6z#|igm=49FN1 zorLbcO2}R4b0~m(Xd7xnSD`;o5%LH0JMre&y z^<_eSfqsPUL0>^0^cM8jON4v_-GN5XD)c7wJoFs&EOa0D7QTi)hWbziItx9(`pg>d znswS@30MM_fF)oFSOWih0yHZFE521sA2M4uN3~j?rI2cs zUSH|Z6&6J)MQs)%b%ft6aU`VTNp#y_!hO$iBmXLIxzsbX$Mn(!1M_{JXy>Z=UUSI~ z6G6niQ1qpv!-Ta5CfkPGeY#$L=44BCi-HeSx3 zr`>COFEh~_kKfH)4CP{9s+eh~f^HN87EKbA{Y)i~N^ZoRwDjOQ7G4@JT+2OZ9P%LV zS6YNWf%Mk54E9MPZnC{qrddI+=F;l*jn$1qXhz6hv=^CM3>cRqkZZ;nT1^;k#d6J6 zN_}Z=$I`x%amGI7YL}}bUbsvPbBJ2ZqJy9nvG7@{oxI0U;6;>2CbC)Ezpc1*3u!R1 zh}90b#>L#BKzzOT;MJ7#Gp8St`28$_R64T_V#sAHDiSD>N+V7kJY0G>2VL4KlG_Y= zSQ#lkOgRez)c+ z8=X?jj*O5x|G;o^y2h_24#=rcH|M9Ssh+BuZEmXO1Z^%9&kH@AsiYpuU>I@7+}}3) zo@?_JF3xl^nQ?R(v*a&<^vhu7dx++>|;O?y@+$5Y|N|GrN0mvvzuVYG#`0>1wNM zU}2o~fQcOR;J={Zju(~aNfTmXVvHeC4|?;UCW?f_tKaJG`2{LumV+eK$%mfmu6p(A z`(C~74PDNz9zQ{!OHUIVdkNWgb@s%Su?yshR|q-9eaY1I+Z?a5K=Rx4QMWfEgPD02 zHY5)+d0t_eW5-IFP&k=dEwn-=PBW2a!n*@wx{FpoD{$uuv}85){2p>}dMc|19T?wF zAA5A=&d2MXS^=$qRzNGD70?Q31+)TM0jsbJEl&t$KgIFiH1lr&ncn##iOW<*E;{ighfD7PlPykPXePA!RzLSt&!7t!* z@FBPaHb5CX4JN_E;5WqJYw!V3@i-4w!9MWU{r6yUX_vJE|1$+>|2QIQVVbCRn>S3V znjJc$+W&F~A0}CWEkc%y{UHeSjyX;*YhnhOjEOjOiZLk zIWUeM$9H7Hw>?^I`HpnCAC7E|C>0~2OVXCClO_&6BeR^k?bn!Lo%AZJp>NXYrb(@Z z4Jqu&$bU7EH_}8!&Gj+Xu!_tMIeJ@B_kOpw&jky-vxyx{q6SB^S}JHNO}de^9S5Jk z8B6Lq6oelYk6Er?<%V>djJFV-1EKP@?S<%rp;2FDqN#N-WKt88IFWW zvx6b-g{K>0&kZH>lbyEKwvoc8nMtK+v5wj`uJ1}?O<7)#71_d8QFF%MK~e|%uxvYx zEpC>+#atAJ!=;7d>O#?^Dj+B?>SRQIZ^7+3)HAiy=fZ$FYP0mLV$Vf4Dm=Q5oaaGE zWu4LFbI+}nf}zzRCwi;vB?p$+`+e8eN#pG|LtT`%8WYB(TI88J6KqI^;hEzS5)JJP ziE@-lr_N$o{8qEf1m#tlY}=4F?FyrkLp3){WZRl*s7FHLq2o7$TZNOw z8fW>~8cVDr#Kxq)_{l4ix#!G>TdGsi+zQkJQXT6~PqSP)-?Zs?=qs z%G{3VS9SKdq8p-ON;%doJ}8 z5{{{vRV+xV% ggs_logger:not_implemented(). %% @doc Removes a player from coordinator. -remove_player(_From, _Player) -> +remove_player(_From, Player) -> + %gen_server:cast(ggs_coordinator, {remove_player, Player}). ggs_logger:not_implemented(). %% gen_server callbacks @@ -87,6 +88,11 @@ handle_call(_Message, _From, State) -> handle_cast({stop, Reason}, State) -> {stop, normal, state}; +%% @TODO: Implement me +%handle_cast({remove_player, Player}) -> +% {noreply, State#co_state{ + + handle_cast(_Message, State) -> {noreply, State}. diff --git a/src/ggs_gamevm_e.erl b/src/ggs_gamevm_e.erl index 76b9350..4575ef1 100644 --- a/src/ggs_gamevm_e.erl +++ b/src/ggs_gamevm_e.erl @@ -33,9 +33,24 @@ user_command(GameVM, Player, Command, Args) -> loop(Table) -> receive {define, SourceCode} -> + io:format("GameVM_e can't define functions, sorry!~n"), loop(Table); - {user_command, _User, Command, _Args, _From, _Ref} -> - io:format("GameVM received a message~n"), - ggs_table:notify_all_players(Table, Command), + {user_command, Player, Command, Args, From, _Ref} -> + erlang:display(Player), + do_stuff(Command, Args, Player, Table), loop(Table) end. + +do_stuff(Command, Args, Player, Table) -> + case Command of + "greet" -> + ggs_player:notify(Player, server, "Hello there!\n"); + "chat" -> + ggs_table:notify_all_players(Table, Args ++ "\n"); + "uname" -> + Uname = os:cmd("uname -a"), + ggs_player:notify(Player, server, Uname); + + Other -> + ggs_player:notify(Player, server, "I don't know that command..\n") + end. diff --git a/src/ggs_player.erl b/src/ggs_player.erl index af92ad9..bd3b198 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -26,10 +26,12 @@ start_link(Socket) -> TableStatus = ggs_coordinator:join_table(1337), case TableStatus of {ok, Table} -> + notify(self(), self(), Token), loop(#pl_state{socket = Socket, token = Token, table = Table}); {error, no_such_table} -> ggs_coordinator:create_table({force, 1337}), {ok, Table} = ggs_coordinator:join_table(1337), + notify(self(), self(), Token), loop(#pl_state{socket = Socket, token = Token, table = Table}) end. @@ -57,10 +59,25 @@ stop(_Player,_Table) -> loop(#pl_state{token = Token, socket = Socket, table = Table} = State) -> receive {tcp, Socket, Data} -> % Just echo for now.. - io:format("Notifying table..~n"), - ggs_table:notify_game(Table, Token, Data), + io:format("Parsing via protocol module..~n"), + Parsed = ggs_protocol:parse(Data), + self() ! Parsed, loop(State); {notify, From, Message} -> gen_tcp:send(Socket, Message), - loop(State) + loop(State); + % Below are messages generated by the parser + {game_cmd,Cmd, Headers, Data} -> + ggs_table:notify(Table, self(), {game, Cmd, Data}), + loop(State); + {srv_cmd,"define", Headers, Data} -> + ggs_table:notify(Table, self(), {server, define, Data}), + loop(State); + {tcp_closed, _Socket} -> + io:format("Client disconnected, but THIS IS NOT SUPPORTED YET!~n"), + loop(State); + Other -> + io:format("Got UNKNOWN message: "), + erlang:display(Other), + io:format("~n") end. diff --git a/src/ggs_protocol.erl b/src/ggs_protocol.erl new file mode 100644 index 0000000..3dc88f9 --- /dev/null +++ b/src/ggs_protocol.erl @@ -0,0 +1,61 @@ +-module(ggs_protocol). +-export([parse/1, getToken/1]). + +%% API Functions +parse(Data) -> + Parsed = do_parse(Data, []), + prettify(Parsed). + +getToken(Parsed) -> + case lists:keyfind(token, 1, Parsed) of + {_, Value} -> + Value; + false -> + false + end. + +%% Internal helpers +do_parse(Data, ParsedMessage) -> + NewLinePos = string:chr(Data, $\n), + Line = string:substr(Data, 1, NewLinePos-1), + Tokens = re:split(Line, ": ", [{return, list}]), + case handle(Tokens) of + {Command, more} -> + do_parse(string:substr(Data, NewLinePos+1), ParsedMessage ++ [Command]); + {separator, data_next} -> + {_, Value} = lists:keyfind(content_len, 1, ParsedMessage), + {ContentLength, []} = string:to_integer(Value), + {data, ArgumentData} = handle_data(string:substr(Data, NewLinePos+1), ContentLength), + {ParsedMessage, ArgumentData} + end. + +handle([[]]) -> + {separator, data_next}; +handle(["Server-Command", Param]) -> + {{srv_cmd, Param}, more}; +handle(["Game-Command", Param]) -> + {{game_cmd, Param}, more}; +handle(["Content-Length", Param]) -> + {{content_len, Param}, more}; +handle(["Token", Param]) -> + {{token, Param}, more}; +handle(["Content-Type", Param]) -> + {{content_type, Param}, more}. + +handle_data(Data, Length) -> + {data, string:substr(Data,1,Length)}. + + +prettify({Args, Data}) -> + case lists:keyfind(srv_cmd, 1, Args) of + {_, Value} -> + {srv_cmd, Value, Args, Data}; + _Other -> + case lists:keyfind(game_cmd, 1, Args) of + {_, Value} -> + {game_cmd, Value, Args, Data}; + _ -> + ok + end + end. + diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 53c27e9..118ae0d 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -51,7 +51,6 @@ notify_all_players(Table, Message) -> gen_server:cast(Table, {notify_all_players, Message}). notify_game(Table, From, Message) -> - io:format("Notify game called on"), erlang:display(Table), io:format("~n"), gen_server:cast(Table, {notify_game, Message, From}). @@ -82,22 +81,19 @@ handle_call(Msg, _From, State) -> %% @private handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> case Message of - {server, define, Args} -> - ggs_gamevm_e:define(GameVM, Args); - {game, Command, Args} -> - ggs_gamevm_e:user_command(GameVM, Player, Command, Args) + {server, define, Args} -> + ggs_gamevm_e:define(GameVM, Args); + {game, Command, Args} -> + ggs_gamevm_e:user_command(GameVM, Player, Command, Args) end, {noreply, State}; handle_cast({notify_game, Message, From}, #state { game_vm = GameVM } = State) -> - io:format("notify_game message received~n"), ggs_gamevm_e:user_command(GameVM, From, Message, ""), {noreply, State}; handle_cast({notify_all_players, Message}, #state{players = Players} = State) -> - io:format("Notifying all players... ~p~n", [Players]), lists:foreach(fun(P) -> - io:format("Notifying ~p~n", [P]), ggs_player:notify(P, "Server", Message) end, Players), {noreply, State}; From 507081c234f70d0c734059e2dea7c3d1a31c52e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Sun, 20 Feb 2011 01:58:48 +0100 Subject: [PATCH 056/192] Now we have a /lusers command in chat ;) --- games/GGSChat/chat.py | 13 +++++++++---- src/ggs_gamevm_e.erl | 4 +++- src/ggs_table.erl | 6 +++++- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/games/GGSChat/chat.py b/games/GGSChat/chat.py index c10ca8f..9c94728 100644 --- a/games/GGSChat/chat.py +++ b/games/GGSChat/chat.py @@ -29,8 +29,6 @@ class GGSChat: , "on_chatBox_focus" : lambda x, y: self.wTree.get_widget("entry").grab_focus() } - for i in range(0,9): - dic self.wTree.signal_autoconnect(dic) self.wTree.get_widget("nickBox").set_text(getpass.getuser()) @@ -43,8 +41,15 @@ class GGSChat: def chat(self): exp = self.wTree.get_widget("entry").get_text() nick = self.wTree.get_widget("nickBox").get_text() - exp = "<%s> %s" % (nick, exp) - self.s.send("Game-Command: chat\n"+ + if exp[0] == "/": + self.s.send("Game-Command: %s\n" % exp[1:] + + "Token: %s\n" % self.token + + "Content-Type: text\n" + + "Content-Length: 0\n"+ + "\n") + else: + exp = "<%s> %s" % (nick, exp) + self.s.send("Game-Command: chat\n"+ "Token: %s\n" % self.token + "Content-Type: text\n"+ "Content-Length: %s\n" % (len(exp))+ diff --git a/src/ggs_gamevm_e.erl b/src/ggs_gamevm_e.erl index 4575ef1..ad2527b 100644 --- a/src/ggs_gamevm_e.erl +++ b/src/ggs_gamevm_e.erl @@ -50,7 +50,9 @@ do_stuff(Command, Args, Player, Table) -> "uname" -> Uname = os:cmd("uname -a"), ggs_player:notify(Player, server, Uname); - + "lusers" -> + {ok, Players} = ggs_table:get_player_list(Table), + ggs_player:notify(Player, server,io_lib:format("~p\n",[Players])); Other -> ggs_player:notify(Player, server, "I don't know that command..\n") end. diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 118ae0d..93b79fd 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -6,7 +6,7 @@ %% gen_server callbacks -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3, notify_all_players/2, notify_game/3, - add_player/2]). + add_player/2, get_player_list/1]). -record(state, { token, players, socket, game_vm } ). @@ -39,6 +39,10 @@ add_player(Table, Player) -> remove_player(Table, Player) -> call(Table, {remove_player, Player}). +%% @doc Get a list of all player processes attached to this table +get_player_list(Table) -> + gen_server:call(Table, get_player_list). + % @doc stops the table process stop(Table) -> gen_server:cast(Table, stop). From 7412087d4a93663a6194197e6d5ec21bf1b9642a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 21 Feb 2011 15:11:28 +0100 Subject: [PATCH 057/192] worked more on chat --- games/GGSChat/chat.py | 8 ++++++-- src/ggs_coordinator.erl | 8 ++++---- src/ggs_dispatcher.erl | 2 +- src/ggs_gamevm.erl | 5 +++-- src/ggs_gamevm_e.erl | 10 ++++++---- src/ggs_player.erl | 8 ++++---- src/ggs_table.erl | 2 +- 7 files changed, 25 insertions(+), 18 deletions(-) diff --git a/games/GGSChat/chat.py b/games/GGSChat/chat.py index 9c94728..17c30ea 100644 --- a/games/GGSChat/chat.py +++ b/games/GGSChat/chat.py @@ -42,11 +42,15 @@ class GGSChat: exp = self.wTree.get_widget("entry").get_text() nick = self.wTree.get_widget("nickBox").get_text() if exp[0] == "/": + cmdStr = exp[1:].split(" ") + cmd = cmdStr[0] + params = ' '.join(cmdStr[1:]) self.s.send("Game-Command: %s\n" % exp[1:] + "Token: %s\n" % self.token + "Content-Type: text\n" + - "Content-Length: 0\n"+ - "\n") + "Content-Length: %s\n" % len(params)+ + "\n"+ + params) else: exp = "<%s> %s" % (nick, exp) self.s.send("Game-Command: chat\n"+ diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index a7f0ab8..f1e7caa 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -49,7 +49,7 @@ respawn_table(_Token) -> ggs_logger:not_implemented(). %% @doc Removes a player from coordinator. -remove_player(_From, Player) -> +remove_player(_From, _Player) -> %gen_server:cast(ggs_coordinator, {remove_player, Player}). ggs_logger:not_implemented(). @@ -66,7 +66,7 @@ handle_call({join_table, Table}, From, State) -> {FromPlayer, _Ref} = From, Tables = State#co_state.tables, case lists:keyfind(Table, 1, Tables) of - {TableID, TablePID} -> + {_TableID, TablePID} -> ggs_table:add_player(TablePID, FromPlayer), {reply, {ok, TablePID}, State}; false -> @@ -85,8 +85,8 @@ handle_call({create_table, {force, TableID}}, From, State) -> handle_call(_Message, _From, State) -> {noreply, State}. -handle_cast({stop, Reason}, State) -> - {stop, normal, state}; +handle_cast({stop, _Reason}, State) -> + {stop, normal, State}; %% @TODO: Implement me %handle_cast({remove_player, Player}) -> diff --git a/src/ggs_dispatcher.erl b/src/ggs_dispatcher.erl index 49dcf4b..11dd729 100644 --- a/src/ggs_dispatcher.erl +++ b/src/ggs_dispatcher.erl @@ -45,7 +45,7 @@ handle_call(_Message, _From, State) -> handle_cast(_Message, State) -> {noreply, State}. -handle_info({tcp, _Socket, RawData}, State) -> +handle_info({tcp, _Socket, _RawData}, State) -> io:format("Got connect request!~n"), {noreply, State}; diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 1a8f547..a16e6a6 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -6,7 +6,6 @@ %% @doc Create a new VM process. The process ID is returned and can be used %% with for example the define method of this module. start_link() -> - erlang_js:start(), %% @TODO: should only be done once PortPid = spawn_link( fun() -> process_flag(trap_exit, true), {ok, Port} = js_driver:new(), @@ -46,5 +45,7 @@ loop(Port) -> list_to_binary(Args) ]), From ! {Ref, Ret}, - loop(Port) + loop(Port); + {eval, JS} -> + end. diff --git a/src/ggs_gamevm_e.erl b/src/ggs_gamevm_e.erl index ad2527b..3cc6b17 100644 --- a/src/ggs_gamevm_e.erl +++ b/src/ggs_gamevm_e.erl @@ -32,11 +32,11 @@ user_command(GameVM, Player, Command, Args) -> loop(Table) -> receive - {define, SourceCode} -> + {define, _SourceCode} -> io:format("GameVM_e can't define functions, sorry!~n"), loop(Table); - {user_command, Player, Command, Args, From, _Ref} -> - erlang:display(Player), + {user_command, Player, Command, Args, _From, _Ref} -> + erlang:display(Command), do_stuff(Command, Args, Player, Table), loop(Table) end. @@ -53,6 +53,8 @@ do_stuff(Command, Args, Player, Table) -> "lusers" -> {ok, Players} = ggs_table:get_player_list(Table), ggs_player:notify(Player, server,io_lib:format("~p\n",[Players])); - Other -> + "nick" -> + io:format("Changing nickname of ~p to ~p.", [Player, Args]); + _Other -> ggs_player:notify(Player, server, "I don't know that command..\n") end. diff --git a/src/ggs_player.erl b/src/ggs_player.erl index bd3b198..0211f3f 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -56,21 +56,21 @@ stop(_Player,_Table) -> %% Internals -loop(#pl_state{token = Token, socket = Socket, table = Table} = State) -> +loop(#pl_state{token = _Token, socket = Socket, table = Table} = State) -> receive {tcp, Socket, Data} -> % Just echo for now.. io:format("Parsing via protocol module..~n"), Parsed = ggs_protocol:parse(Data), self() ! Parsed, loop(State); - {notify, From, Message} -> + {notify, _From, Message} -> gen_tcp:send(Socket, Message), loop(State); % Below are messages generated by the parser - {game_cmd,Cmd, Headers, Data} -> + {game_cmd,Cmd, _Headers, Data} -> ggs_table:notify(Table, self(), {game, Cmd, Data}), loop(State); - {srv_cmd,"define", Headers, Data} -> + {srv_cmd,"define", _Headers, Data} -> ggs_table:notify(Table, self(), {server, define, Data}), loop(State); {tcp_closed, _Socket} -> diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 93b79fd..cf77f30 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -6,7 +6,7 @@ %% gen_server callbacks -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3, notify_all_players/2, notify_game/3, - add_player/2, get_player_list/1]). + get_player_list/1]). -record(state, { token, players, socket, game_vm } ). From b3d8c5ba991192f1cd50fe57abb93466bc8d18bc Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 21 Feb 2011 15:43:39 +0100 Subject: [PATCH 058/192] added more test --- src/ggs_gamevm.erl | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 6493c9f..acfe2fb 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -120,3 +120,9 @@ user_command_test() -> user_command(GameVM, "'jeena", "thecommand", "theargs'"), ?assertMatch(<<"'jeenathecommandtheargs'">>, gen_server:call(GameVM, {eval, "t;"})). +user_command2_test() -> + GameVM = start_link(test_table), + define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = callErlang('erlang time') + ''; }\n"), + user_command(GameVM, "jeena", "test", ""), + io:format("test ~p~n", [binary_to_list(gen_server:call(GameVM, {eval, "t;"}))]), + ?assertMatch(<<"rt">>, gen_server:call(GameVM, {eval, "t;"})). From ee4059ac5a1d308f1020ff8385de9579b93a4a2a Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Mon, 21 Feb 2011 20:43:00 +0100 Subject: [PATCH 059/192] getItem, setItem complete. Added scripts. --- mnesia/build_db | 4 ++++ mnesia/build_test_db | 4 ++++ mnesia/ggs_db.erl | 47 ++++++++++++++++++++++++++++++++++++++++++ mnesia/ggs_db.hrl | 6 ++++++ mnesia/ggs_db_test.erl | 31 ++++++++++++++++++++++++++++ mnesia/test_db | 3 +++ 6 files changed, 95 insertions(+) create mode 100755 mnesia/build_db create mode 100755 mnesia/build_test_db create mode 100644 mnesia/ggs_db.erl create mode 100644 mnesia/ggs_db.hrl create mode 100644 mnesia/ggs_db_test.erl create mode 100755 mnesia/test_db diff --git a/mnesia/build_db b/mnesia/build_db new file mode 100755 index 0000000..0aa2042 --- /dev/null +++ b/mnesia/build_db @@ -0,0 +1,4 @@ +#!/usr/bin/env bash + + erlc -o . ggs_db.erl + erlc -o . ggs_db_test.erl diff --git a/mnesia/build_test_db b/mnesia/build_test_db new file mode 100755 index 0000000..f5aa938 --- /dev/null +++ b/mnesia/build_test_db @@ -0,0 +1,4 @@ +#!/usr/bin/env bash + +./build_db +./test_db diff --git a/mnesia/ggs_db.erl b/mnesia/ggs_db.erl new file mode 100644 index 0000000..5067e16 --- /dev/null +++ b/mnesia/ggs_db.erl @@ -0,0 +1,47 @@ +%%%%---------------------------------------------------- +%%% @author Mattias Pettersson +%%% @copyright 2011 Mattias Pettersson +%%% @doc Database for runtime game variable storage. +%%% @end + +-module(ggs_db). +-import(mnesia). +-export([init/0,setItem/4,getItem/3]). +-include("ggs_db.hrl"). + +%%----------------------------------------------------- +%% Creation +%%----------------------------------------------------- +init() -> + mnesia:create_table(data, [{attributes, record_info(fields, data)}]). + +%%----------------------------------------------------- +%% Test +%%----------------------------------------------------- + +%test_data() -> +% set(0, "Hello"), +% get(0). + +%%----------------------------------------------------- +%% Insertions +%%----------------------------------------------------- +setItem(Db,Ns,Key,Value) -> + Fun = fun() -> + Data = #data{key = {Db,Ns,Key}, value = Value}, + mnesia:write(Data) + end, + mnesia:transaction(Fun). + + + +%%----------------------------------------------------- +%% Querries +%%----------------------------------------------------- +getItem(Db,Ns,Key) -> + Fun = fun() -> + [Data] = mnesia:read(data, {Db,Ns,Key}), + Data#data.value + end, + mnesia:transaction(Fun). + diff --git a/mnesia/ggs_db.hrl b/mnesia/ggs_db.hrl new file mode 100644 index 0000000..bc13c3a --- /dev/null +++ b/mnesia/ggs_db.hrl @@ -0,0 +1,6 @@ +%% gamedb.hrl + +-record(player, {id, name}). +-record(data, {key, value}). + + diff --git a/mnesia/ggs_db_test.erl b/mnesia/ggs_db_test.erl new file mode 100644 index 0000000..4baaaed --- /dev/null +++ b/mnesia/ggs_db_test.erl @@ -0,0 +1,31 @@ +-module(ggs_db_test). +%-compile({no_auto_import,[get/1,set/2]}). +-include_lib("eunit/include/eunit.hrl"). + +%ggs_db_test_() -> +% {spawn, +% {setup, fun setup/0, fun cleanup/1,[ fun ggs_db_test/0 ]} +% }. + + +%Key should be a tuple of two elements +setup_test() -> + mnesia:start(), + ggs_db:init(), + ggs_db:setItem("dbname","nsname","keyname","Hello"), + ?assertMatch({atomic,"Hello"},ggs_db:getItem("dbname","nsname","keyname")), + mnesia:stop(). + +%cleanup(Val) -> +% mnesia:stop(). + + + +%tests() -> +% ggs_db_test(). + +%ggs_db_test() -> +% ggs_db:set(0, "Hello"), + %io:format("~s",[Val]), +% ?assertMatch({atomic,"Hello"},ggs_db:get(0)). + diff --git a/mnesia/test_db b/mnesia/test_db new file mode 100755 index 0000000..958b005 --- /dev/null +++ b/mnesia/test_db @@ -0,0 +1,3 @@ +#!/usr/bin/env bash + +erl -eval 'eunit:test(ggs_db_test), q().' From 08e0be70e2c15446ebac33aba64d66b95093cfe2 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 21 Feb 2011 20:54:43 +0100 Subject: [PATCH 060/192] fixed test with js callback --- erlang_js | 2 +- src/ggs_gamevm.erl | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/erlang_js b/erlang_js index 5350ed2..2f2785f 160000 --- a/erlang_js +++ b/erlang_js @@ -1 +1 @@ -Subproject commit 5350ed21606606dbee5ecb07e974f2abb9106270 +Subproject commit 2f2785fafb0da6db75810eb6fa97d09c58257588 diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index acfe2fb..294eb10 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -119,10 +119,15 @@ user_command_test() -> define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = user + command + args; }\n"), user_command(GameVM, "'jeena", "thecommand", "theargs'"), ?assertMatch(<<"'jeenathecommandtheargs'">>, gen_server:call(GameVM, {eval, "t;"})). + +to_string({A, B, C}) -> + "{" ++ integer_to_list(A) ++ ", " ++ integer_to_list(B) ++ ", " ++ integer_to_list(C) ++ "}". user_command2_test() -> GameVM = start_link(test_table), define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = callErlang('erlang time') + ''; }\n"), - user_command(GameVM, "jeena", "test", ""), - io:format("test ~p~n", [binary_to_list(gen_server:call(GameVM, {eval, "t;"}))]), - ?assertMatch(<<"rt">>, gen_server:call(GameVM, {eval, "t;"})). + user_command(GameVM, "", "", ""), + T = to_string(erlang:time()), + io:format("test ~p~n", [T]), + ?assertMatch(T, binary_to_list(gen_server:call(GameVM, {eval, "t;"}))). + From e55e0bd8a3003cfc1ae5f8740fd7249b4b021dba Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Mon, 21 Feb 2011 22:31:25 +0100 Subject: [PATCH 061/192] length(Db,Ns) and tests for get,set and length. --- mnesia/ggs_db.erl | 10 +++++++++- mnesia/ggs_db_test.erl | 11 +++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/mnesia/ggs_db.erl b/mnesia/ggs_db.erl index 5067e16..0b59822 100644 --- a/mnesia/ggs_db.erl +++ b/mnesia/ggs_db.erl @@ -6,7 +6,8 @@ -module(ggs_db). -import(mnesia). --export([init/0,setItem/4,getItem/3]). +%-compile({no_auto_import,[length/2]}). +-export([init/0,setItem/4,getItem/3,length/2]). -include("ggs_db.hrl"). %%----------------------------------------------------- @@ -45,3 +46,10 @@ getItem(Db,Ns,Key) -> end, mnesia:transaction(Fun). +length(Db,Ns) -> + Fun = fun() -> + Keys = mnesia:all_keys(data), + length(lists:filter(fun({A,B,_}) -> ((A==Db) and (B==Ns)) end, Keys)) + end, + {atomic, Ret} = mnesia:transaction(Fun), + Ret. diff --git a/mnesia/ggs_db_test.erl b/mnesia/ggs_db_test.erl index 4baaaed..0e65593 100644 --- a/mnesia/ggs_db_test.erl +++ b/mnesia/ggs_db_test.erl @@ -9,11 +9,18 @@ %Key should be a tuple of two elements -setup_test() -> +get_set_test() -> mnesia:start(), ggs_db:init(), ggs_db:setItem("dbname","nsname","keyname","Hello"), - ?assertMatch({atomic,"Hello"},ggs_db:getItem("dbname","nsname","keyname")), + ?assertMatch({atomic,"Hello"},ggs_db:getItem("dbname","nsname","keyname")). + +length_test() -> + ggs_db:setItem(1,1,2,"112"), + ggs_db:setItem(1,2,2,"122"), + ggs_db:setItem(1,1,3,"113"), + ggs_db:setItem(1,1,4,"114"), + ?assertEqual(ggs_db:length(1,1), 3), mnesia:stop(). %cleanup(Val) -> From c66d1cef69fb032287f28ceea23a95de55f306f9 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Mon, 21 Feb 2011 22:59:11 +0100 Subject: [PATCH 062/192] removeItem with test. --- mnesia/ggs_db.erl | 13 ++++++++++++- mnesia/ggs_db_test.erl | 8 ++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/mnesia/ggs_db.erl b/mnesia/ggs_db.erl index 0b59822..1c15536 100644 --- a/mnesia/ggs_db.erl +++ b/mnesia/ggs_db.erl @@ -7,7 +7,7 @@ -module(ggs_db). -import(mnesia). %-compile({no_auto_import,[length/2]}). --export([init/0,setItem/4,getItem/3,length/2]). +-export([init/0,setItem/4,getItem/3,removeItem/3,length/2]). -include("ggs_db.hrl"). %%----------------------------------------------------- @@ -35,6 +35,15 @@ setItem(Db,Ns,Key,Value) -> mnesia:transaction(Fun). +%%----------------------------------------------------- +%% Deletions +%%----------------------------------------------------- +removeItem(Db,Ns,Key) -> + Fun = fun() -> + mnesia:delete({data,{Db,Ns,Key}}) + end, + mnesia:transaction(Fun). + %%----------------------------------------------------- %% Querries @@ -53,3 +62,5 @@ length(Db,Ns) -> end, {atomic, Ret} = mnesia:transaction(Fun), Ret. + + diff --git a/mnesia/ggs_db_test.erl b/mnesia/ggs_db_test.erl index 0e65593..e15ddf4 100644 --- a/mnesia/ggs_db_test.erl +++ b/mnesia/ggs_db_test.erl @@ -9,7 +9,7 @@ %Key should be a tuple of two elements -get_set_test() -> +getItem_setItem_test() -> mnesia:start(), ggs_db:init(), ggs_db:setItem("dbname","nsname","keyname","Hello"), @@ -20,7 +20,11 @@ length_test() -> ggs_db:setItem(1,2,2,"122"), ggs_db:setItem(1,1,3,"113"), ggs_db:setItem(1,1,4,"114"), - ?assertEqual(ggs_db:length(1,1), 3), + ?assertEqual(ggs_db:length(1,1), 3). + +removeItem_test() -> + ggs_db:removeItem(1,1,4), + ?assertNot(ggs_db:getItem(1,1,4) =:= {atomic,"114"}), mnesia:stop(). %cleanup(Val) -> From 8b978934c70b9b1755bdf13f8c494337609d6434 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Mon, 21 Feb 2011 23:55:20 +0100 Subject: [PATCH 063/192] key with test. --- mnesia/ggs_db.erl | 11 +++++++++-- mnesia/ggs_db_test.erl | 7 +++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/mnesia/ggs_db.erl b/mnesia/ggs_db.erl index 1c15536..9c7cb3c 100644 --- a/mnesia/ggs_db.erl +++ b/mnesia/ggs_db.erl @@ -7,7 +7,7 @@ -module(ggs_db). -import(mnesia). %-compile({no_auto_import,[length/2]}). --export([init/0,setItem/4,getItem/3,removeItem/3,length/2]). +-export([init/0,setItem/4,getItem/3,removeItem/3,key/3,length/2]). -include("ggs_db.hrl"). %%----------------------------------------------------- @@ -63,4 +63,11 @@ length(Db,Ns) -> {atomic, Ret} = mnesia:transaction(Fun), Ret. - +key(Db,Ns,Position) -> + Fun = fun() -> + Keys = mnesia:all_keys(data), + Rest = lists:filter(fun({A,B,_}) -> ((A==Db) and (B==Ns)) end, Keys), + lists:nth(Position, Rest) + end, + {atomic, Ret} = mnesia:transaction(Fun), + Ret. diff --git a/mnesia/ggs_db_test.erl b/mnesia/ggs_db_test.erl index e15ddf4..a1a2ff1 100644 --- a/mnesia/ggs_db_test.erl +++ b/mnesia/ggs_db_test.erl @@ -24,9 +24,12 @@ length_test() -> removeItem_test() -> ggs_db:removeItem(1,1,4), - ?assertNot(ggs_db:getItem(1,1,4) =:= {atomic,"114"}), - mnesia:stop(). + ?assertNot(ggs_db:getItem(1,1,4) =:= {atomic,"114"}). + %mnesia:stop(). +key_test() -> + ?assert(ggs_db:key(1,1,2) =:= {1,1,3}), + mnesia:stop(). %cleanup(Val) -> % mnesia:stop(). From 276a1837383eb9604f30d6d9070d8ccfdffa7463 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Tue, 22 Feb 2011 00:14:11 +0100 Subject: [PATCH 064/192] clear with test. --- mnesia/ggs_db.erl | 13 ++++++++++++- mnesia/ggs_db_test.erl | 11 +++++------ 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/mnesia/ggs_db.erl b/mnesia/ggs_db.erl index 9c7cb3c..eef1415 100644 --- a/mnesia/ggs_db.erl +++ b/mnesia/ggs_db.erl @@ -7,7 +7,7 @@ -module(ggs_db). -import(mnesia). %-compile({no_auto_import,[length/2]}). --export([init/0,setItem/4,getItem/3,removeItem/3,key/3,length/2]). +-export([init/0,setItem/4,getItem/3,removeItem/3,key/3,clear/2,length/2]). -include("ggs_db.hrl"). %%----------------------------------------------------- @@ -71,3 +71,14 @@ key(Db,Ns,Position) -> end, {atomic, Ret} = mnesia:transaction(Fun), Ret. + + +clear(Db,Ns) -> + Fun = fun() -> + Keys = mnesia:all_keys(data), + Rest = lists:filter(fun({A,B,_}) -> ((A==Db) and (B==Ns)) end, Keys), + lists:map(fun({A,B,C}) -> removeItem(A,B,C) end, Rest) + end, + {atomic, Ret} = mnesia:transaction(Fun), + Ret. + diff --git a/mnesia/ggs_db_test.erl b/mnesia/ggs_db_test.erl index a1a2ff1..ea6e12e 100644 --- a/mnesia/ggs_db_test.erl +++ b/mnesia/ggs_db_test.erl @@ -25,15 +25,14 @@ length_test() -> removeItem_test() -> ggs_db:removeItem(1,1,4), ?assertNot(ggs_db:getItem(1,1,4) =:= {atomic,"114"}). - %mnesia:stop(). key_test() -> - ?assert(ggs_db:key(1,1,2) =:= {1,1,3}), + ?assert(ggs_db:key(1,1,2) =:= {1,1,3}). + +clear_test() -> + ggs_db:clear(1,1), + ?assert(ggs_db:length(1,1) =:= 0), mnesia:stop(). -%cleanup(Val) -> -% mnesia:stop(). - - %tests() -> % ggs_db_test(). From e03f3cf69d475b2aa90a133cdd39835dcc3c1781 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 00:15:21 +0100 Subject: [PATCH 065/192] better js_erlang_test --- src/ggs_gamevm.erl | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 294eb10..6dd19a7 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -120,14 +120,11 @@ user_command_test() -> user_command(GameVM, "'jeena", "thecommand", "theargs'"), ?assertMatch(<<"'jeenathecommandtheargs'">>, gen_server:call(GameVM, {eval, "t;"})). -to_string({A, B, C}) -> - "{" ++ integer_to_list(A) ++ ", " ++ integer_to_list(B) ++ ", " ++ integer_to_list(C) ++ "}". - -user_command2_test() -> +js_erlang_test() -> GameVM = start_link(test_table), define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = callErlang('erlang time') + ''; }\n"), user_command(GameVM, "", "", ""), - T = to_string(erlang:time()), - io:format("test ~p~n", [T]), - ?assertMatch(T, binary_to_list(gen_server:call(GameVM, {eval, "t;"}))). + {A, B, C} = erlang:time(), + T = "{" ++ integer_to_list(A) ++ ", " ++ integer_to_list(B) ++ ", " ++ integer_to_list(C) ++ "}", + ?assertMatch(T, binary_to_list(gen_server:call(GameVM, {eval, "t;"}))). From a7ffc843437e66ca5996f8965a884c2d43ad16d1 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Tue, 22 Feb 2011 00:18:13 +0100 Subject: [PATCH 066/192] refactoring. --- mnesia/ggs_db.erl | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/mnesia/ggs_db.erl b/mnesia/ggs_db.erl index eef1415..912d349 100644 --- a/mnesia/ggs_db.erl +++ b/mnesia/ggs_db.erl @@ -45,6 +45,16 @@ removeItem(Db,Ns,Key) -> mnesia:transaction(Fun). +clear(Db,Ns) -> + Fun = fun() -> + Keys = mnesia:all_keys(data), + Rest = lists:filter(fun({A,B,_}) -> ((A==Db) and (B==Ns)) end, Keys), + lists:map(fun({A,B,C}) -> removeItem(A,B,C) end, Rest) + end, + {atomic, Ret} = mnesia:transaction(Fun), + Ret. + + %%----------------------------------------------------- %% Querries %%----------------------------------------------------- @@ -73,12 +83,4 @@ key(Db,Ns,Position) -> Ret. -clear(Db,Ns) -> - Fun = fun() -> - Keys = mnesia:all_keys(data), - Rest = lists:filter(fun({A,B,_}) -> ((A==Db) and (B==Ns)) end, Keys), - lists:map(fun({A,B,C}) -> removeItem(A,B,C) end, Rest) - end, - {atomic, Ret} = mnesia:transaction(Fun), - Ret. From 073c4d49b01b057094ce47e5b8ffaf4a12e9c923 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 00:35:54 +0100 Subject: [PATCH 067/192] merged rewrite and master --- .gitignore | 1 + mnesia/gamedb.erl | 50 ----------------------- src/.ggs_connection.erl.swp | Bin 12288 -> 0 bytes src/.ggs_server.erl.swo | Bin 12288 -> 0 bytes src/ggs_table.erl | 78 ------------------------------------ src/js_helper.erl | 8 ---- tests/ggs_table_test.erl | 44 ++++++++++++++++++++ 7 files changed, 45 insertions(+), 136 deletions(-) delete mode 100644 mnesia/gamedb.erl delete mode 100644 src/.ggs_connection.erl.swp delete mode 100644 src/.ggs_server.erl.swo delete mode 100644 src/js_helper.erl create mode 100644 tests/ggs_table_test.erl diff --git a/.gitignore b/.gitignore index d176978..f6b93e9 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ *.dump *.beam Mnesia.* +*.swo diff --git a/mnesia/gamedb.erl b/mnesia/gamedb.erl deleted file mode 100644 index 751eb92..0000000 --- a/mnesia/gamedb.erl +++ /dev/null @@ -1,50 +0,0 @@ -%%%%---------------------------------------------------- -%%% @author Mattias Pettersson -%%% @copyright 2011 Mattias Pettersson -%%% @doc Database for runtime game variable storage. -%%% @end - - Test Mnesia --module(gamedb). --import(mnesia). --export([init/0,insert_player/1,example_player/0,read_player/1,test_player/0]). --include("gamedb.hrl"). - -%%----------------------------------------------------- -%% Creation -%%----------------------------------------------------- -init() -> - mnesia:create_table(player, [{attributes, record_info(fields, player)}]). - -%%----------------------------------------------------- -%% Test -%%----------------------------------------------------- -test_player() -> - insert_player(example_player()), - read_player(0001). - -example_player() -> - #player{id = 0001, - name = "Tux"}. - -%%----------------------------------------------------- -%% Insertions -%%----------------------------------------------------- -insert_player(Player) -> - Fun = fun() -> - mnesia:write(Player) - end, - mnesia:transaction(Fun). - - -%%----------------------------------------------------- -%% Querries -%%----------------------------------------------------- -read_player(Player_Key) -> - Fun = fun() -> - [P] = mnesia:read(player, Player_Key), - Name = P#player.name, - io:format("Player name: ~s~n",[Name]) - end, - mnesia:transaction(Fun). - diff --git a/src/.ggs_connection.erl.swp b/src/.ggs_connection.erl.swp deleted file mode 100644 index 0c009f8287377d2e3763a3fb7610231c3237d3fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12288 zcmeI2O>Z1E7{^^+M0qKoqMo?8TdkN?XJ3-EAceGwl!%h3+pLndm(^7W&e$W5 zH=){YkdU|{!I^9M0Eiwz;sQv$@CmqagL`?A;O}|aYywf~wg)QN%3m`c+m9drp2wC} z@pkLxTARMpSRg2`6LRL$wf0X-7s$022}!jSJV-*tG&jx1l^q@@QXbcO@O^*UU^7v2 zpjaG-V$kF&Vt8D+veitL-y955&zC}QUx!jO(0X9RzF7j6z#|igm=49FN1 zorLbcO2}R4b0~m(Xd7xnSD`;o5%LH0JMre&y z^<_eSfqsPUL0>^0^cM8jON4v_-GN5XD)c7wJoFs&EOa0D7QTi)hWbziItx9(`pg>d znswS@30MM_fF)oFSOWih0yHZFE521sA2M4uN3~j?rI2cs zUSH|Z6&6J)MQs)%b%ft6aU`VTNp#y_!hO$iBmXLIxzsbX$Mn(!1M_{JXy>Z=UUSI~ z6G6niQ1qpv!-Ta5CfkPGeY#$L=44BCi-HeSx3 zr`>COFEh~_kKfH)4CP{9s+eh~f^HN87EKbA{Y)i~N^ZoRwDjOQ7G4@JT+2OZ9P%LV zS6YNWf%Mk54E9MPZnC{qrddI+=F;l*jn$1qXhz6hv=^CM3>cRqkZZ;nT1^;k#d6J6 zN_}Z=$I`x%amGI7YL}}bUbsvPbBJ2ZqJy9nvG7@{oxI0U;6;>2CbC)Ezpc1*3u!R1 zh}90b#>L#BKzzOT;MJ7#Gp8St`28$_R64T_V#sAHDiSD>N+V7kJY0G>2VL4KlG_Y= zSQ#lkOgRez)c+ z8=X?jj*O5x|G;o^y2h_24#=rcH|M9Ssh+BuZEmXO1Z^%9&kH@AsiYpuU>I@7+}}3) zo@?_JF3xl^nQ?R(v*a&<^vhu7dx++>|;O?y@+$5Y|N|GrN0mvvzuVYG#`0>1wNM zU}2o~fQcOR;J={Zju(~aNfTmXVvHeC4|?;UCW?f_tKaJG`2{LumV+eK$%mfmu6p(A z`(C~74PDNz9zQ{!OHUIVdkNWgb@s%Su?yshR|q-9eaY1I+Z?a5K=Rx4QMWfEgPD02 zHY5)+d0t_eW5-IFP&k=dEwn-=PBW2a!n*@wx{FpoD{$uuv}85){2p>}dMc|19T?wF zAA5A=&d2MXS^=$qRzNGD70?Q31+)TM0jsbJEl&t$KgIFiH1lr&ncn##iOW<*E;{ighfD7PlPykPXePA!RzLSt&!7t!* z@FBPaHb5CX4JN_E;5WqJYw!V3@i-4w!9MWU{r6yUX_vJE|1$+>|2QIQVVbCRn>S3V znjJc$+W&F~A0}CWEkc%y{UHeSjyX;*YhnhOjEOjOiZLk zIWUeM$9H7Hw>?^I`HpnCAC7E|C>0~2OVXCClO_&6BeR^k?bn!Lo%AZJp>NXYrb(@Z z4Jqu&$bU7EH_}8!&Gj+Xu!_tMIeJ@B_kOpw&jky-vxyx{q6SB^S}JHNO}de^9S5Jk z8B6Lq6oelYk6Er?<%V>djJFV-1EKP@?S<%rp;2FDqN#N-WKt88IFWW zvx6b-g{K>0&kZH>lbyEKwvoc8nMtK+v5wj`uJ1}?O<7)#71_d8QFF%MK~e|%uxvYx zEpC>+#atAJ!=;7d>O#?^Dj+B?>SRQIZ^7+3)HAiy=fZ$FYP0mLV$Vf4Dm=Q5oaaGE zWu4LFbI+}nf}zzRCwi;vB?p$+`+e8eN#pG|LtT`%8WYB(TI88J6KqI^;hEzS5)JJP ziE@-lr_N$o{8qEf1m#tlY}=4F?FyrkLp3){WZRl*s7FHLq2o7$TZNOw z8fW>~8cVDr#Kxq)_{l4ix#!G>TdGsi+zQkJQXT6~PqSP)-?Zs?=qs z%G{3VS9SKdq8p-ON;%doJ}8 z5{{{vRV+xV% code_change(_OldVsn, State, _Extra) -> {ok, State}. -%% @TODO: Please put these tests in a separate file. We can't compile this file if -%% they contain errors from switching vms -%% ---------------------------------------------------------------------- -% Tests - -%<<<<<<< HEAD -%start_link_test() -> -% Table = start_link(), -% ?assertNot(Table =:= undefined). - -%add_player_test() -> -% Table = start_link(), -% Player = test_player, -% add_player(Table, Player), -% {ok, [Player]} = gen_server:call(Table, get_player_list). - -%remove_player_test() -> -% Table = start_link(), -% Player = test_player, -% Player2 = test_player2, -% add_player(Table, Player), -% {ok, [Player]} = gen_server:call(Table, get_player_list), -% add_player(Table, Player2), -% {ok, [Player2, Player]} = gen_server:call(Table, get_player_list), -% remove_player(Table, Player), -% {ok, [Player2]} = gen_server:call(Table, get_player_list), -% remove_player(Table, Player2), -% {ok, []} = gen_server:call(Table, get_player_list). -% -%stop_test() -> -% Table = start_link(), -% ok = stop(Table). - -% @private -%notify_test() -> -% Table = start_link(), -% Player = test_player, -% Message = {server, define, "function helloWorld(x) { }"}, -% ok = notify(Table, Player, Message). -%======= -%%start_link_test() -> -% Table = start_link("123", none), -% ?assertNot(Table =:= undefined). -% -%add_player_test() -> -% Table = start_link("123", none), -% Player = test_player, -% add_player(Table, Player), -% {ok, [Player]} = gen_server:call(Table, get_player_list). - -%remove_player_test() -> -% Table = start_link("123", none), -% Player = test_player, -% Player2 = test_player2, -% add_player(Table, Player), -% {ok, [Player]} = gen_server:call(Table, get_player_list), -% add_player(Table, Player2), -% {ok, [Player2, Player]} = gen_server:call(Table, get_player_list), -% remove_player(Table, Player), -% {ok, [Player2]} = gen_server:call(Table, get_player_list), -% remove_player(Table, Player2), -% {ok, []} = gen_server:call(Table, get_player_list). -% -%stop_test() -> -% Table = start_link("123", none), -% ok = stop(Table). -% -%% @private -%notify_test() -> -% Table = start_link("123", none), -% Player = test_player, -% Message = {server, define, "function helloWorld(x) { }"}, -% ok = notify(Table, Player, Message). -%>>>>>>> jonte_rewrite - %Message2 = {game, "helloWorld", "test"}, - %ok = notify(Table, Player, Message2). - diff --git a/src/js_helper.erl b/src/js_helper.erl deleted file mode 100644 index efb38f4..0000000 --- a/src/js_helper.erl +++ /dev/null @@ -1,8 +0,0 @@ --module(js_helper). --export([test/0, echo/1]). - -test() -> - {ok, test}. - -echo(String) -> - {ok, String}. \ No newline at end of file diff --git a/tests/ggs_table_test.erl b/tests/ggs_table_test.erl new file mode 100644 index 0000000..5757456 --- /dev/null +++ b/tests/ggs_table_test.erl @@ -0,0 +1,44 @@ +-include_lib("eunit/include/eunit.hrl"). +-import(ggs_table). + + +% @private +start_link_test() -> + Table = start_link(), + ?assertNot(Table =:= undefined). + +% @private +add_player_test() -> + Table = start_link(), + Player = test_player, + add_player(Table, Player), + {ok, [Player]} = gen_server:call(Table, get_player_list). + +% @private +remove_player_test() -> + Table = start_link(), + Player = test_player, + Player2 = test_player2, + add_player(Table, Player), + {ok, [Player]} = gen_server:call(Table, get_player_list), + add_player(Table, Player2), + {ok, [Player2, Player]} = gen_server:call(Table, get_player_list), + remove_player(Table, Player), + {ok, [Player2]} = gen_server:call(Table, get_player_list), + remove_player(Table, Player2), + {ok, []} = gen_server:call(Table, get_player_list). + +% @private +stop_test() -> + Table = start_link(), + ok = stop(Table). + +% @private +notify_test() -> + Table = start_link(), + Player = test_player, + Message = {server, define, "function helloWorld(x) { }"}, + ok = notify(Table, Player, Message). + Message2 = {game, "helloWorld", "test"}, + ok = notify(Table, Player, Message2). + From eb3925bebdd99f6eee8402688ea7dbceed2e9549 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 00:39:15 +0100 Subject: [PATCH 068/192] fixed issues with tests --- tests/ggs_player_test.erl | 1 + tests/ggs_table_test.erl | 1 + 2 files changed, 2 insertions(+) diff --git a/tests/ggs_player_test.erl b/tests/ggs_player_test.erl index be38135..66900d6 100644 --- a/tests/ggs_player_test.erl +++ b/tests/ggs_player_test.erl @@ -1,3 +1,4 @@ +-module(ggs_player_test). -include_lib("eunit/include/eunit.hrl"). -import(ggs_player). diff --git a/tests/ggs_table_test.erl b/tests/ggs_table_test.erl index 5757456..7a270ed 100644 --- a/tests/ggs_table_test.erl +++ b/tests/ggs_table_test.erl @@ -1,3 +1,4 @@ +-module(ggs_table_test). -include_lib("eunit/include/eunit.hrl"). -import(ggs_table). From e4753b2c074c01ac2f08e981cbbed88c5e0e64dc Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 00:49:43 +0100 Subject: [PATCH 069/192] minor changes --- erlang_js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/erlang_js b/erlang_js index 2f2785f..709b568 160000 --- a/erlang_js +++ b/erlang_js @@ -1 +1 @@ -Subproject commit 2f2785fafb0da6db75810eb6fa97d09c58257588 +Subproject commit 709b568efbc99c954507d1593bc5633f900bc5dc From bf4d7439233b33770b92bcb0b464204c34baeabc Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Tue, 22 Feb 2011 01:09:55 +0100 Subject: [PATCH 070/192] ggs_db.erl only init and stop left to do. ggs_db.test.erl only init and stop left todo. Everything else is done with these two files. --- erlang_js | 2 +- {mnesia => src}/ggs_db.erl | 0 {mnesia => tests}/ggs_db_test.erl | 0 3 files changed, 1 insertion(+), 1 deletion(-) rename {mnesia => src}/ggs_db.erl (100%) rename {mnesia => tests}/ggs_db_test.erl (100%) diff --git a/erlang_js b/erlang_js index 709b568..5350ed2 160000 --- a/erlang_js +++ b/erlang_js @@ -1 +1 @@ -Subproject commit 709b568efbc99c954507d1593bc5633f900bc5dc +Subproject commit 5350ed21606606dbee5ecb07e974f2abb9106270 diff --git a/mnesia/ggs_db.erl b/src/ggs_db.erl similarity index 100% rename from mnesia/ggs_db.erl rename to src/ggs_db.erl diff --git a/mnesia/ggs_db_test.erl b/tests/ggs_db_test.erl similarity index 100% rename from mnesia/ggs_db_test.erl rename to tests/ggs_db_test.erl From 6ee945379f0c41e6f12bb26f9626165dbdbfdb6e Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 03:11:35 +0100 Subject: [PATCH 071/192] added makefile, fixed problems with tests --- Makefile | 28 ++++++++++++++++++++++++++++ src/ggs_coordinator.erl | 4 ++-- src/ggs_dispatcher.erl | 2 +- src/ggs_gamevm_e.erl | 2 +- src/ggs_player.erl | 2 +- src/ggs_table.erl | 14 ++++++++------ tests/ggs_player_test.erl | 9 ++++----- tests/ggs_table_test.erl | 33 +++++++++++++-------------------- 8 files changed, 58 insertions(+), 36 deletions(-) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..5c0e61d --- /dev/null +++ b/Makefile @@ -0,0 +1,28 @@ +ERLC=erlc +ERLCFLAGS=-o +SRCDIR=src +TESTDIR=tests +BEAMDIR=./ebin + +all: compile erlang_js + +compile: + @ mkdir -p $(BEAMDIR) ; + @ $(ERLC) $(ERLCFLAGS) $(BEAMDIR) $(SRCDIR)/*.erl ; + +erlang_js: + $(MAKE) -C erlang_js/ + +test: compile erlang_js + @ mkdir -p $(BEAMDIR) ; + @ $(ERLC) $(ERLCFLAGS) $(BEAMDIR) $(TESTDIR)/*.erl ; + @ cd $(BEAMDIR) ; erl -noinput -eval 'eunit:test({dir, "."}, [verbose]), init:stop()' ; + +clean: + @ rm -rf $(BEAMDIR)/*.beam ; + @ rm -rf erl_crush.dump ; + @ echo "==> clean ggs" ; + @ $(MAKE) -C erlang_js/ clean + +run: + @ erl -sname ggs -mnesia -boot start_sasl -pa erlang_js/ebin/ -pa ebin -pa src -s start_ggs diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 733ff8d..83f7e14 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -65,7 +65,7 @@ handle_call({join_table, Table}, From, State) -> {FromPlayer, _Ref} = From, Tables = State#co_state.tables, case lists:keyfind(Table, 1, Tables) of - {TableID, TablePID} -> + {_TableID, TablePID} -> ggs_table:add_player(TablePID, FromPlayer), {reply, {ok, TablePID}, State}; false -> @@ -84,7 +84,7 @@ handle_call({create_table, {force, TableID}}, From, State) -> handle_call(_Message, _From, State) -> {noreply, State}. -handle_cast({stop, Reason}, State) -> +handle_cast({stop, _Reason}, _State) -> {stop, normal, state}; handle_cast(_Message, State) -> diff --git a/src/ggs_dispatcher.erl b/src/ggs_dispatcher.erl index 49dcf4b..11dd729 100644 --- a/src/ggs_dispatcher.erl +++ b/src/ggs_dispatcher.erl @@ -45,7 +45,7 @@ handle_call(_Message, _From, State) -> handle_cast(_Message, State) -> {noreply, State}. -handle_info({tcp, _Socket, RawData}, State) -> +handle_info({tcp, _Socket, _RawData}, State) -> io:format("Got connect request!~n"), {noreply, State}; diff --git a/src/ggs_gamevm_e.erl b/src/ggs_gamevm_e.erl index 76b9350..6ca4e1b 100644 --- a/src/ggs_gamevm_e.erl +++ b/src/ggs_gamevm_e.erl @@ -32,7 +32,7 @@ user_command(GameVM, Player, Command, Args) -> loop(Table) -> receive - {define, SourceCode} -> + {define, _SourceCode} -> loop(Table); {user_command, _User, Command, _Args, _From, _Ref} -> io:format("GameVM received a message~n"), diff --git a/src/ggs_player.erl b/src/ggs_player.erl index af92ad9..27c73d0 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -60,7 +60,7 @@ loop(#pl_state{token = Token, socket = Socket, table = Table} = State) -> io:format("Notifying table..~n"), ggs_table:notify_game(Table, Token, Data), loop(State); - {notify, From, Message} -> + {notify, _From, Message} -> gen_tcp:send(Socket, Message), loop(State) end. diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 4715e79..9ddc7d6 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -5,17 +5,18 @@ %% gen_server callbacks -export([init/1, handle_call/3, handle_cast/2, handle_info/2, - terminate/2, code_change/3, notify_all_players/2, notify_game/3, - add_player/2]). + terminate/2, code_change/3]). -record(state, { players, game_vm } ). %% API -export([start_link/0, - add_player/2, - remove_player/2, - stop/1, - notify/3]). + add_player/2, + remove_player/2, + stop/1, + notify/3, + notify_all_players/2, + notify_game/3]). %% ---------------------------------------------------------------------- @@ -24,6 +25,7 @@ % @doc returns a new table start_link() -> {ok, Pid} = gen_server:start_link(?MODULE, [], []), + Pid. %% @private call(Pid, Msg) -> diff --git a/tests/ggs_player_test.erl b/tests/ggs_player_test.erl index 66900d6..efe7530 100644 --- a/tests/ggs_player_test.erl +++ b/tests/ggs_player_test.erl @@ -1,6 +1,5 @@ -module(ggs_player_test). -include_lib("eunit/include/eunit.hrl"). --import(ggs_player). %% @doc start_link should always return ok for any valid socket. A valid socket %% should always return {ok, Pid} and {error, Reason} otherwise. @@ -10,9 +9,9 @@ start_link_test() -> %% @doc Given that start_link returned {ok, Player}. Notify shall always return ok and %% deliver a specified message through the socket. notify_test() -> - Player = start_link("bad arg"), + Player = ggs_player:start_link("bad arg"), Message = {"something", ""}, - Ret = ggs_player:notify(Player, self(), Message) + Ret = ggs_player:notify(Player, self(), Message), ?assertNot(ok =:= Ret). %% @doc Given that start_link returned {ok, Player}. get_token shall always return a valid @@ -23,6 +22,6 @@ get_token_test() -> %% @doc Given that start_link returned {ok, Pid}. There shouldn't be possible to %% execute this function with the same Player and Table arguments twice. stop_test() -> - Player = start_link(something), + Player = ggs_player:start_link(something), Table = test, - ok = stop(Player, Table). + ok = ggs_player:stop(Player, Table). diff --git a/tests/ggs_table_test.erl b/tests/ggs_table_test.erl index 7a270ed..c10effb 100644 --- a/tests/ggs_table_test.erl +++ b/tests/ggs_table_test.erl @@ -1,45 +1,38 @@ -module(ggs_table_test). -include_lib("eunit/include/eunit.hrl"). --import(ggs_table). - -% @private start_link_test() -> - Table = start_link(), + Table = ggs_table:start_link(), ?assertNot(Table =:= undefined). -% @private add_player_test() -> - Table = start_link(), + Table = ggs_table:start_link(), Player = test_player, - add_player(Table, Player), + ggs_table:add_player(Table, Player), {ok, [Player]} = gen_server:call(Table, get_player_list). -% @private remove_player_test() -> - Table = start_link(), + Table = ggs_table:start_link(), Player = test_player, Player2 = test_player2, - add_player(Table, Player), + ggs_table:add_player(Table, Player), {ok, [Player]} = gen_server:call(Table, get_player_list), - add_player(Table, Player2), + ggs_table:add_player(Table, Player2), {ok, [Player2, Player]} = gen_server:call(Table, get_player_list), - remove_player(Table, Player), + ggs_table:remove_player(Table, Player), {ok, [Player2]} = gen_server:call(Table, get_player_list), - remove_player(Table, Player2), + ggs_table:remove_player(Table, Player2), {ok, []} = gen_server:call(Table, get_player_list). -% @private stop_test() -> - Table = start_link(), - ok = stop(Table). + Table = ggs_table:start_link(), + ok = ggs_table:stop(Table). -% @private notify_test() -> - Table = start_link(), + Table = ggs_table:start_link(), Player = test_player, Message = {server, define, "function helloWorld(x) { }"}, - ok = notify(Table, Player, Message). + ok = ggs_table:notify(Table, Player, Message), Message2 = {game, "helloWorld", "test"}, - ok = notify(Table, Player, Message2). + ok = ggs_table:notify(Table, Player, Message2). From 17356692c67ee3125b05151247de9d65f3e975d3 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 03:14:48 +0100 Subject: [PATCH 072/192] latest erlang_js update --- erlang_js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/erlang_js b/erlang_js index 5350ed2..709b568 160000 --- a/erlang_js +++ b/erlang_js @@ -1 +1 @@ -Subproject commit 5350ed21606606dbee5ecb07e974f2abb9106270 +Subproject commit 709b568efbc99c954507d1593bc5633f900bc5dc From 597070f2d608781f797cd7982249e568a1135239 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Tue, 22 Feb 2011 11:18:13 +0100 Subject: [PATCH 073/192] added ggs_db.hrl to src --- {mnesia => src}/ggs_db.hrl | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename {mnesia => src}/ggs_db.hrl (100%) diff --git a/mnesia/ggs_db.hrl b/src/ggs_db.hrl similarity index 100% rename from mnesia/ggs_db.hrl rename to src/ggs_db.hrl From 0c530dde5d1d7bffc2d107c5301a3bc432f028a5 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Tue, 22 Feb 2011 12:36:36 +0100 Subject: [PATCH 074/192] clear(GameToken) aded. --- erlang_js | 2 +- src/ggs_db.erl | 52 +++++++++++++++++++++++++------------------ tests/ggs_db_test.erl | 6 ++++- 3 files changed, 36 insertions(+), 24 deletions(-) diff --git a/erlang_js b/erlang_js index 709b568..5350ed2 160000 --- a/erlang_js +++ b/erlang_js @@ -1 +1 @@ -Subproject commit 709b568efbc99c954507d1593bc5633f900bc5dc +Subproject commit 5350ed21606606dbee5ecb07e974f2abb9106270 diff --git a/src/ggs_db.erl b/src/ggs_db.erl index 912d349..b21bab2 100644 --- a/src/ggs_db.erl +++ b/src/ggs_db.erl @@ -7,7 +7,7 @@ -module(ggs_db). -import(mnesia). %-compile({no_auto_import,[length/2]}). --export([init/0,setItem/4,getItem/3,removeItem/3,key/3,clear/2,length/2]). +-export([init/0,setItem/4,getItem/3,removeItem/3,key/3,clear/2,clear/1,length/2]). -include("ggs_db.hrl"). %%----------------------------------------------------- @@ -27,9 +27,9 @@ init() -> %%----------------------------------------------------- %% Insertions %%----------------------------------------------------- -setItem(Db,Ns,Key,Value) -> +setItem(GameToken,Ns,Key,Value) -> Fun = fun() -> - Data = #data{key = {Db,Ns,Key}, value = Value}, + Data = #data{key = {GameToken,Ns,Key}, value = Value}, mnesia:write(Data) end, mnesia:transaction(Fun). @@ -38,45 +38,53 @@ setItem(Db,Ns,Key,Value) -> %%----------------------------------------------------- %% Deletions %%----------------------------------------------------- -removeItem(Db,Ns,Key) -> +removeItem(GameToken,Ns,Key) -> Fun = fun() -> - mnesia:delete({data,{Db,Ns,Key}}) + mnesia:delete({data,{GameToken,Ns,Key}}) end, mnesia:transaction(Fun). -clear(Db,Ns) -> +clear(GameToken,Ns) -> Fun = fun() -> Keys = mnesia:all_keys(data), - Rest = lists:filter(fun({A,B,_}) -> ((A==Db) and (B==Ns)) end, Keys), + Rest = lists:filter(fun({A,B,_}) -> ((A==GameToken) and (B==Ns)) end, Keys), lists:map(fun({A,B,C}) -> removeItem(A,B,C) end, Rest) end, {atomic, Ret} = mnesia:transaction(Fun), Ret. - -%%----------------------------------------------------- -%% Querries -%%----------------------------------------------------- -getItem(Db,Ns,Key) -> - Fun = fun() -> - [Data] = mnesia:read(data, {Db,Ns,Key}), - Data#data.value - end, - mnesia:transaction(Fun). - -length(Db,Ns) -> +clear(GameToken) -> Fun = fun() -> Keys = mnesia:all_keys(data), - length(lists:filter(fun({A,B,_}) -> ((A==Db) and (B==Ns)) end, Keys)) + Rest = lists:filter(fun({A,_,_}) -> (A==GameToken) end, Keys), + lists:map(fun({A,B,C}) -> removeItem(A,B,C) end, Rest) end, {atomic, Ret} = mnesia:transaction(Fun), Ret. -key(Db,Ns,Position) -> +%%----------------------------------------------------- +%% Querries +%%----------------------------------------------------- +getItem(GameToken,Ns,Key) -> + Fun = fun() -> + [Data] = mnesia:read(data, {GameToken,Ns,Key}), + Data#data.value + end, + mnesia:transaction(Fun). + +length(GameToken,Ns) -> Fun = fun() -> Keys = mnesia:all_keys(data), - Rest = lists:filter(fun({A,B,_}) -> ((A==Db) and (B==Ns)) end, Keys), + length(lists:filter(fun({A,B,_}) -> ((A==GameToken) and (B==Ns)) end, Keys)) + end, + {atomic, Ret} = mnesia:transaction(Fun), + Ret. + +key(GameToken,Ns,Position) -> + Fun = fun() -> + Keys = mnesia:all_keys(data), + Rest = lists:filter(fun({A,B,_}) -> ((A==GameToken) and (B==Ns)) end, Keys), lists:nth(Position, Rest) end, {atomic, Ret} = mnesia:transaction(Fun), diff --git a/tests/ggs_db_test.erl b/tests/ggs_db_test.erl index ea6e12e..5f990c8 100644 --- a/tests/ggs_db_test.erl +++ b/tests/ggs_db_test.erl @@ -31,7 +31,11 @@ key_test() -> clear_test() -> ggs_db:clear(1,1), - ?assert(ggs_db:length(1,1) =:= 0), + ?assert(ggs_db:length(1,1) =:= 0). + +clear_GameToken_test() -> + ggs_db:clear(1), + ?assert((ggs_db:length(1,1) + ggs_db:length(1,2)) =:= 0), mnesia:stop(). %tests() -> From 873e88eefdc90afeb3b676928ef02d9a02cb7085 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Tue, 22 Feb 2011 12:42:22 +0100 Subject: [PATCH 075/192] Removed init from ggs_db. --- src/ggs_db.erl | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/ggs_db.erl b/src/ggs_db.erl index b21bab2..5d2ee61 100644 --- a/src/ggs_db.erl +++ b/src/ggs_db.erl @@ -10,12 +10,6 @@ -export([init/0,setItem/4,getItem/3,removeItem/3,key/3,clear/2,clear/1,length/2]). -include("ggs_db.hrl"). -%%----------------------------------------------------- -%% Creation -%%----------------------------------------------------- -init() -> - mnesia:create_table(data, [{attributes, record_info(fields, data)}]). - %%----------------------------------------------------- %% Test %%----------------------------------------------------- From 0c76c85d8fcc3fe551b9a2d6c49a27fa57f4b844 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 13:55:38 +0100 Subject: [PATCH 076/192] added test for one module --- Makefile | 32 ++++++++++++++++++++------------ 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/Makefile b/Makefile index 5c0e61d..cc165a3 100644 --- a/Makefile +++ b/Makefile @@ -7,22 +7,30 @@ BEAMDIR=./ebin all: compile erlang_js compile: - @ mkdir -p $(BEAMDIR) ; - @ $(ERLC) $(ERLCFLAGS) $(BEAMDIR) $(SRCDIR)/*.erl ; + mkdir -p $(BEAMDIR) ; + $(ERLC) $(ERLCFLAGS) $(BEAMDIR) $(SRCDIR)/*.erl ; erlang_js: - $(MAKE) -C erlang_js/ + $(MAKE) -C erlang_js/ ; -test: compile erlang_js - @ mkdir -p $(BEAMDIR) ; - @ $(ERLC) $(ERLCFLAGS) $(BEAMDIR) $(TESTDIR)/*.erl ; - @ cd $(BEAMDIR) ; erl -noinput -eval 'eunit:test({dir, "."}, [verbose]), init:stop()' ; +test: + echo "==> test $(MOD)" ; + mkdir -p $(BEAMDIR) ; +ifeq ($(strip $(MOD)),) + $(ERLC) $(ERLCFLAGS) $(BEAMDIR) $(TESTDIR)/*.erl ; + cd $(BEAMDIR) ; erl -noinput -eval 'eunit:test({dir, "."}, [verbose]), init:stop()' ; +else + $(ERLC) $(ERLCFLAGS) $(BEAMDIR) $(TESTDIR)/$(MOD)_test.erl ; + cd $(BEAMDIR) ; erl -noinput -eval 'eunit:test($(MOD)_test, [verbose]), init:stop()' ; +endif clean: - @ rm -rf $(BEAMDIR)/*.beam ; - @ rm -rf erl_crush.dump ; - @ echo "==> clean ggs" ; - @ $(MAKE) -C erlang_js/ clean + rm -rf $(BEAMDIR)/*.beam ; + rm -rf erl_crush.dump ; + echo "==> clean ggs" ; + $(MAKE) -C erlang_js/ clean run: - @ erl -sname ggs -mnesia -boot start_sasl -pa erlang_js/ebin/ -pa ebin -pa src -s start_ggs + erl -sname ggs -mnesia -boot start_sasl -pa erlang_js/ebin/ -pa ebin -pa src -s start_ggs + + \ No newline at end of file From dcc1a6086f39a0c46bc70e0f05ee4e45b06103f8 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 13:56:27 +0100 Subject: [PATCH 077/192] removed io --- src/ggs_table.erl | 12 ++++-------- tests/ggs_table_test.erl | 2 +- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 9ddc7d6..b696688 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -51,9 +51,6 @@ notify_all_players(Table, Message) -> gen_server:cast(Table, {notify_all_players, Message}). notify_game(Table, From, Message) -> - io:format("Notify game called on"), - erlang:display(Table), - io:format("~n"), gen_server:cast(Table, {notify_game, Message, From}). %% ---------------------------------------------------------------------- @@ -95,11 +92,10 @@ handle_cast({notify_game, Message, From}, #state { game_vm = GameVM } = State) - {noreply, State}; handle_cast({notify_all_players, Message}, #state{players = Players} = State) -> - io:format("Notifying all players... ~p~n", [Players]), - lists:foreach(fun(P) -> - io:format("Notifying ~p~n", [P]), - ggs_player:notify(P, "Server", Message) - end, Players), + lists:foreach( + fun(P) -> ggs_player:notify(P, "Server", Message) end, + Players + ), {noreply, State}; handle_cast(stop, State) -> diff --git a/tests/ggs_table_test.erl b/tests/ggs_table_test.erl index c10effb..8dbe11e 100644 --- a/tests/ggs_table_test.erl +++ b/tests/ggs_table_test.erl @@ -31,7 +31,7 @@ stop_test() -> notify_test() -> Table = ggs_table:start_link(), Player = test_player, - Message = {server, define, "function helloWorld(x) { }"}, + Message = {server, define, "function helloWorld(x) { }"}, ok = ggs_table:notify(Table, Player, Message), Message2 = {game, "helloWorld", "test"}, ok = ggs_table:notify(Table, Player, Message2). From ce7b7d2764e29db0d0a793b935fd205df1608f34 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 13:57:07 +0100 Subject: [PATCH 078/192] removed init from export --- src/ggs_db.erl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ggs_db.erl b/src/ggs_db.erl index 5d2ee61..7661ae6 100644 --- a/src/ggs_db.erl +++ b/src/ggs_db.erl @@ -7,7 +7,7 @@ -module(ggs_db). -import(mnesia). %-compile({no_auto_import,[length/2]}). --export([init/0,setItem/4,getItem/3,removeItem/3,key/3,clear/2,clear/1,length/2]). +-export([setItem/4,getItem/3,removeItem/3,key/3,clear/2,clear/1,length/2]). -include("ggs_db.hrl"). %%----------------------------------------------------- From 059948d7c3b34d200666babf058e6e39b93bd229 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Tue, 22 Feb 2011 15:08:25 +0100 Subject: [PATCH 079/192] merge. --- src/ggs_db.erl | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/ggs_db.erl b/src/ggs_db.erl index 7661ae6..ec8e5a9 100644 --- a/src/ggs_db.erl +++ b/src/ggs_db.erl @@ -6,17 +6,20 @@ -module(ggs_db). -import(mnesia). -%-compile({no_auto_import,[length/2]}). --export([setItem/4,getItem/3,removeItem/3,key/3,clear/2,clear/1,length/2]). +-export([init/0,stop/0,setItem/4,getItem/3,removeItem/3,key/3,clear/2,clear/1,length/2]). -include("ggs_db.hrl"). %%----------------------------------------------------- -%% Test +%% Creation %%----------------------------------------------------- +init() -> + mnesia:create_schema([node()]), + mnesia:start(), + mnesia:create_table(data, [{attributes, record_info(fields, data)}]). + +stop() -> + mnesia:stop(). -%test_data() -> -% set(0, "Hello"), -% get(0). %%----------------------------------------------------- %% Insertions From 3751ba8c95c83644eb9e8a9af631081c84499c73 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Tue, 22 Feb 2011 16:44:39 +0100 Subject: [PATCH 080/192] Bad code. --- src/ggs_db.erl | 9 +++++---- src/ggs_db.hrl | 1 - tests/ggs_db_test.erl | 44 ++++++++++++++++++++++--------------------- 3 files changed, 28 insertions(+), 26 deletions(-) diff --git a/src/ggs_db.erl b/src/ggs_db.erl index ec8e5a9..57ff5ac 100644 --- a/src/ggs_db.erl +++ b/src/ggs_db.erl @@ -5,15 +5,15 @@ %%% @end -module(ggs_db). --import(mnesia). -export([init/0,stop/0,setItem/4,getItem/3,removeItem/3,key/3,clear/2,clear/1,length/2]). --include("ggs_db.hrl"). +%-include("ggs_db.hrl"). +-record(data, {key, value}). %%----------------------------------------------------- %% Creation %%----------------------------------------------------- init() -> - mnesia:create_schema([node()]), +% mnesia:create_schema([node()]), mnesia:start(), mnesia:create_table(data, [{attributes, record_info(fields, data)}]). @@ -68,7 +68,8 @@ getItem(GameToken,Ns,Key) -> [Data] = mnesia:read(data, {GameToken,Ns,Key}), Data#data.value end, - mnesia:transaction(Fun). + {atomic, Ret} = mnesia:transaction(Fun), + Ret. length(GameToken,Ns) -> Fun = fun() -> diff --git a/src/ggs_db.hrl b/src/ggs_db.hrl index bc13c3a..b7f1f4c 100644 --- a/src/ggs_db.hrl +++ b/src/ggs_db.hrl @@ -1,6 +1,5 @@ %% gamedb.hrl --record(player, {id, name}). -record(data, {key, value}). diff --git a/tests/ggs_db_test.erl b/tests/ggs_db_test.erl index 5f990c8..dcebdb9 100644 --- a/tests/ggs_db_test.erl +++ b/tests/ggs_db_test.erl @@ -10,33 +10,35 @@ %Key should be a tuple of two elements getItem_setItem_test() -> - mnesia:start(), ggs_db:init(), - ggs_db:setItem("dbname","nsname","keyname","Hello"), - ?assertMatch({atomic,"Hello"},ggs_db:getItem("dbname","nsname","keyname")). + ggs_db:setItem("dbname","nsname","keyname1","Hello"), + ggs_db:setItem("dbname","nsname","keyname2","Hello"), + ggs_db:setItem("dbname","nsname","keyname3","Hello"), + %system:wait(2000), + ggs_db:getItem("dbname","nsname","keyname"). -length_test() -> - ggs_db:setItem(1,1,2,"112"), - ggs_db:setItem(1,2,2,"122"), - ggs_db:setItem(1,1,3,"113"), - ggs_db:setItem(1,1,4,"114"), - ?assertEqual(ggs_db:length(1,1), 3). +%length_test() -> +% ggs_db:setItem(1,1,2,"112"), +% ggs_db:setItem(1,2,2,"122"), +% ggs_db:setItem(1,1,3,"113"), +% ggs_db:setItem(1,1,4,"114"), +% ?assertEqual(ggs_db:length(1,1), 3). -removeItem_test() -> - ggs_db:removeItem(1,1,4), - ?assertNot(ggs_db:getItem(1,1,4) =:= {atomic,"114"}). +%removeItem_test() -> +% ggs_db:removeItem(1,1,4), +% ?assertNot(ggs_db:getItem(1,1,4) =:= {atomic,"114"}). -key_test() -> - ?assert(ggs_db:key(1,1,2) =:= {1,1,3}). +%key_test() -> +% ?assert(ggs_db:key(1,1,2) =:= {1,1,3}). -clear_test() -> - ggs_db:clear(1,1), - ?assert(ggs_db:length(1,1) =:= 0). +%clear_test() -> +% ggs_db:clear(1,1), +% ?assert(ggs_db:length(1,1) =:= 0). -clear_GameToken_test() -> - ggs_db:clear(1), - ?assert((ggs_db:length(1,1) + ggs_db:length(1,2)) =:= 0), - mnesia:stop(). +%clear_GameToken_test() -> +% ggs_db:clear(1), +% ?assert((ggs_db:length(1,1) + ggs_db:length(1,2)) =:= 0), +% ggs_db:stop(). %tests() -> % ggs_db_test(). From 0a67224c97bbb6e3235bc98d4c9cae6211f9f4c9 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 16:08:16 +0100 Subject: [PATCH 081/192] more beautiful code --- Makefile | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index cc165a3..14f07de 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ ERLC=erlc ERLCFLAGS=-o SRCDIR=src TESTDIR=tests -BEAMDIR=./ebin +BEAMDIR=ebin all: compile erlang_js @@ -31,6 +31,13 @@ clean: $(MAKE) -C erlang_js/ clean run: - erl -sname ggs -mnesia -boot start_sasl -pa erlang_js/ebin/ -pa ebin -pa src -s start_ggs + erl \ + -sname ggs \ + -mnesia dir '"/tmp/ggs"' \ + -boot start_sasl \ + -pa erlang_js/ebin/ \ + -pa ebin \ + -pa src \ + -s start_ggs \ No newline at end of file From 2a884cb9a7e9159b8559a462e89cca348d689af0 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 16:09:53 +0100 Subject: [PATCH 082/192] fixed problem with getItem() --- src/ggs_db.erl | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/ggs_db.erl b/src/ggs_db.erl index 57ff5ac..5e5e727 100644 --- a/src/ggs_db.erl +++ b/src/ggs_db.erl @@ -64,12 +64,11 @@ clear(GameToken) -> %% Querries %%----------------------------------------------------- getItem(GameToken,Ns,Key) -> - Fun = fun() -> - [Data] = mnesia:read(data, {GameToken,Ns,Key}), - Data#data.value - end, - {atomic, Ret} = mnesia:transaction(Fun), - Ret. + Fun = fun() -> + mnesia:read(data, {GameToken,Ns,Key}) + end, + {atomic, [Ret]} = mnesia:transaction(Fun), + Ret#data.value. length(GameToken,Ns) -> Fun = fun() -> From a544484f1a25cefad9299ba80054d4b2906bfe87 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 17:28:41 +0100 Subject: [PATCH 083/192] Fixed problem with erlang_js make where it wouldn't make --- Makefile | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 14f07de..d40790a 100644 --- a/Makefile +++ b/Makefile @@ -10,8 +10,8 @@ compile: mkdir -p $(BEAMDIR) ; $(ERLC) $(ERLCFLAGS) $(BEAMDIR) $(SRCDIR)/*.erl ; -erlang_js: - $(MAKE) -C erlang_js/ ; +erlang_js: force_look + cd erlang_js ; $(MAKE) $(MFLAGS); test: echo "==> test $(MOD)" ; @@ -40,4 +40,5 @@ run: -pa src \ -s start_ggs - \ No newline at end of file +force_look: + true \ No newline at end of file From 4591a29c21e5e36a79720f44a49b84dab53e06e7 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 19:48:07 +0100 Subject: [PATCH 084/192] removed unnecessary files --- HOWTO | 21 --------------------- build | 6 ------ build_test | 8 -------- client | 17 ----------------- echo_test | 20 -------------------- mnesia/.gamedb.erl.swp | Bin 12288 -> 0 bytes mnesia/build_db | 4 ---- mnesia/build_test_db | 4 ---- mnesia/gamedb.hrl | 6 ------ mnesia/gamedb_usage.txt | 12 ------------ mnesia/test_db | 3 --- start | 3 --- start_test | 3 --- start_test_shell | 3 --- 14 files changed, 110 deletions(-) delete mode 100644 HOWTO delete mode 100755 build delete mode 100755 build_test delete mode 100644 client delete mode 100755 echo_test delete mode 100644 mnesia/.gamedb.erl.swp delete mode 100755 mnesia/build_db delete mode 100755 mnesia/build_test_db delete mode 100644 mnesia/gamedb.hrl delete mode 100644 mnesia/gamedb_usage.txt delete mode 100755 mnesia/test_db delete mode 100755 start delete mode 100755 start_test delete mode 100755 start_test_shell diff --git a/HOWTO b/HOWTO deleted file mode 100644 index 2d28ea8..0000000 --- a/HOWTO +++ /dev/null @@ -1,21 +0,0 @@ -PREREQUISITES: -python version 2.x set to default. - -INSTALL -1. Cd into directory where you to have the project -2. git clone git@github.com:jeena/GGS.git (remember to have a local key) -3. cd GGS/ -4. git submodule init -5. git submodule update -6. cd erlang_js -7. make -8. make test (Optional. It has to work though.) -10. cd ../ -11. ./build -12. - -USAGE -1. start a second terminal -2. in new terminal do command: ./python_client 9000 -3. back to first terminal -4. ./start diff --git a/build b/build deleted file mode 100755 index a9c1c79..0000000 --- a/build +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/env bash - -for i in `find src -name "*.erl"` -do - erlc -o ebin $i -done \ No newline at end of file diff --git a/build_test b/build_test deleted file mode 100755 index 2f9d630..0000000 --- a/build_test +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/env bash - -./build - -for i in `find tests -name "*.erl"` -do - erlc -o ebin_test $i -done diff --git a/client b/client deleted file mode 100644 index dff11aa..0000000 --- a/client +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/env ruby -wKU - -require 'socket' # Sockets are in standard library - -hostname = 'localhost' -port = 7000 - -s = TCPSocket.open(hostname, port) - - - -s.print(q.chop) - -while line = s.gets # Read lines from the socket - puts "Got Echo: " + line.chop # And print with platform line terminator -end -s.close # Close the socket when done diff --git a/echo_test b/echo_test deleted file mode 100755 index 1bbff1f..0000000 --- a/echo_test +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env ruby -wKU - -require 'socket' # Sockets are in standard library - -hostname = 'localhost' -port = 7000 - -print "Which port @ loclhost?" -port = gets - -s = TCPSocket.open(hostname, port.chop) - -s.print("__hello 0") - -while true - line = s.gets # Read lines from the socket - puts ">> " + line.chop # And print with platform line terminator - s.print(gets.chop) -end -s.close # Close the socket when done diff --git a/mnesia/.gamedb.erl.swp b/mnesia/.gamedb.erl.swp deleted file mode 100644 index 469b1f85b2ecf7663f6f99f957c41243aa53c9d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12288 zcmeI2zfTlF6vqcEQBk9XjV9wE^c~uUwxG9A3wj3SpnmAjS;oFXpP_fq7W5WsLG#cJs2}=` z*tenA&^%Ow94N`@1lEK?CIUo&2oM1xKm>@u|3rXec*zmXaifJFiH1>upT8UXg)*~~ z>5#r#WV<)}R~3ve1=%yL;PBeT2;Jn`8LfGIzc+H@1JWO|Mq+22omqCbw2|9xebwV&MdL9H&}jaz%JyTka;4q><#@S!BC3>)Gzy4_c#PjEwfs92d$g zeDw@9$s((11KAk4Xhgj&_xgNpO&Ft9Jx0hyu4N<8?xOOSg8Y(_Z5Pkd9xtpfAbI60 zlk|Vj0invbZ5$|a&pud5`Hgn$%6u+6_TAF$9KtKfl`zmIKWF2tIK{3yRjS4AN?}1q zeKFlpwTffYEh!vShrbk{ec%Od40`En@qpXv@LICLF(fp^C$W{KAKaj^+l+SvsEbH) z>}FiYzERkptP}oRXk`n+an@anrYxtnjUZgrs@XD}k2uvTuc1mxM0`dXBXtxd^zbqf jn-*N!@$V9T6Fa9h3+=0-$)+b%yW9vo`z7sdlVX1X$Qr-k diff --git a/mnesia/build_db b/mnesia/build_db deleted file mode 100755 index 0aa2042..0000000 --- a/mnesia/build_db +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash - - erlc -o . ggs_db.erl - erlc -o . ggs_db_test.erl diff --git a/mnesia/build_test_db b/mnesia/build_test_db deleted file mode 100755 index f5aa938..0000000 --- a/mnesia/build_test_db +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash - -./build_db -./test_db diff --git a/mnesia/gamedb.hrl b/mnesia/gamedb.hrl deleted file mode 100644 index 1ae9c8f..0000000 --- a/mnesia/gamedb.hrl +++ /dev/null @@ -1,6 +0,0 @@ -%% gamedb.hrl - --record(player, {id, name}). - - - diff --git a/mnesia/gamedb_usage.txt b/mnesia/gamedb_usage.txt deleted file mode 100644 index b3a07a0..0000000 --- a/mnesia/gamedb_usage.txt +++ /dev/null @@ -1,12 +0,0 @@ -1. From terminal: erl -mnesia dir '"/home/user/dir/to/GGS/GameDB.Player"' -2. mnesia:create_schema([node()]). -3. mnesia:start(). -4. c(gamedb). -5. gamedb:init(). -6. mnesia:info(). -7. gamedb:test_player(). - -Last output should be: - Player name: Tux - {atomic,ok} - diff --git a/mnesia/test_db b/mnesia/test_db deleted file mode 100755 index 958b005..0000000 --- a/mnesia/test_db +++ /dev/null @@ -1,3 +0,0 @@ -#!/usr/bin/env bash - -erl -eval 'eunit:test(ggs_db_test), q().' diff --git a/start b/start deleted file mode 100755 index 6de5737..0000000 --- a/start +++ /dev/null @@ -1,3 +0,0 @@ -#!/usr/bin/env bash - -erl -sname ggs -mnesia -boot start_sasl -pa erlang_js/ebin/ -pa ebin -pa src -s start_ggs diff --git a/start_test b/start_test deleted file mode 100755 index 76050c1..0000000 --- a/start_test +++ /dev/null @@ -1,3 +0,0 @@ -#!/usr/bin/env bash - -erl -boot start_sasl -pa ebin_test -pa erlang_js/ebin/ -pa ebin -pa src -eval 'ggs_coordinator_test:test().' diff --git a/start_test_shell b/start_test_shell deleted file mode 100755 index f2135c4..0000000 --- a/start_test_shell +++ /dev/null @@ -1,3 +0,0 @@ -#!/usr/bin/env bash - -erl -boot start_sasl -pa ebin_test -pa erlang_js/ebin/ -pa erlv8/ebin -pa ebin -pa src From c38b2120abf774537410a0b4c7632a6771cf8888 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 19:48:33 +0100 Subject: [PATCH 085/192] merged with HOWTO --- README | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/README b/README index 853cc89..9aa5357 100644 --- a/README +++ b/README @@ -1,3 +1,35 @@ GGS is a Generic Game Server -Check out http://ggs-kandidat.blogspot.com/ \ No newline at end of file +Check out http://ggs-kandidat.blogspot.com/ + +PREREQUISITES: +python version 2.x set to default. + +INSTALL +1. cd into directory where you to have the project +2. git clone git@github.com:jeena/GGS.git (remember to have a local key) +3. cd GGS/ +4. git submodule init +5. git submodule update + +USAGE +1. start a second terminal +2. in new terminal do command: ./python_client 9000 +3. back to first terminal +4. make run + +MAKE +To compile modules (even erlang_js): + make + +To run server: + make run + +To clean (even erlang_js): + make clean + +To compile and run all tests: + make test + +To compile and run one test: + make test MOD=ggs_modulename # (must have /tests/ggs_modulename_test.erl) From 8a1a520ac0e2760835318c75b3d7981d3c545ae9 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 19:49:57 +0100 Subject: [PATCH 086/192] moved tests to own file --- src/ggs_gamevm.erl | 31 ------------------------------- tests/ggs_gamevm_test.erl | 31 +++++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 31 deletions(-) create mode 100644 tests/ggs_gamevm_test.erl diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 6dd19a7..babee27 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -97,34 +97,3 @@ code_change(_OldVsn, State, _Extra) -> js_escape(S) -> lists:flatmap(fun($\') -> [$\\, $\']; (X) -> [X] end, S). -%% ---------------------------------------------------------------------- -% Tests - -start_link_test() -> - erlang_js:start(), %% @TODO: should only be done once - GameVM = start_link(test_table), - ?assertNot(GameVM =:= undefined). - -define_test() -> - GameVM = start_link(test_table), - define(GameVM, "function hello(test) { return test; }"), - ?assertMatch(<<"jeena">>, gen_server:call(GameVM, {eval, "hello('jeena')"})). - -stop_test() -> - GameVM = start_link(test_table), - ok = stop(GameVM). - -user_command_test() -> - GameVM = start_link(test_table), - define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = user + command + args; }\n"), - user_command(GameVM, "'jeena", "thecommand", "theargs'"), - ?assertMatch(<<"'jeenathecommandtheargs'">>, gen_server:call(GameVM, {eval, "t;"})). - -js_erlang_test() -> - GameVM = start_link(test_table), - define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = callErlang('erlang time') + ''; }\n"), - user_command(GameVM, "", "", ""), - {A, B, C} = erlang:time(), - T = "{" ++ integer_to_list(A) ++ ", " ++ integer_to_list(B) ++ ", " ++ integer_to_list(C) ++ "}", - ?assertMatch(T, binary_to_list(gen_server:call(GameVM, {eval, "t;"}))). - diff --git a/tests/ggs_gamevm_test.erl b/tests/ggs_gamevm_test.erl new file mode 100644 index 0000000..1689dd1 --- /dev/null +++ b/tests/ggs_gamevm_test.erl @@ -0,0 +1,31 @@ +-module(ggs_gamevm_test). +-include_lib("eunit/include/eunit.hrl"). + +start_link_test() -> + erlang_js:start(), %% @TODO: should only be done once + GameVM = start_link(test_table), + ?assertNot(GameVM =:= undefined). + +define_test() -> + GameVM = start_link(test_table), + define(GameVM, "function hello(test) { return test; }"), + ?assertMatch(<<"jeena">>, gen_server:call(GameVM, {eval, "hello('jeena')"})). + +stop_test() -> + GameVM = start_link(test_table), + ok = stop(GameVM). + +user_command_test() -> + GameVM = start_link(test_table), + define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = user + command + args; }\n"), + user_command(GameVM, "'jeena", "thecommand", "theargs'"), + ?assertMatch(<<"'jeenathecommandtheargs'">>, gen_server:call(GameVM, {eval, "t;"})). + +js_erlang_test() -> + GameVM = start_link(test_table), + define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = callErlang('erlang time') + ''; }\n"), + user_command(GameVM, "", "", ""), + {A, B, C} = erlang:time(), + T = "{" ++ integer_to_list(A) ++ ", " ++ integer_to_list(B) ++ ", " ++ integer_to_list(C) ++ "}", + ?assertMatch(T, binary_to_list(gen_server:call(GameVM, {eval, "t;"}))). + From 21b2b9aeda38e84280ee9d0b9e1c451e89043567 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 22 Feb 2011 19:51:48 +0100 Subject: [PATCH 087/192] readded tests after fix --- tests/ggs_db_test.erl | 54 ++++++++++++++++++------------------------- 1 file changed, 23 insertions(+), 31 deletions(-) diff --git a/tests/ggs_db_test.erl b/tests/ggs_db_test.erl index dcebdb9..0ee4686 100644 --- a/tests/ggs_db_test.erl +++ b/tests/ggs_db_test.erl @@ -12,39 +12,31 @@ getItem_setItem_test() -> ggs_db:init(), ggs_db:setItem("dbname","nsname","keyname1","Hello"), - ggs_db:setItem("dbname","nsname","keyname2","Hello"), - ggs_db:setItem("dbname","nsname","keyname3","Hello"), - %system:wait(2000), - ggs_db:getItem("dbname","nsname","keyname"). + ggs_db:setItem("dbname","nsname","keyname2","Hello2"), + ggs_db:setItem("dbname2","nsname","keyname1","Hello3"), + ggs_db:setItem("dbname2","nsname","keyname1","Hello4"), + ggs_db:setItem("dbname3","nsname","keyname1","Hello5"), + "Hello" = ggs_db:getItem("dbname","nsname","keyname1"). -%length_test() -> -% ggs_db:setItem(1,1,2,"112"), -% ggs_db:setItem(1,2,2,"122"), -% ggs_db:setItem(1,1,3,"113"), -% ggs_db:setItem(1,1,4,"114"), -% ?assertEqual(ggs_db:length(1,1), 3). +length_test() -> + ggs_db:setItem(1,1,2,"112"), + ggs_db:setItem(1,2,2,"122"), + ggs_db:setItem(1,1,3,"113"), + ggs_db:setItem(1,1,4,"114"), + ?assertEqual(ggs_db:length(1,1), 3). -%removeItem_test() -> -% ggs_db:removeItem(1,1,4), -% ?assertNot(ggs_db:getItem(1,1,4) =:= {atomic,"114"}). +removeItem_test() -> + ggs_db:removeItem(1,1,4), + ?assertNot(ggs_db:getItem(1,1,4) =:= "114"). -%key_test() -> -% ?assert(ggs_db:key(1,1,2) =:= {1,1,3}). +key_test() -> + ?assert(ggs_db:key(1,1,2) =:= {1,1,3}). -%clear_test() -> -% ggs_db:clear(1,1), -% ?assert(ggs_db:length(1,1) =:= 0). - -%clear_GameToken_test() -> -% ggs_db:clear(1), -% ?assert((ggs_db:length(1,1) + ggs_db:length(1,2)) =:= 0), -% ggs_db:stop(). - -%tests() -> -% ggs_db_test(). - -%ggs_db_test() -> -% ggs_db:set(0, "Hello"), - %io:format("~s",[Val]), -% ?assertMatch({atomic,"Hello"},ggs_db:get(0)). +clear_test() -> + ggs_db:clear(1,1), + ?assert(ggs_db:length(1,1) =:= 0). +clear_GameToken_test() -> + ggs_db:clear(1), + ?assert((ggs_db:length(1,1) + ggs_db:length(1,2)) =:= 0), + ggs_db:stop(). From 0aac25cd42c89d6b70c9b49e3adfefa521992058 Mon Sep 17 00:00:00 2001 From: niklas Date: Wed, 23 Feb 2011 22:29:10 +0100 Subject: [PATCH 088/192] Fixed getItem in ggs_db --- src/ggs_db.erl | 20 +++++++++--------- tests/ggs_db_test.erl | 47 ++++++++++++++++++++++++------------------- 2 files changed, 36 insertions(+), 31 deletions(-) diff --git a/src/ggs_db.erl b/src/ggs_db.erl index 5e5e727..29665a3 100644 --- a/src/ggs_db.erl +++ b/src/ggs_db.erl @@ -41,7 +41,6 @@ removeItem(GameToken,Ns,Key) -> end, mnesia:transaction(Fun). - clear(GameToken,Ns) -> Fun = fun() -> Keys = mnesia:all_keys(data), @@ -61,14 +60,18 @@ clear(GameToken) -> Ret. %%----------------------------------------------------- -%% Querries +%% Queries %%----------------------------------------------------- getItem(GameToken,Ns,Key) -> - Fun = fun() -> - mnesia:read(data, {GameToken,Ns,Key}) - end, - {atomic, [Ret]} = mnesia:transaction(Fun), - Ret#data.value. + Fun = fun() -> + mnesia:read(data, {GameToken,Ns,Key}) + end, + case mnesia:transaction(Fun) of + {atomic, []} -> + {error}; + {atomic, [Ret]} -> + Ret#data.value +end. length(GameToken,Ns) -> Fun = fun() -> @@ -86,6 +89,3 @@ key(GameToken,Ns,Position) -> end, {atomic, Ret} = mnesia:transaction(Fun), Ret. - - - diff --git a/tests/ggs_db_test.erl b/tests/ggs_db_test.erl index 0ee4686..f2608f1 100644 --- a/tests/ggs_db_test.erl +++ b/tests/ggs_db_test.erl @@ -9,34 +9,39 @@ %Key should be a tuple of two elements -getItem_setItem_test() -> - ggs_db:init(), - ggs_db:setItem("dbname","nsname","keyname1","Hello"), - ggs_db:setItem("dbname","nsname","keyname2","Hello2"), - ggs_db:setItem("dbname2","nsname","keyname1","Hello3"), - ggs_db:setItem("dbname2","nsname","keyname1","Hello4"), - ggs_db:setItem("dbname3","nsname","keyname1","Hello5"), - "Hello" = ggs_db:getItem("dbname","nsname","keyname1"). +getItem_setItem_test() -> + ggs_db:init(), + ggs_db:setItem("dbname","nsname","keyname1","Hello"), + ggs_db:setItem("dbname","nsname","keyname2","Hello2"), + ggs_db:setItem("dbname2","nsname","keyname1","Hello3"), + ggs_db:setItem("dbname2","nsname","keyname1","Hello4"), + ggs_db:setItem("dbname3","nsname","keyname1","Hello5"), + "Hello" = ggs_db:getItem("dbname","nsname","keyname1"). +%Test the length function of our database length_test() -> - ggs_db:setItem(1,1,2,"112"), - ggs_db:setItem(1,2,2,"122"), - ggs_db:setItem(1,1,3,"113"), - ggs_db:setItem(1,1,4,"114"), - ?assertEqual(ggs_db:length(1,1), 3). + ggs_db:setItem(1,1,2,"112"), + ggs_db:setItem(1,2,2,"122"), + ggs_db:setItem(1,1,3,"113"), + ggs_db:setItem(1,1,4,"114"), + ?assertEqual(ggs_db:length(1,1), 3). +%Test if we can remove correctly from the database removeItem_test() -> - ggs_db:removeItem(1,1,4), - ?assertNot(ggs_db:getItem(1,1,4) =:= "114"). + ggs_db:removeItem(1,1,4), + ?assertNot(ggs_db:getItem(1,1,4) =:= "114"). +%Test the key function key_test() -> - ?assert(ggs_db:key(1,1,2) =:= {1,1,3}). + ?assert(ggs_db:key(1,1,2) =:= {1,1,2}). +%Test the clear function(for gametoken and ns) clear_test() -> - ggs_db:clear(1,1), - ?assert(ggs_db:length(1,1) =:= 0). + ggs_db:clear(1,1), + ?assert(ggs_db:length(1,1) =:= 0). +%Test the clear function(gametoken) clear_GameToken_test() -> - ggs_db:clear(1), - ?assert((ggs_db:length(1,1) + ggs_db:length(1,2)) =:= 0), - ggs_db:stop(). + ggs_db:clear(1), + ?assert((ggs_db:length(1,1) + ggs_db:length(1,2)) =:= 0), + ggs_db:stop(). From 191c46422020c84d008b0c6efbe2d83f16248c6e Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 24 Feb 2011 12:58:16 +0100 Subject: [PATCH 089/192] added ggs_gamevm: --- erlang_js | 2 +- src/ggs_db.hrl | 5 ----- tests/ggs_gamevm_test.erl | 22 +++++++++++----------- 3 files changed, 12 insertions(+), 17 deletions(-) delete mode 100644 src/ggs_db.hrl diff --git a/erlang_js b/erlang_js index 5350ed2..709b568 160000 --- a/erlang_js +++ b/erlang_js @@ -1 +1 @@ -Subproject commit 5350ed21606606dbee5ecb07e974f2abb9106270 +Subproject commit 709b568efbc99c954507d1593bc5633f900bc5dc diff --git a/src/ggs_db.hrl b/src/ggs_db.hrl deleted file mode 100644 index b7f1f4c..0000000 --- a/src/ggs_db.hrl +++ /dev/null @@ -1,5 +0,0 @@ -%% gamedb.hrl - --record(data, {key, value}). - - diff --git a/tests/ggs_gamevm_test.erl b/tests/ggs_gamevm_test.erl index 1689dd1..3560fb9 100644 --- a/tests/ggs_gamevm_test.erl +++ b/tests/ggs_gamevm_test.erl @@ -3,28 +3,28 @@ start_link_test() -> erlang_js:start(), %% @TODO: should only be done once - GameVM = start_link(test_table), + GameVM = ggs_gamevm:start_link(test_table), ?assertNot(GameVM =:= undefined). define_test() -> - GameVM = start_link(test_table), - define(GameVM, "function hello(test) { return test; }"), + GameVM = ggs_gamevm:start_link(test_table), + ggs_gamevm:define(GameVM, "function hello(test) { return test; }"), ?assertMatch(<<"jeena">>, gen_server:call(GameVM, {eval, "hello('jeena')"})). stop_test() -> - GameVM = start_link(test_table), - ok = stop(GameVM). + GameVM = ggs_gamevm:start_link(test_table), + ok = ggs_gamevm:stop(GameVM). user_command_test() -> - GameVM = start_link(test_table), - define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = user + command + args; }\n"), - user_command(GameVM, "'jeena", "thecommand", "theargs'"), + GameVM = ggs_gamevm:start_link(test_table), + ggs_gamevm:define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = user + command + args; }\n"), + ggs_gamevm:user_command(GameVM, "'jeena", "thecommand", "theargs'"), ?assertMatch(<<"'jeenathecommandtheargs'">>, gen_server:call(GameVM, {eval, "t;"})). js_erlang_test() -> - GameVM = start_link(test_table), - define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = callErlang('erlang time') + ''; }\n"), - user_command(GameVM, "", "", ""), + GameVM = ggs_gamevm:start_link(test_table), + ggs_gamevm:define(GameVM, "var t = '';\nfunction userCommand(user, command, args) { t = callErlang('erlang time') + ''; }\n"), + ggs_gamevm:user_command(GameVM, "", "", ""), {A, B, C} = erlang:time(), T = "{" ++ integer_to_list(A) ++ ", " ++ integer_to_list(B) ++ ", " ++ integer_to_list(C) ++ "}", ?assertMatch(T, binary_to_list(gen_server:call(GameVM, {eval, "t;"}))). From 84f777f12c406aabca245d811d171ca74bed1900 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 24 Feb 2011 13:00:20 +0100 Subject: [PATCH 090/192] added erlang_js path to test --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index d40790a..a4934f9 100644 --- a/Makefile +++ b/Makefile @@ -18,10 +18,10 @@ test: mkdir -p $(BEAMDIR) ; ifeq ($(strip $(MOD)),) $(ERLC) $(ERLCFLAGS) $(BEAMDIR) $(TESTDIR)/*.erl ; - cd $(BEAMDIR) ; erl -noinput -eval 'eunit:test({dir, "."}, [verbose]), init:stop()' ; + cd $(BEAMDIR) ; erl -noinput -pa ../erlang_js/ebin -eval 'eunit:test({dir, "."}, [verbose]), init:stop()' ; else $(ERLC) $(ERLCFLAGS) $(BEAMDIR) $(TESTDIR)/$(MOD)_test.erl ; - cd $(BEAMDIR) ; erl -noinput -eval 'eunit:test($(MOD)_test, [verbose]), init:stop()' ; + cd $(BEAMDIR) ; erl -noinput -pa ../erlang_js/ebin -eval 'eunit:test($(MOD)_test, [verbose]), init:stop()' ; endif clean: From 87df33fd477bd8d08c03d72670ca0faa3546d2e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Thu, 24 Feb 2011 22:22:32 +0100 Subject: [PATCH 091/192] Now we can crash ggs_coordinator without it affecting the clients. --- src/ggs_coordinator.erl | 29 +++++++++++---- src/ggs_coordinator_backup.erl | 65 ++++++++++++++++++++++++++++++++++ src/ggs_sup.erl | 9 ++++- src/ggs_table.erl | 9 +++-- 4 files changed, 100 insertions(+), 12 deletions(-) create mode 100644 src/ggs_coordinator_backup.erl diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 535b9b0..ba65c5a 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -53,13 +53,26 @@ remove_player(_From, _Player) -> %gen_server:cast(ggs_coordinator, {remove_player, Player}). ggs_logger:not_implemented(). +%% Just to shorten the name +back_up(State) -> + ggs_coordinator_backup:back_up(State), + State. + %% gen_server callbacks init([]) -> - {ok, #co_state{}}. + % Restore old state from backup if there is old state stored there + case ggs_coordinator_backup:retrieve() of + no_state_stored -> + io:format("No old state stored.. Creating new!~n"), + {ok, #co_state{}}; + State -> + {ok, State} + end. handle_call(join_lobby, _From, State) -> Token = helpers:get_new_token(), + back_up(State), {reply, {ok, Token}, State}; handle_call({join_table, Table}, From, State) -> @@ -68,19 +81,23 @@ handle_call({join_table, Table}, From, State) -> case lists:keyfind(Table, 1, Tables) of {_TableID, TablePID} -> ggs_table:add_player(TablePID, FromPlayer), + back_up(State), {reply, {ok, TablePID}, State}; false -> + back_up(State), {reply, {error, no_such_table}, State} end; handle_call({create_table, {force, TableID}}, From, State) -> TableIDMap = State#co_state.player_table_map, Tables = State#co_state.tables, - NewTableProc = ggs_table:start_link(), - {reply, {ok, TableID}, State#co_state{ - player_table_map = [{From, TableID} | TableIDMap], - tables = [{TableID, NewTableProc} | Tables] - }}; + NewTableProc = ggs_table:start(), % With start_link, the table dies with the coordinator + NewState = State#co_state{ + player_table_map = [{From, TableID} | TableIDMap], + tables = [{TableID, NewTableProc} | Tables] + }, + back_up(NewState), + {reply, {ok, TableID}, NewState}; handle_call(_Message, _From, State) -> {noreply, State}. diff --git a/src/ggs_coordinator_backup.erl b/src/ggs_coordinator_backup.erl new file mode 100644 index 0000000..e42fe48 --- /dev/null +++ b/src/ggs_coordinator_backup.erl @@ -0,0 +1,65 @@ +-module(ggs_coordinator_backup). + +-behaviour(gen_server). + +%% API Exports +-export([start_link/0, stop/1]). +-export([back_up/1, retrieve/0]). + +%% gen_server callback exports +-export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, + code_change/3]). + +-define(SERVER, ?MODULE). + +%% @doc This module is repsponsible for keeping a backup of the coodinator +%% at all times. At any point in time a backup can be restored from this +%% module. +%% This module is started by the root supervisor, and is restarted when it +%% crashes. Upon a crash, the backup state is lost in this module, and must +%% be filled in from the ggs_coordinator. + +%% @doc Start a new ggs_coordinator backup instance, and register it under +%% this name. This means that there can only be one instance of this module +%% running. +start_link() -> + gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). + +%% @doc Stops the server with the specified reason. +%% @spec stop(Reason) -> ok. +%% Reason = String +stop(_Reason) -> ggs_logger:not_implemented(). + +%% API +back_up(State) -> + gen_server:cast(?SERVER, State). + +%% @doc Retrieve the state stored in this server. If there is a state stored +%% here, it is returned to the caller. If the backup server does not have a +%% state stored, it will return the no_state_stored atom. +retrieve() -> + gen_server:call(?SERVER, retrieve). + +%% gen_server callbacks + +%% @doc Initiate the server. This is called from gen_server +init([]) -> + {ok, no_state_stored}. + +handle_call(retrieve, _From, State) -> + {reply, State, State}. + +handle_cast(NewState, _State) -> + {noreply, NewState}. + +handle_info(Msg, State) -> + io:format("Received out of bounds message! "), + erlang:display(Msg), + io:format("~n"), + {noreply, State}. + +terminate(normal, _State) -> + ok. + +code_change(_OldVsn, State, _Extra) -> + {ok, State}. diff --git a/src/ggs_sup.erl b/src/ggs_sup.erl index 05fab65..2e5c2ef 100644 --- a/src/ggs_sup.erl +++ b/src/ggs_sup.erl @@ -26,7 +26,14 @@ init([Port]) -> worker, [ggs_coordinator] }, - Children = [Dispatcher, Coordinator], + Coordinator_backup = {ggs_coordinator_backup, + {ggs_coordinator_backup, start_link, []}, + permanent, + 2000, + worker, + [ggs_coordinator_backup] + }, + Children = [Dispatcher, Coordinator_backup, Coordinator], RestartStrategy = { one_for_one, % Restart only crashing child 10, % Allow ten crashes per.. diff --git a/src/ggs_table.erl b/src/ggs_table.erl index d6d2988..dbd16f7 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -11,7 +11,7 @@ -record(state, { players, game_vm } ). %% API --export([start_link/0, +-export([start/0, add_player/2, remove_player/2, stop/1, @@ -24,8 +24,8 @@ % API implementation % @doc returns a new table -start_link() -> - {ok, Pid} = gen_server:start_link(?MODULE, [], []), +start() -> + {ok, Pid} = gen_server:start(?MODULE, [], []), Pid. %% @private @@ -56,14 +56,13 @@ notify_all_players(Table, Message) -> gen_server:cast(Table, {notify_all_players, Message}). notify_game(Table, From, Message) -> - erlang:display(Table), - io:format("~n"), gen_server:cast(Table, {notify_game, Message, From}). %% ---------------------------------------------------------------------- %% @private init([]) -> + process_flag(trap_exit, true), GameVM = ggs_gamevm_e:start_link(self()), %% @TODO: Temporary erlang gamevm {ok, #state { game_vm = GameVM, From c4f244e7780fb982625be65827ebdaaaffe22fe4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Thu, 24 Feb 2011 23:07:58 +0100 Subject: [PATCH 092/192] Now ggs_gamevm_e uses ggs_db so store/lookup nicks. --- games/GGSChat/calc.glade | 317 ------------------------------------ games/GGSChat/chat.py | 15 +- games/GGSChat/ggschat.glade | 1 + src/ggs_db.erl | 6 - src/ggs_gamevm_e.erl | 7 +- src/start_ggs.erl | 1 + 6 files changed, 20 insertions(+), 327 deletions(-) delete mode 100644 games/GGSChat/calc.glade diff --git a/games/GGSChat/calc.glade b/games/GGSChat/calc.glade deleted file mode 100644 index 720b7b4..0000000 --- a/games/GGSChat/calc.glade +++ /dev/null @@ -1,317 +0,0 @@ - - - - - - - - True - - - True - True - - - - False - 0 - - - - - True - 5 - 4 - - - True - True - True - - - - - / - True - True - True - - - - 1 - 2 - - - - - * - True - True - True - - - - 2 - 3 - - - - - - - True - True - True - - - - 3 - 4 - - - - - 7 - True - True - True - - - - 1 - 2 - - - - - 8 - True - True - True - - - - 1 - 2 - 1 - 2 - - - - - 9 - True - True - True - - - - 2 - 3 - 1 - 2 - - - - - + - True - True - True - - - - 3 - 4 - 1 - 2 - - - - - 4 - True - True - True - - - - 2 - 3 - - - - - 5 - True - True - True - - - - 1 - 2 - 2 - 3 - - - - - 6 - True - True - True - - - - 2 - 3 - 2 - 3 - - - - - - True - True - True - - - - 3 - 4 - 2 - 3 - - - - - 1 - True - True - True - - - - 3 - 4 - - - - - 2 - True - True - True - - - - 1 - 2 - 3 - 4 - - - - - 3 - True - True - True - - - - 2 - 3 - 3 - 4 - - - - - = - True - True - True - - - - 3 - 4 - 3 - 4 - - - - - 0 - True - True - True - - - - 4 - 5 - - - - - True - True - True - - - 1 - 2 - 4 - 5 - - - - - True - True - True - - - 2 - 3 - 4 - 5 - - - - - - True - True - True - - - - 3 - 4 - 4 - 5 - - - - - 1 - - - - - True - 2 - - - False - 2 - - - - - - diff --git a/games/GGSChat/chat.py b/games/GGSChat/chat.py index 17c30ea..0e2aeb7 100644 --- a/games/GGSChat/chat.py +++ b/games/GGSChat/chat.py @@ -26,6 +26,7 @@ class GGSChat: dic = {"on_window1_destroy_event" : gtk.main_quit , "on_sendButton_clicked" : lambda x: self.chat() , "on_entry_activate" : lambda x : self.chat() + , "on_nickBox_activate" : lambda x : self.changeNick() , "on_chatBox_focus" : lambda x, y: self.wTree.get_widget("entry").grab_focus() } @@ -34,10 +35,21 @@ class GGSChat: self.wTree.get_widget("nickBox").set_text(getpass.getuser()) self.wTree.get_widget("window1").show() self.wTree.get_widget("entry").grab_focus() + self.changeNick() def setStatus(self, msg): self.wTree.get_widget("statusbar").push(0, msg) + def changeNick(self): + params = self.wTree.get_widget("nickBox").get_text() + self.s.send("Game-Command: nick\n" + + "Token: %s\n" % self.token + + "Content-Type: text\n" + + "Content-Length: %s\n" % len(params)+ + "\n"+ + params) + + def chat(self): exp = self.wTree.get_widget("entry").get_text() nick = self.wTree.get_widget("nickBox").get_text() @@ -45,14 +57,13 @@ class GGSChat: cmdStr = exp[1:].split(" ") cmd = cmdStr[0] params = ' '.join(cmdStr[1:]) - self.s.send("Game-Command: %s\n" % exp[1:] + + self.s.send("Game-Command: %s\n" % cmd + "Token: %s\n" % self.token + "Content-Type: text\n" + "Content-Length: %s\n" % len(params)+ "\n"+ params) else: - exp = "<%s> %s" % (nick, exp) self.s.send("Game-Command: chat\n"+ "Token: %s\n" % self.token + "Content-Type: text\n"+ diff --git a/games/GGSChat/ggschat.glade b/games/GGSChat/ggschat.glade index ac4e9cb..e4482da 100644 --- a/games/GGSChat/ggschat.glade +++ b/games/GGSChat/ggschat.glade @@ -38,6 +38,7 @@ 10 Anonymous + False diff --git a/src/ggs_db.erl b/src/ggs_db.erl index 29665a3..4dcf5c1 100644 --- a/src/ggs_db.erl +++ b/src/ggs_db.erl @@ -1,9 +1,3 @@ -%%%%---------------------------------------------------- -%%% @author Mattias Pettersson -%%% @copyright 2011 Mattias Pettersson -%%% @doc Database for runtime game variable storage. -%%% @end - -module(ggs_db). -export([init/0,stop/0,setItem/4,getItem/3,removeItem/3,key/3,clear/2,clear/1,length/2]). %-include("ggs_db.hrl"). diff --git a/src/ggs_gamevm_e.erl b/src/ggs_gamevm_e.erl index 3cc6b17..c8c5f2a 100644 --- a/src/ggs_gamevm_e.erl +++ b/src/ggs_gamevm_e.erl @@ -46,14 +46,17 @@ do_stuff(Command, Args, Player, Table) -> "greet" -> ggs_player:notify(Player, server, "Hello there!\n"); "chat" -> - ggs_table:notify_all_players(Table, Args ++ "\n"); + Nick = ggs_db:getItem(Table, nicks, Player), + ggs_table:notify_all_players(Table, "<"++Nick++"> "++ Args ++ "\n"); "uname" -> Uname = os:cmd("uname -a"), ggs_player:notify(Player, server, Uname); "lusers" -> {ok, Players} = ggs_table:get_player_list(Table), - ggs_player:notify(Player, server,io_lib:format("~p\n",[Players])); + Nicks = lists:map(fun (P) -> ggs_db:getItem(Table, nicks, P) end, Players), + ggs_player:notify(Player, server,io_lib:format("~p\n",[Nicks])); "nick" -> + ggs_db:setItem(Table,nicks,Player,Args), io:format("Changing nickname of ~p to ~p.", [Player, Args]); _Other -> ggs_player:notify(Player, server, "I don't know that command..\n") diff --git a/src/start_ggs.erl b/src/start_ggs.erl index 3955715..3f2f23b 100644 --- a/src/start_ggs.erl +++ b/src/start_ggs.erl @@ -4,4 +4,5 @@ start() -> application:start(inets), application:start(erlang_js), + ggs_db:init(), application:start(ggs). From 7de4fc58cd0c8fc3df1088878bb9435194b529b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Fri, 25 Feb 2011 00:05:28 +0100 Subject: [PATCH 093/192] Added user list + some cosmetics to GGSChat --- games/GGSChat/chat.py | 34 ++++++++++- games/GGSChat/ggschat.glade | 109 +++++++++++++++++++++++++++++++++--- src/ggs_gamevm_e.erl | 2 +- 3 files changed, 134 insertions(+), 11 deletions(-) diff --git a/games/GGSChat/chat.py b/games/GGSChat/chat.py index 0e2aeb7..a56f915 100644 --- a/games/GGSChat/chat.py +++ b/games/GGSChat/chat.py @@ -1,6 +1,6 @@ #!/usr/bin/env python -import sys, socket, thread, gobject, getpass +import sys, socket, thread, gobject, getpass, time try: import pygtk pygtk.require("2.16") @@ -16,12 +16,14 @@ class GGSChat: def __init__(self,host, port): #Set the Glade file + self.nicksListStore = gtk.ListStore(str) self.gladefile = "ggschat.glade" self.wTree = gtk.glade.XML(self.gladefile, "window1") self.setStatus("Not connected") self.connect(host, port) thread.start_new_thread(self.listenChat, ()) + thread.start_new_thread(self.luserCheck, ()) #Create our dictionay and connect it dic = {"on_window1_destroy_event" : gtk.main_quit , "on_sendButton_clicked" : lambda x: self.chat() @@ -35,7 +37,15 @@ class GGSChat: self.wTree.get_widget("nickBox").set_text(getpass.getuser()) self.wTree.get_widget("window1").show() self.wTree.get_widget("entry").grab_focus() + nicksList = self.wTree.get_widget("nicksList") self.changeNick() + nicksList.set_model(self.nicksListStore) +# self.nicksListStore.append(["Test!"]) + + rendererText = gtk.CellRendererText() + column = gtk.TreeViewColumn("Participants", rendererText, text=0) + column.set_sort_column_id(0) + nicksList.append_column(column) def setStatus(self, msg): self.wTree.get_widget("statusbar").push(0, msg) @@ -90,10 +100,30 @@ class GGSChat: while True: line = fs.readline() print "Received: ", line - gobject.idle_add(self.updateChatText, line) + if line.split(" ")[0] == "LUSERS": + gobject.idle_add(self.updateUsers, line) + else: + gobject.idle_add(self.updateChatText, line) def updateChatText(self, text): self.wTree.get_widget("chatBox").get_buffer().insert_at_cursor(text) + + def luserCheck(self): + while True: + self.s.send("Game-Command: lusers\n" + + "Token: %s\n" % self.token + + "Content-Type: text\n" + + "Content-Length: 0\n"+ + "\n") + time.sleep(2) + + def updateUsers(self, text): + nicks = ' '.join(text.split(" ")[1:]) + evalNicks = eval(nicks) + self.nicksListStore.clear() + for nick in evalNicks: + self.nicksListStore.append([nick]) + if __name__ == "__main__": host = "localhost" port = 9000 diff --git a/games/GGSChat/ggschat.glade b/games/GGSChat/ggschat.glade index e4482da..ed39607 100644 --- a/games/GGSChat/ggschat.glade +++ b/games/GGSChat/ggschat.glade @@ -10,22 +10,115 @@ True - + True + True - + + True + _File + True + + + True + True + + + Connect to ... + True + True + False + + + True + gtk-missing-image + + + + + + + True + + + + + gtk-quit + True + True + True + + + + + + + + + True + _Help + True + + + True + True + + + gtk-about + True + True + True + + + + + + + + + False + 0 + + + + + True + True + + True True - False - + automatic + automatic + + + 412 + True + True + False + + + - 0 + True + False + + + + + True + True + 1 + + + False + True - 0 + 1 @@ -74,7 +167,7 @@ False False - 1 + 2 @@ -84,7 +177,7 @@ False - 2 + 3 diff --git a/src/ggs_gamevm_e.erl b/src/ggs_gamevm_e.erl index c8c5f2a..08f9855 100644 --- a/src/ggs_gamevm_e.erl +++ b/src/ggs_gamevm_e.erl @@ -54,7 +54,7 @@ do_stuff(Command, Args, Player, Table) -> "lusers" -> {ok, Players} = ggs_table:get_player_list(Table), Nicks = lists:map(fun (P) -> ggs_db:getItem(Table, nicks, P) end, Players), - ggs_player:notify(Player, server,io_lib:format("~p\n",[Nicks])); + ggs_player:notify(Player, server,io_lib:format("LUSERS ~p\n",[Nicks])); "nick" -> ggs_db:setItem(Table,nicks,Player,Args), io:format("Changing nickname of ~p to ~p.", [Player, Args]); From bf972de0b54a9402b8fda2e16890076edd87f841 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Fri, 25 Feb 2011 20:01:40 +0100 Subject: [PATCH 094/192] changed user to player and added first try of the javascript api --- src/ggs_api.js | 177 +++++++++++++++++++++++++++++++++++++++++++ src/ggs_gamevm.erl | 16 ++-- src/ggs_gamevm_e.erl | 12 +-- src/ggs_table.erl | 21 +++-- 4 files changed, 206 insertions(+), 20 deletions(-) create mode 100644 src/ggs_api.js diff --git a/src/ggs_api.js b/src/ggs_api.js new file mode 100644 index 0000000..21c3ddd --- /dev/null +++ b/src/ggs_api.js @@ -0,0 +1,177 @@ +function _GGS(tableToken) { + + this.tableToken = tableToken; + + function Storage(type) { + if (type == "world" || type == "localStorage" || type == "players") { + this.type = type; + this.tableToken = tableToken; + var self = this; + + return { + setItem: function(key, value) { + if(this.type != "players") + callErlang("ggs_db setItem " + escapeErlang([self.tableToken, self.type, key, value])); + else + throw "No such method setItem()"; + }, + getItem: function(key) { + return callErlang("ggs_db getItem " + escapeErlang([self.tableToken, self.type, key])); + }, + key: function(position) { + return callErlang("ggs_db key " + escapeErlang([self.tableToken, self.type, position])); + }, + length: { + get: function() { + return callErlang("ggs_db length " + escapeErlang([self.tableToken, self.type])); + } + }, + removeItem: function(key) { + if(this.type != "players") + callErlang("ggs_db removeItem " + escapeErlang([self.tableToken, self.type, key])); + else + throw "No such method removeItem()"; + }, + clear: function() { + if(this.type != "players") + callErlang("ggs_db clear " + escapeErlang([self.tableToken, self.type])); + else + throw "No such method clear()"; + } + } + } else throw "GGS: No such storage available " + type; + } + + var world = new Storage("world"); + this.__defineGetter__("world", function() { + return world; + }); + + + var localStorage = new Storage("localStorage"); + this.__defineGetter__("localStorage", function() { + return localStorage; + }); + + var players = new Storage("players"); + this.__defineGetter__("players", function() { + return players; + }); + + var tableToken = this.tableToken; + this.__defineGetter__("tableToken", function() { + return tableToken; + }) + +} + +function _GGS.prototype.sendCommandToAll(command, args) { + var message = "{" + command + "," + args + "}"; + callErlang("ggs_table send_command_to_all " + escapeErlang([this.tableToken, message])); +} + +function _GGS.prototype.serverLog(message) { + callErlang("error_logger info_msg " + escapeErlang([message])) +} + +function escapeErlang(args) { + var str = JSON.stringify(args); + str = str.replace("'", "\\\'"); + return "'" + str "'"; +} + + + +function Player(token) { + + var playerToken = token; + this.__defineGetter__("id", function() { + return playerToken; + }); + + return { + sendCommand: function(command, args) { + callErlang("ggs_table send_command " + escapeErlang(GGS.tableToken, command, args)); + } + } +} + + + + +// ------------ Player stuff ------------- +// TODO: remove this later on + +function playerCommand(player, command, args) { + switch(command) { + case "greet": + player.sendCommand("notification", "Welcome on our server!"); + var new_nick = args; + if(validNick(new_nick)) { + newNick(new_nick); + GGS.sendCommandToAll("joined", new_nick); + } + break; + case "chat": + GGS.sendCommandToAll("chat", args); + break; + case "uname": + player.sendCommand("notice", callErlang("os cmd [\"uname -a\"]")) + break; + case "lplayers": + listUsers(player); + break; + case "nick": + if(validNick(new_nick)) { + newNick(new_nick); + GGS.sendCommandToAll("nickchange", old_nick + "," + nicks[player.id]); + } + break; + default: + player.sendCommand("error", "Command not found"); + break; + } +} + +function validNick(new_nick) { + if(new_nick.lastIndexOf(",") != -1) { + player.sendCommand("error", "Mallformed nick " + new_nick); + return false; + } + + var nicks_s = GGS.localStorage("nicks"); + var nicks = {}; + if(nicks_s != "") { // if not the first player + nicks = JSON.parse(nicks_s); + } + for (var id in nicks) { + if (nicks[id] == new_nick) { + player.sendCommand("error", "Nick " + new_nick + " is already taken"); + return false; + } + } + + return true; +} + + +function newNick(new_nick) { + var nicks_s = GGS.localStorage("nicks"); + var nicks = {}; + if(nicks_s != "") { // if not the first player + nicks = JSON.parse(nicks_s); + } + + nicks[player.id] = new_nick; + old_nick = nicks[player.id]; + GGS.localStorage.setItem("nicks", JSON.stringify(nicks)); +} + +function listUsers(player) { + var nicks = JSON.parse(GGS.localStorage.getItem("nicks")); + var nicks_a = []; + for(var id in nicks) { + nicks_a.push(nicks[id]) + } + player.sendCommand("nicklist", nicks_a.join(",")); +} diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index babee27..354e7aa 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -11,7 +11,7 @@ -record(state, { port, table } ). %% API --export([start_link/1, define/2, user_command/4, stop/1, call_js/2]). +-export([start_link/1, define/2, player_command/4, stop/1, call_js/2]). -include_lib("eunit/include/eunit.hrl"). @@ -30,15 +30,15 @@ start_link(Table) -> define(GameVM, SourceCode) -> gen_server:cast(GameVM, {define, SourceCode}). -%% @doc Execute a user command on the specified VM. This function is +%% @doc Execute a player command on the specified VM. This function is %% asynchronous, and returns ok. -%% @spec user_command(GameVM, User, Command, Args) -> ok +%% @spec player_command(GameVM, User, Command, Args) -> ok %% GameVM = process IS of VM %% Player = the player running the command %% Command = a game command to run %% Args = arguments for the Command parameter -user_command(GameVM, Player, Command, Args) -> - gen_server:cast(GameVM, {user_command, Player, Command, Args}). +player_command(GameVM, Player, Command, Args) -> + gen_server:cast(GameVM, {player_command, Player, Command, Args}). %% @private % only for tests @@ -57,6 +57,8 @@ init([Table]) -> process_flag(trap_exit, true), {ok, Port} = js_driver:new(), %% @TODO: add here default JS API instead + {ok, JSAPISourceCode} = file:read_file("ggs_api.js"), + ok = js:define(Port, JSAPISourceCode), {ok, #state { port = Port, table = Table }}. %% private @@ -69,10 +71,10 @@ handle_call({eval, SourceCode}, _From, #state { port = Port } = State) -> handle_cast({define, SourceCode}, #state { port = Port } = State) -> ok = js:define(Port, list_to_binary(SourceCode)), {noreply, State}; -handle_cast({user_command, Player, Command, Args}, #state { port = Port } = State) -> +handle_cast({player_command, Player, Command, Args}, #state { port = Port } = State) -> Arguments = string:concat("'", string:concat( string:join([js_escape(Player), js_escape(Command), js_escape(Args)], "','"), "'")), - Js = list_to_binary(string:concat(string:concat("userCommand(", Arguments), ");")), + Js = list_to_binary(string:concat(string:concat("playerCommand(", Arguments), ");")), js_driver:define_js(Port, Js), {noreply, State}; handle_cast(stop, State) -> diff --git a/src/ggs_gamevm_e.erl b/src/ggs_gamevm_e.erl index 08f9855..10dd74b 100644 --- a/src/ggs_gamevm_e.erl +++ b/src/ggs_gamevm_e.erl @@ -1,5 +1,5 @@ -module(ggs_gamevm_e). --export([start_link/1, define/2, user_command/4]). +-export([start_link/1, define/2, player_command/4]). %% @doc This module is responsible for running the game VM:s. You can issue %% commands to a vm using this module. @@ -16,16 +16,16 @@ define(GameVM, SourceCode) -> GameVM ! {define,SourceCode}, ok. -%% @doc Execute a user command on the specified VM. This function is +%% @doc Execute a player command on the specified VM. This function is %% asynchronous, and returns ok. -%% @spec user_command(GameVM, User, Command, Args) -> ok +%% @spec player_command(GameVM, User, Command, Args) -> ok %% GameVM = process IS of VM %% Player = the player running the command %% Command = a game command to run %% Args = arguments for the Command parameter -user_command(GameVM, Player, Command, Args) -> +player_command(GameVM, Player, Command, Args) -> Ref = make_ref(), - GameVM ! {user_command, Player, Command, Args, self(), Ref}, + GameVM ! {player_command, Player, Command, Args, self(), Ref}, ok. %% Helper functions @@ -35,7 +35,7 @@ loop(Table) -> {define, _SourceCode} -> io:format("GameVM_e can't define functions, sorry!~n"), loop(Table); - {user_command, Player, Command, Args, _From, _Ref} -> + {player_command, Player, Command, Args, _From, _Ref} -> erlang:display(Command), do_stuff(Command, Args, Player, Table), loop(Table) diff --git a/src/ggs_table.erl b/src/ggs_table.erl index dbd16f7..d86abb5 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -5,8 +5,7 @@ %% gen_server callbacks -export([init/1, handle_call/3, handle_cast/2, handle_info/2, - terminate/2, code_change/3, notify_all_players/2, notify_game/3, - get_player_list/1]). + terminate/2, code_change/3]). -record(state, { players, game_vm } ). @@ -17,7 +16,8 @@ stop/1, notify/3, notify_all_players/2, - notify_game/3]). + notify_game/3, + get_player_list/1]). %% ---------------------------------------------------------------------- @@ -58,12 +58,19 @@ notify_all_players(Table, Message) -> notify_game(Table, From, Message) -> gen_server:cast(Table, {notify_game, Message, From}). +send_command(TableToken, PlayerToken, Command, Args) -> + gen_logger:not_implemented(). + +send_command_to_all(TableToken, Command, Args) -> + gen_logger:not_implemented(). + + %% ---------------------------------------------------------------------- %% @private init([]) -> process_flag(trap_exit, true), - GameVM = ggs_gamevm_e:start_link(self()), %% @TODO: Temporary erlang gamevm + GameVM = ggs_gamevm:start_link(self()), {ok, #state { game_vm = GameVM, players = [] }}. @@ -86,14 +93,14 @@ handle_call(Msg, _From, State) -> handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> case Message of {server, define, Args} -> - ggs_gamevm_e:define(GameVM, Args); + ggs_gamevm:define(GameVM, Args); {game, Command, Args} -> - ggs_gamevm_e:user_command(GameVM, Player, Command, Args) + ggs_gamevm:player_command(GameVM, Player, Command, Args) end, {noreply, State}; handle_cast({notify_game, Message, From}, #state { game_vm = GameVM } = State) -> - ggs_gamevm_e:user_command(GameVM, From, Message, ""), + ggs_gamevm:player_command(GameVM, From, Message, ""), {noreply, State}; handle_cast({notify_all_players, Message}, #state{players = Players} = State) -> From a20f9351d437ed46fde3243bdd34e385215cbcc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Fri, 25 Feb 2011 20:46:45 +0100 Subject: [PATCH 095/192] Added tool to kill GGS subsystems, added ggs_coordinator:get_all_players --- games/GGS-Killtrolpanel/ggskpanel.glade | 135 ++++++++++++++++++ games/GGS-Killtrolpanel/kill_process_icon.jpg | Bin 0 -> 22185 bytes games/GGS-Killtrolpanel/kpanel.py | 44 ++++++ games/GGSChat/chat.py | 10 +- src/ggs_coordinator.erl | 8 +- 5 files changed, 191 insertions(+), 6 deletions(-) create mode 100644 games/GGS-Killtrolpanel/ggskpanel.glade create mode 100644 games/GGS-Killtrolpanel/kill_process_icon.jpg create mode 100644 games/GGS-Killtrolpanel/kpanel.py diff --git a/games/GGS-Killtrolpanel/ggskpanel.glade b/games/GGS-Killtrolpanel/ggskpanel.glade new file mode 100644 index 0000000..3f85df9 --- /dev/null +++ b/games/GGS-Killtrolpanel/ggskpanel.glade @@ -0,0 +1,135 @@ + + + + + + 561 + 521 + + + True + + + True + + + True + <span size="x-large">GGS Killtrolpanel</span> + True + + + False + 0 + + + + + True + kill_process_icon.jpg + + + False + False + 1 + + + + + False + False + 0 + + + + + True + 3 + 2 + True + + + All players + True + True + True + + + + + + Coordinator + True + True + True + + + + 1 + 2 + + + + + Dispatcher + True + True + True + + + + 1 + 2 + + + + + Coordinator backup + True + True + True + + + + 1 + 2 + 1 + 2 + + + + + All tables + True + True + True + + + + 2 + 3 + + + + + All GameVMs + True + True + True + + + + 1 + 2 + 2 + 3 + + + + + 1 + + + + + + diff --git a/games/GGS-Killtrolpanel/kill_process_icon.jpg b/games/GGS-Killtrolpanel/kill_process_icon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7768c3d6c20049883c10f121b5d38d9ca8e0b9f6 GIT binary patch literal 22185 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 %gen_server:cast(ggs_coordinator, {remove_player, Player}). ggs_logger:not_implemented(). +get_all_players() -> + gen_server:call(?SERVER, get_all_players). + %% Just to shorten the name back_up(State) -> ggs_coordinator_backup:back_up(State), @@ -99,6 +102,9 @@ handle_call({create_table, {force, TableID}}, From, State) -> back_up(NewState), {reply, {ok, TableID}, NewState}; +handle_call(get_all_players, _From, State) -> + {reply, State#co_state.players, State}; + handle_call(_Message, _From, State) -> {noreply, State}. From 83cddf1c09dd2369197eb1290b452f746f1bf619 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Sat, 26 Feb 2011 00:01:49 +0100 Subject: [PATCH 096/192] Now gga_gamevm_e uses tokens to identify tables --- src/ggs_api.js | 6 ++--- src/ggs_coordinator.erl | 43 ++++++++++++++++++++++++++++++------ src/ggs_gamevm.erl | 6 ++--- src/ggs_gamevm_e.erl | 8 +++---- src/ggs_table.erl | 49 +++++++++++++++++++++++++++-------------- 5 files changed, 77 insertions(+), 35 deletions(-) diff --git a/src/ggs_api.js b/src/ggs_api.js index 21c3ddd..e3087c2 100644 --- a/src/ggs_api.js +++ b/src/ggs_api.js @@ -61,15 +61,15 @@ function _GGS(tableToken) { var tableToken = this.tableToken; this.__defineGetter__("tableToken", function() { return tableToken; - }) + }); } - +/* function _GGS.prototype.sendCommandToAll(command, args) { var message = "{" + command + "," + args + "}"; callErlang("ggs_table send_command_to_all " + escapeErlang([this.tableToken, message])); } - +*/ function _GGS.prototype.serverLog(message) { callErlang("error_logger info_msg " + escapeErlang([message])) } diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 14a7048..b02f02d 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -1,8 +1,17 @@ -module(ggs_coordinator). %% API Exports --export([start_link/0, stop/1, join_table/1, create_table/1, join_lobby/0, - respawn_player/2, respawn_table/1, remove_player/2, get_all_players/0]). +-export([ start_link/0, + stop/1, + join_table/1, + create_table/1, + join_lobby/0, + respawn_player/2, + respawn_table/1, + remove_player/2, + get_all_players/0, + table_token_to_pid/1, + table_pid_to_token/1]). %% gen_server callback exports -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, @@ -56,6 +65,15 @@ remove_player(_From, _Player) -> get_all_players() -> gen_server:call(?SERVER, get_all_players). + +%% Conversion tools + +table_token_to_pid(Token) -> + gen_server:call(?SERVER, {table_token_to_pid, Token}). + +table_pid_to_token(Pid) -> + gen_server:call(?SERVER, {table_pid_to_token, Pid}). + %% Just to shorten the name back_up(State) -> ggs_coordinator_backup:back_up(State), @@ -91,20 +109,31 @@ handle_call({join_table, Table}, From, State) -> {reply, {error, no_such_table}, State} end; -handle_call({create_table, {force, TableID}}, From, State) -> +handle_call({create_table, {force, TableToken}}, From, State) -> TableIDMap = State#co_state.player_table_map, Tables = State#co_state.tables, - NewTableProc = ggs_table:start(), % With start_link, the table dies with the coordinator + NewTableProc = ggs_table:start(TableToken), % With start_link, the table dies with the coordinator NewState = State#co_state{ - player_table_map = [{From, TableID} | TableIDMap], - tables = [{TableID, NewTableProc} | Tables] + player_table_map = [{From, TableToken} | TableIDMap], + tables = [{TableToken, NewTableProc} | Tables] }, back_up(NewState), - {reply, {ok, TableID}, NewState}; + {reply, {ok, TableToken}, NewState}; handle_call(get_all_players, _From, State) -> {reply, State#co_state.players, State}; +%% Conversion tools +handle_call({table_token_to_pid, Token}, _From, State) -> + Tables = State#co_state.tables, + {_, Pid} = lists:keyfind(Token, 1, Tables), + {reply, Pid, State}; + +handle_call({table_pid_to_token, Pid}, _From, State) -> + Tables = State#co_state.tables, + {Token, _} = lists:keyfind(Pid, 2, Tables), + {reply, Token, State}; + handle_call(_Message, _From, State) -> {noreply, State}. diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 354e7aa..a18a7f4 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -13,8 +13,6 @@ %% API -export([start_link/1, define/2, player_command/4, stop/1, call_js/2]). --include_lib("eunit/include/eunit.hrl"). - %% ---------------------------------------------------------------------- % API implementation @@ -56,8 +54,8 @@ stop(GameVM) -> init([Table]) -> process_flag(trap_exit, true), {ok, Port} = js_driver:new(), - %% @TODO: add here default JS API instead - {ok, JSAPISourceCode} = file:read_file("ggs_api.js"), +% %% @TODO: add here default JS API instead + {ok, JSAPISourceCode} = file:read_file("src/ggs_api.js"), ok = js:define(Port, JSAPISourceCode), {ok, #state { port = Port, table = Table }}. diff --git a/src/ggs_gamevm_e.erl b/src/ggs_gamevm_e.erl index 10dd74b..e523273 100644 --- a/src/ggs_gamevm_e.erl +++ b/src/ggs_gamevm_e.erl @@ -44,20 +44,20 @@ loop(Table) -> do_stuff(Command, Args, Player, Table) -> case Command of "greet" -> - ggs_player:notify(Player, server, "Hello there!\n"); + ggs_table:notify_player(Table, Player, server, "Hello there!\n"); "chat" -> Nick = ggs_db:getItem(Table, nicks, Player), ggs_table:notify_all_players(Table, "<"++Nick++"> "++ Args ++ "\n"); "uname" -> Uname = os:cmd("uname -a"), - ggs_player:notify(Player, server, Uname); + ggs_table:notify_player(Table, Player, server, Uname); "lusers" -> {ok, Players} = ggs_table:get_player_list(Table), Nicks = lists:map(fun (P) -> ggs_db:getItem(Table, nicks, P) end, Players), - ggs_player:notify(Player, server,io_lib:format("LUSERS ~p\n",[Nicks])); + ggs_table:notify_player(Table, Player, server,io_lib:format("LUSERS ~p\n",[Nicks])); "nick" -> ggs_db:setItem(Table,nicks,Player,Args), io:format("Changing nickname of ~p to ~p.", [Player, Args]); _Other -> - ggs_player:notify(Player, server, "I don't know that command..\n") + ggs_table:notify_player(Table, Player, server, "I don't know that command..\n") end. diff --git a/src/ggs_table.erl b/src/ggs_table.erl index d86abb5..c0bff36 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -10,22 +10,23 @@ -record(state, { players, game_vm } ). %% API --export([start/0, +-export([start/1, add_player/2, remove_player/2, stop/1, notify/3, notify_all_players/2, notify_game/3, - get_player_list/1]). + get_player_list/1, + notify_player/4]). %% ---------------------------------------------------------------------- % API implementation % @doc returns a new table -start() -> - {ok, Pid} = gen_server:start(?MODULE, [], []), +start(Token) -> + {ok, Pid} = gen_server:start(?MODULE, [Token], []), Pid. %% @private @@ -41,22 +42,32 @@ remove_player(Table, Player) -> call(Table, {remove_player, Player}). %% @doc Get a list of all player processes attached to this table -get_player_list(Table) -> - gen_server:call(Table, get_player_list). +get_player_list(TableToken) -> + TablePid = ggs_coordinator:table_token_to_pid(TableToken), + gen_server:call(TablePid, get_player_list). % @doc stops the table process stop(Table) -> gen_server:cast(Table, stop). % @doc notifies the table with a message from a player -notify(Table, Player, Message) -> - gen_server:cast(Table, {notify, Player, Message}). +notify(TablePid, Player, Message) -> + %TablePid = ggs_coordinator:table_token_to_pid(TableToken), + gen_server:cast(TablePid, {notify, Player, Message}). -notify_all_players(Table, Message) -> - gen_server:cast(Table, {notify_all_players, Message}). +notify_all_players(TableToken, Message) -> + TablePid = ggs_coordinator:table_token_to_pid(TableToken), + gen_server:cast(TablePid, {notify_all_players, Message}). -notify_game(Table, From, Message) -> - gen_server:cast(Table, {notify_game, Message, From}). +notify_game(TablePid, From, Message) -> + TableToken = ggs_coordinator:table_pid_to_token(TablePid), + gen_server:cast(TableToken, {notify_game, Message, From}). + +%% @doc Notify a player sitting at this table with the message supplied. +%% Player, Table and From are in token form. +notify_player(TableToken, Player, From, Message) -> + TablePid = ggs_coordinator:table_token_to_pid(TableToken), + gen_server:cast(TablePid, {notify_player, Player, From, Message}). send_command(TableToken, PlayerToken, Command, Args) -> gen_logger:not_implemented(). @@ -68,9 +79,9 @@ send_command_to_all(TableToken, Command, Args) -> %% ---------------------------------------------------------------------- %% @private -init([]) -> +init([TableToken]) -> process_flag(trap_exit, true), - GameVM = ggs_gamevm:start_link(self()), + GameVM = ggs_gamevm_e:start_link(TableToken), {ok, #state { game_vm = GameVM, players = [] }}. @@ -93,14 +104,14 @@ handle_call(Msg, _From, State) -> handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> case Message of {server, define, Args} -> - ggs_gamevm:define(GameVM, Args); + ggs_gamevm_e:define(GameVM, Args); {game, Command, Args} -> - ggs_gamevm:player_command(GameVM, Player, Command, Args) + ggs_gamevm_e:player_command(GameVM, Player, Command, Args) end, {noreply, State}; handle_cast({notify_game, Message, From}, #state { game_vm = GameVM } = State) -> - ggs_gamevm:player_command(GameVM, From, Message, ""), + ggs_gamevm_e:player_command(GameVM, From, Message, ""), {noreply, State}; handle_cast({notify_all_players, Message}, #state{players = Players} = State) -> @@ -110,6 +121,10 @@ handle_cast({notify_all_players, Message}, #state{players = Players} = State) -> ), {noreply, State}; +handle_cast({notify_player, Player, From, Message}, State) -> + ggs_player:notify(Player, From, Message), + {noreply, State}; + handle_cast(stop, State) -> {stop, normal, State}; handle_cast(Msg, S) -> From 9ff48a90b3685a0fb6e5ad6e814b3ca97f61568b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 28 Feb 2011 11:45:09 +0100 Subject: [PATCH 097/192] Now all the tokens work --- src/ggs_coordinator.erl | 30 ++++++++++++++++++++++++++---- src/ggs_gamevm_e.erl | 16 ++++++++-------- src/ggs_table.erl | 19 +++++++++++++------ 3 files changed, 47 insertions(+), 18 deletions(-) diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index b02f02d..e9650bb 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -11,7 +11,9 @@ remove_player/2, get_all_players/0, table_token_to_pid/1, - table_pid_to_token/1]). + table_pid_to_token/1, + player_pid_to_token/1, + player_token_to_pid/1]). %% gen_server callback exports -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, @@ -74,6 +76,12 @@ table_token_to_pid(Token) -> table_pid_to_token(Pid) -> gen_server:call(?SERVER, {table_pid_to_token, Pid}). +player_pid_to_token(Pid) -> + gen_server:call(?SERVER, {player_pid_to_token, Pid}). + +player_token_to_pid(Token) -> + gen_server:call(?SERVER, {player_token_to_pid, Token}). + %% Just to shorten the name back_up(State) -> ggs_coordinator_backup:back_up(State), @@ -91,10 +99,14 @@ init([]) -> {ok, State} end. -handle_call(join_lobby, _From, State) -> +handle_call(join_lobby, From, State) -> Token = helpers:get_new_token(), - back_up(State), - {reply, {ok, Token}, State}; + Players = State#co_state.players, + io:format("join_lobby from: ~p~n", [From]), + {Pid, Sock} = From, + NewState = State#co_state{players = [{Pid, Token} | Players]}, + back_up(NewState), + {reply, {ok, Token}, NewState}; handle_call({join_table, Table}, From, State) -> {FromPlayer, _Ref} = From, @@ -134,6 +146,16 @@ handle_call({table_pid_to_token, Pid}, _From, State) -> {Token, _} = lists:keyfind(Pid, 2, Tables), {reply, Token, State}; +handle_call({player_pid_to_token, Pid}, _From, State) -> + Players = State#co_state.players, + {Pid, Token} = lists:keyfind(Pid, 1, Players), + {reply, Token, State}; + +handle_call({player_token_to_pid, Token}, _From, State) -> + Players = State#co_state.players, + {Pid, Token} = lists:keyfind(Token, 2, Players), + {reply, Pid, State}; + handle_call(_Message, _From, State) -> {noreply, State}. diff --git a/src/ggs_gamevm_e.erl b/src/ggs_gamevm_e.erl index e523273..3efab48 100644 --- a/src/ggs_gamevm_e.erl +++ b/src/ggs_gamevm_e.erl @@ -41,23 +41,23 @@ loop(Table) -> loop(Table) end. -do_stuff(Command, Args, Player, Table) -> +do_stuff(Command, Args, PlayerToken, Table) -> case Command of "greet" -> - ggs_table:notify_player(Table, Player, server, "Hello there!\n"); + ggs_table:notify_player(Table, PlayerToken, server, "Hello there!\n"); "chat" -> - Nick = ggs_db:getItem(Table, nicks, Player), + Nick = ggs_db:getItem(Table, nicks, PlayerToken), ggs_table:notify_all_players(Table, "<"++Nick++"> "++ Args ++ "\n"); "uname" -> Uname = os:cmd("uname -a"), - ggs_table:notify_player(Table, Player, server, Uname); + ggs_table:notify_player(Table, PlayerToken, server, Uname); "lusers" -> {ok, Players} = ggs_table:get_player_list(Table), Nicks = lists:map(fun (P) -> ggs_db:getItem(Table, nicks, P) end, Players), - ggs_table:notify_player(Table, Player, server,io_lib:format("LUSERS ~p\n",[Nicks])); + ggs_table:notify_player(Table, PlayerToken, server,io_lib:format("LUSERS ~p\n",[Nicks])); "nick" -> - ggs_db:setItem(Table,nicks,Player,Args), - io:format("Changing nickname of ~p to ~p.", [Player, Args]); + ggs_db:setItem(Table,nicks,PlayerToken,Args), + io:format("Changing nickname of ~p to ~p.", [PlayerToken, Args]); _Other -> - ggs_table:notify_player(Table, Player, server, "I don't know that command..\n") + ggs_table:notify_player(Table, PlayerToken, server, "I don't know that command..\n") end. diff --git a/src/ggs_table.erl b/src/ggs_table.erl index c0bff36..232ab39 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -44,6 +44,7 @@ remove_player(Table, Player) -> %% @doc Get a list of all player processes attached to this table get_player_list(TableToken) -> TablePid = ggs_coordinator:table_token_to_pid(TableToken), + erlang:display(TablePid), gen_server:call(TablePid, get_player_list). % @doc stops the table process @@ -65,9 +66,10 @@ notify_game(TablePid, From, Message) -> %% @doc Notify a player sitting at this table with the message supplied. %% Player, Table and From are in token form. -notify_player(TableToken, Player, From, Message) -> +notify_player(TableToken, PlayerToken, From, Message) -> TablePid = ggs_coordinator:table_token_to_pid(TableToken), - gen_server:cast(TablePid, {notify_player, Player, From, Message}). + %PlayerPid = ggs_coordinator:player_token_to_pid(PlayerToken), + gen_server:cast(TablePid, {notify_player, PlayerToken, From, Message}). send_command(TableToken, PlayerToken, Command, Args) -> gen_logger:not_implemented(). @@ -94,7 +96,10 @@ handle_call({remove_player, Player}, _From, #state { players = Players } = State {reply, ok, State#state { players = Players -- [Player] }}; handle_call(get_player_list, _From, #state { players = Players } = State) -> - {reply, {ok, Players}, State}; + io:format("Players: ~p~n", [Players]), + TokenPlayers = lists:map( + fun (Pid) -> ggs_coordinator:player_pid_to_token(Pid) end, Players), + {reply, {ok, TokenPlayers}, State}; handle_call(Msg, _From, State) -> error_logger:error_report([unknown_msg, Msg]), @@ -102,11 +107,12 @@ handle_call(Msg, _From, State) -> %% @private handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> + PlayerToken = ggs_coordinator:player_pid_to_token(Player), case Message of {server, define, Args} -> ggs_gamevm_e:define(GameVM, Args); {game, Command, Args} -> - ggs_gamevm_e:player_command(GameVM, Player, Command, Args) + ggs_gamevm_e:player_command(GameVM, PlayerToken, Command, Args) end, {noreply, State}; @@ -121,8 +127,9 @@ handle_cast({notify_all_players, Message}, #state{players = Players} = State) -> ), {noreply, State}; -handle_cast({notify_player, Player, From, Message}, State) -> - ggs_player:notify(Player, From, Message), +handle_cast({notify_player, PlayerToken, From, Message}, State) -> + PlayerPid = ggs_coordinator:player_token_to_pid(PlayerToken), + ggs_player:notify(PlayerPid, From, Message), {noreply, State}; handle_cast(stop, State) -> From 6986bc269fa57f9eefaa75800834ea00d4eee8ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 28 Feb 2011 12:56:23 +0100 Subject: [PATCH 098/192] Now most of GGSChat uses the GGS protocol both ways --- games/GGSChat/chat.py | 40 ++++++++++++++++++++++++++++++++-------- src/ggs_gamevm_e.erl | 16 +++++++++++----- src/ggs_player.erl | 11 ++++++++--- src/ggs_protocol.erl | 14 +++++++++++++- 4 files changed, 64 insertions(+), 17 deletions(-) diff --git a/games/GGSChat/chat.py b/games/GGSChat/chat.py index 5dc6fd0..9899cbb 100644 --- a/games/GGSChat/chat.py +++ b/games/GGSChat/chat.py @@ -38,7 +38,7 @@ class GGSChat: self.wTree.get_widget("window1").show() self.wTree.get_widget("entry").grab_focus() nicksList = self.wTree.get_widget("nicksList") - self.changeNick() + #self.changeNick() nicksList.set_model(self.nicksListStore) # self.nicksListStore.append(["Test!"]) @@ -91,25 +91,50 @@ class GGSChat: PORT = port # The same port as used by the server self.s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.s.connect((HOST, PORT)) - self.token = self.s.recv(1024) self.setStatus("Connected!") + + def protocolHandler(self, msg): + if msg["Client-Command"] == "hello": + self.token = msg["DATA"] + elif msg["Client-Command"] == "chat": + gobject.idle_add(self.updateChatText, msg["DATA"]) + elif msg["Client-Command"] == "lusers": + print msg + gobject.idle_add(self.updateUsers, msg["DATA"]) + + def listenChat(self): + msg = {} print "listening" fs = self.s.makefile() while True: line = fs.readline() - print "Received: ", line - if line.split(" ")[0] == "LUSERS": - gobject.idle_add(self.updateUsers, line) + print "Received: '%s'" % line + if line != "\n": + key = line.split(":")[0] + value = line.split(":")[1] + msg[key] = value.strip() else: - gobject.idle_add(self.updateChatText, line) + msg["DATA"] = fs.read(int("%s" % msg["Content-Size"])) + print "Got data:", msg + self.protocolHandler(msg) + #gobject.idle_add(self.updateChatText, msg["DATA"]) + +# if line.split(" ")[0] == "LUSERS": +# gobject.idle_add(self.updateUsers, line) +# else: +# print msg def updateChatText(self, text): self.wTree.get_widget("chatBox").get_buffer().insert_at_cursor(text) def luserCheck(self): while True: + if self.token == None: + print "Not sending lusers cmd.." + continue + print "Sending lusers cmd.." self.s.send("Game-Command: lusers\n" + "Token: %s\n" % self.token + "Content-Type: text\n" + @@ -118,8 +143,7 @@ class GGSChat: time.sleep(2) def updateUsers(self, text): - nicks = ' '.join(text.split(" ")[1:]) - evalNicks = eval(nicks) + evalNicks = eval(text) self.nicksListStore.clear() for nick in evalNicks: self.nicksListStore.append([nick]) diff --git a/src/ggs_gamevm_e.erl b/src/ggs_gamevm_e.erl index 3efab48..1ac9fc0 100644 --- a/src/ggs_gamevm_e.erl +++ b/src/ggs_gamevm_e.erl @@ -44,17 +44,23 @@ loop(Table) -> do_stuff(Command, Args, PlayerToken, Table) -> case Command of "greet" -> - ggs_table:notify_player(Table, PlayerToken, server, "Hello there!\n"); + ggs_table:notify_player(Table, PlayerToken, server, {"chat", "Hello there!\n"}); "chat" -> - Nick = ggs_db:getItem(Table, nicks, PlayerToken), - ggs_table:notify_all_players(Table, "<"++Nick++"> "++ Args ++ "\n"); + case ggs_db:getItem(Table, nicks, PlayerToken) of + {error} -> + Nick = "Noname"; + Other -> + Nick = Other + end, + ggs_table:notify_all_players(Table, {"chat", "<"++Nick++"> "++ Args ++ "\n"}); "uname" -> Uname = os:cmd("uname -a"), - ggs_table:notify_player(Table, PlayerToken, server, Uname); + ggs_table:notify_player(Table, PlayerToken, server, {"chat", Uname}); "lusers" -> {ok, Players} = ggs_table:get_player_list(Table), Nicks = lists:map(fun (P) -> ggs_db:getItem(Table, nicks, P) end, Players), - ggs_table:notify_player(Table, PlayerToken, server,io_lib:format("LUSERS ~p\n",[Nicks])); + ggs_table:notify_player(Table, PlayerToken, server, + {"lusers", io_lib:format("~p\n",[Nicks])}); "nick" -> ggs_db:setItem(Table,nicks,PlayerToken,Args), io:format("Changing nickname of ~p to ~p.", [PlayerToken, Args]); diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 0211f3f..467e3ac 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -26,12 +26,12 @@ start_link(Socket) -> TableStatus = ggs_coordinator:join_table(1337), case TableStatus of {ok, Table} -> - notify(self(), self(), Token), + notify(self(), self(), {"hello", Token}), loop(#pl_state{socket = Socket, token = Token, table = Table}); {error, no_such_table} -> ggs_coordinator:create_table({force, 1337}), {ok, Table} = ggs_coordinator:join_table(1337), - notify(self(), self(), Token), + notify(self(), self(), {"hello", Token}), loop(#pl_state{socket = Socket, token = Token, table = Table}) end. @@ -40,7 +40,10 @@ start_link(Socket) -> %% @spec notify(Player::Pid(), From::Pid(), %% {Command::String(), Message::string()}) -> ok notify(Player, From, Message) -> - Player ! {notify, From, Message}. + erlang:display(Message), + {Cmd, Data} = Message, + Parsed = ggs_protocol:create_message(Cmd, "text","text", Data), + Player ! {notify, From, Parsed}. %% @doc Get the player token uniquely representing the player. %% @spec get_token() -> string() @@ -60,7 +63,9 @@ loop(#pl_state{token = _Token, socket = Socket, table = Table} = State) -> receive {tcp, Socket, Data} -> % Just echo for now.. io:format("Parsing via protocol module..~n"), + erlang:display(Data), Parsed = ggs_protocol:parse(Data), + erlang:display(Parsed), self() ! Parsed, loop(State); {notify, _From, Message} -> diff --git a/src/ggs_protocol.erl b/src/ggs_protocol.erl index 3dc88f9..d61dfc0 100644 --- a/src/ggs_protocol.erl +++ b/src/ggs_protocol.erl @@ -1,5 +1,5 @@ -module(ggs_protocol). --export([parse/1, getToken/1]). +-export([parse/1, getToken/1, create_message/4]). %% API Functions parse(Data) -> @@ -14,6 +14,18 @@ getToken(Parsed) -> false end. +create_message(Cmd, Enc, Acc, Data) -> + Length = integer_to_list(string:len(Data)), + Msg = "Client-Command: " ++ Cmd ++ "\n" ++ + "Client-Encoding: " ++ Enc ++ "\n" ++ + "Content-Size: " ++ Length ++ "\n" ++ + "GGS-Version: 1.0\n" ++ + "Accept: " ++ Acc ++ "\n" ++ + "\n" ++ + Data, + Msg. + + %% Internal helpers do_parse(Data, ParsedMessage) -> NewLinePos = string:chr(Data, $\n), From e53c2a82c47f0249a8ee445f5c2937beb68fdcaf Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 28 Feb 2011 14:39:38 +0100 Subject: [PATCH 099/192] fixed js syntax errors and changed to ggs_gamevm --- src/ggs_api.js | 95 +++++++++++++++++++++++------------------------ src/ggs_table.erl | 8 ++-- 2 files changed, 51 insertions(+), 52 deletions(-) diff --git a/src/ggs_api.js b/src/ggs_api.js index e3087c2..1111cff 100644 --- a/src/ggs_api.js +++ b/src/ggs_api.js @@ -1,46 +1,46 @@ +function Storage(type) { + if (type == "world" || type == "localStorage" || type == "players") { + this.type = type; + this.tableToken = tableToken; + var self = this; + + return { + setItem: function(key, value) { + if(this.type != "players") + callErlang("ggs_db setItem " + escapeErlang([self.tableToken, self.type, key, value])); + else + throw "No such method setItem()"; + }, + getItem: function(key) { + return callErlang("ggs_db getItem " + escapeErlang([self.tableToken, self.type, key])); + }, + key: function(position) { + return callErlang("ggs_db key " + escapeErlang([self.tableToken, self.type, position])); + }, + length: { + get: function() { + return callErlang("ggs_db length " + escapeErlang([self.tableToken, self.type])); + } + }, + removeItem: function(key) { + if(this.type != "players") + callErlang("ggs_db removeItem " + escapeErlang([self.tableToken, self.type, key])); + else + throw "No such method removeItem()"; + }, + clear: function() { + if(this.type != "players") + callErlang("ggs_db clear " + escapeErlang([self.tableToken, self.type])); + else + throw "No such method clear()"; + } + } + } else throw "GGS: No such storage available " + type; +} + function _GGS(tableToken) { this.tableToken = tableToken; - - function Storage(type) { - if (type == "world" || type == "localStorage" || type == "players") { - this.type = type; - this.tableToken = tableToken; - var self = this; - - return { - setItem: function(key, value) { - if(this.type != "players") - callErlang("ggs_db setItem " + escapeErlang([self.tableToken, self.type, key, value])); - else - throw "No such method setItem()"; - }, - getItem: function(key) { - return callErlang("ggs_db getItem " + escapeErlang([self.tableToken, self.type, key])); - }, - key: function(position) { - return callErlang("ggs_db key " + escapeErlang([self.tableToken, self.type, position])); - }, - length: { - get: function() { - return callErlang("ggs_db length " + escapeErlang([self.tableToken, self.type])); - } - }, - removeItem: function(key) { - if(this.type != "players") - callErlang("ggs_db removeItem " + escapeErlang([self.tableToken, self.type, key])); - else - throw "No such method removeItem()"; - }, - clear: function() { - if(this.type != "players") - callErlang("ggs_db clear " + escapeErlang([self.tableToken, self.type])); - else - throw "No such method clear()"; - } - } - } else throw "GGS: No such storage available " + type; - } var world = new Storage("world"); this.__defineGetter__("world", function() { @@ -64,24 +64,22 @@ function _GGS(tableToken) { }); } -/* -function _GGS.prototype.sendCommandToAll(command, args) { + +_GGS.prototype.sendCommandToAll = function(command, args) { var message = "{" + command + "," + args + "}"; callErlang("ggs_table send_command_to_all " + escapeErlang([this.tableToken, message])); } -*/ -function _GGS.prototype.serverLog(message) { + +_GGS.prototype.serverLog = function(message) { callErlang("error_logger info_msg " + escapeErlang([message])) } function escapeErlang(args) { var str = JSON.stringify(args); str = str.replace("'", "\\\'"); - return "'" + str "'"; + return "'" + str + "'"; } - - function Player(token) { var playerToken = token; @@ -98,7 +96,7 @@ function Player(token) { - +/* // ------------ Player stuff ------------- // TODO: remove this later on @@ -175,3 +173,4 @@ function listUsers(player) { } player.sendCommand("nicklist", nicks_a.join(",")); } +*/ \ No newline at end of file diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 232ab39..3bcfb7d 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -83,7 +83,7 @@ send_command_to_all(TableToken, Command, Args) -> %% @private init([TableToken]) -> process_flag(trap_exit, true), - GameVM = ggs_gamevm_e:start_link(TableToken), + GameVM = ggs_gamevm:start_link(TableToken), {ok, #state { game_vm = GameVM, players = [] }}. @@ -110,14 +110,14 @@ handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> PlayerToken = ggs_coordinator:player_pid_to_token(Player), case Message of {server, define, Args} -> - ggs_gamevm_e:define(GameVM, Args); + ggs_gamevm:define(GameVM, Args); {game, Command, Args} -> - ggs_gamevm_e:player_command(GameVM, PlayerToken, Command, Args) + ggs_gamevm:player_command(GameVM, PlayerToken, Command, Args) end, {noreply, State}; handle_cast({notify_game, Message, From}, #state { game_vm = GameVM } = State) -> - ggs_gamevm_e:player_command(GameVM, From, Message, ""), + ggs_gamevm:player_command(GameVM, From, Message, ""), {noreply, State}; handle_cast({notify_all_players, Message}, #state{players = Players} = State) -> From cee10d5f753f5525506074ce4d0995b164f2a078 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 28 Feb 2011 14:58:00 +0100 Subject: [PATCH 100/192] Added Pong --- games/Pong/Classes/AsyncSocket.h | 659 +++ games/Pong/Classes/AsyncSocket.m | 4343 +++++++++++++++++ games/Pong/Classes/GGSDelegate.h | 20 + games/Pong/Classes/GGSNetwork.h | 31 + games/Pong/Classes/GGSNetwork.m | 117 + games/Pong/Classes/PongAppDelegate.h | 22 + games/Pong/Classes/PongAppDelegate.m | 88 + games/Pong/Classes/PongViewController.h | 50 + games/Pong/Classes/PongViewController.m | 241 + games/Pong/MainWindow.xib | 444 ++ games/Pong/Pong-Info.plist | 37 + games/Pong/Pong.xcodeproj/jeena.mode1v3 | 1410 ++++++ games/Pong/Pong.xcodeproj/jeena.pbxuser | 2434 +++++++++ games/Pong/Pong.xcodeproj/project.pbxproj | 286 ++ games/Pong/PongViewController.xib | 635 +++ games/Pong/Pong_Prefix.pch | 8 + .../Pong.app.dSYM/Contents/Info.plist | 18 + .../Contents/Resources/DWARF/Pong | Bin 0 -> 188683 bytes .../Debug-iphoneos/Pong.app/CodeResources | 44 + .../build/Debug-iphoneos/Pong.app/Info.plist | Bin 0 -> 926 bytes .../Debug-iphoneos/Pong.app/MainWindow.nib | Bin 0 -> 1675 bytes .../build/Debug-iphoneos/Pong.app/PkgInfo | 1 + games/Pong/build/Debug-iphoneos/Pong.app/Pong | Bin 0 -> 66896 bytes .../Pong.app/PongViewController.nib | Bin 0 -> 3735 bytes .../Pong.app/ResourceRules.plist | 25 + .../Pong.app/_CodeSignature/CodeResources | 44 + .../Pong.app/embedded.mobileprovision | Bin 0 -> 7780 bytes .../Pong.app.dSYM/Contents/Info.plist | 18 + .../Contents/Resources/DWARF/Pong | Bin 0 -> 157884 bytes .../Debug-iphonesimulator/Pong.app/Info.plist | Bin 0 -> 730 bytes .../Pong.app/MainWindow.nib | Bin 0 -> 1675 bytes .../Debug-iphonesimulator/Pong.app/PkgInfo | 1 + .../build/Debug-iphonesimulator/Pong.app/Pong | Bin 0 -> 153016 bytes .../Pong.app/PongViewController.nib | Bin 0 -> 3576 bytes .../Pong.build/Objects-normal/armv6/Pong | Bin 0 -> 24384 bytes .../Objects-normal/armv6/Pong.LinkFileList | 4 + .../Objects-normal/armv6/PongAppDelegate.o | Bin 0 -> 50340 bytes .../Objects-normal/armv6/PongView.o | Bin 0 -> 52200 bytes .../Objects-normal/armv6/PongViewController.o | Bin 0 -> 37916 bytes .../Pong.build/Objects-normal/armv6/main.o | Bin 0 -> 6424 bytes .../Pong.build/Objects-normal/armv7/Pong | Bin 0 -> 24124 bytes .../Objects-normal/armv7/Pong.LinkFileList | 4 + .../Objects-normal/armv7/PongAppDelegate.o | Bin 0 -> 50260 bytes .../Objects-normal/armv7/PongView.o | Bin 0 -> 51000 bytes .../Objects-normal/armv7/PongViewController.o | Bin 0 -> 37888 bytes .../Pong.build/Objects-normal/armv7/main.o | Bin 0 -> 6408 bytes .../Pong.build/Pong-all-target-headers.hmap | Bin 0 -> 793 bytes .../Pong.build/Pong-generated-files.hmap | Bin 0 -> 121 bytes .../Pong.build/Pong-own-target-headers.hmap | Bin 0 -> 793 bytes .../Pong.build/Pong-project-headers.hmap | Bin 0 -> 923 bytes .../Debug-iphoneos/Pong.build/Pong.dep | 22 + .../Debug-iphoneos/Pong.build/Pong.hmap | Bin 0 -> 1691 bytes .../Debug-iphoneos/Pong.build/Pong.xcent | 14 + .../Debug-iphoneos/Pong.build/Pong~.dep | 22 + .../Debug-iphoneos/Pong.build/build-state.dat | 502 ++ .../Pong.build/build-state~.dat | 477 ++ .../Objects-normal/i386/AsyncSocket.o | Bin 0 -> 220036 bytes .../Objects-normal/i386/GGSNetwork.o | Bin 0 -> 22364 bytes .../Objects-normal/i386/GGSNetwork.o~$ | Bin 0 -> 22364 bytes .../Objects-normal/i386/GGSNetwork.o~> | 0 .../Objects-normal/i386/GGSNetwork.o~? | Bin 0 -> 36 bytes .../Pong.build/Objects-normal/i386/Network.o | Bin 0 -> 14792 bytes .../Objects-normal/i386/Network.o~> | 18 + .../Objects-normal/i386/Network.o~? | Bin 0 -> 36 bytes .../Objects-normal/i386/Pong.LinkFileList | 5 + .../Objects-normal/i386/PongAppDelegate.o | Bin 0 -> 52648 bytes .../Pong.build/Objects-normal/i386/PongView.o | Bin 0 -> 55136 bytes .../Objects-normal/i386/PongView.o~$ | Bin 0 -> 36936 bytes .../Objects-normal/i386/PongView.o~> | 0 .../Objects-normal/i386/PongView.o~? | Bin 0 -> 36 bytes .../Objects-normal/i386/PongViewController.o | Bin 0 -> 64988 bytes .../Pong.build/Objects-normal/i386/main.o | Bin 0 -> 6280 bytes .../Pong.build/Pong-all-target-headers.hmap | Bin 0 -> 793 bytes .../Pong.build/Pong-generated-files.hmap | Bin 0 -> 121 bytes .../Pong.build/Pong-own-target-headers.hmap | Bin 0 -> 793 bytes .../Pong.build/Pong-project-headers.hmap | Bin 0 -> 953 bytes .../Debug-iphonesimulator/Pong.build/Pong.dep | 16 + .../Pong.build/Pong.hmap | Bin 0 -> 1721 bytes .../Pong.build/Pong~.dep | 11 + .../Pong.build/build-state.dat | 445 ++ .../Pong.build/build-state~.dat | 256 + .../Pong.pbxindex/categories.pbxbtree | Bin 0 -> 1364 bytes .../Pong.build/Pong.pbxindex/cdecls.pbxbtree | Bin 0 -> 157052 bytes .../Pong.build/Pong.pbxindex/decls.pbxbtree | Bin 0 -> 155688 bytes .../Pong.build/Pong.pbxindex/files.pbxbtree | Bin 0 -> 3104 bytes .../Pong.build/Pong.pbxindex/imports.pbxbtree | Bin 0 -> 8632 bytes .../Pong.build/Pong.pbxindex/pbxindex.header | Bin 0 -> 24 bytes .../Pong.pbxindex/protocols.pbxbtree | Bin 0 -> 1888 bytes .../Pong.build/Pong.pbxindex/refs.pbxbtree | Bin 0 -> 120664 bytes .../Pong.pbxindex/strings.pbxstrings/control | Bin 0 -> 262164 bytes .../Pong.pbxindex/strings.pbxstrings/strings | Bin 0 -> 329124 bytes .../Pong.pbxindex/subclasses.pbxbtree | Bin 0 -> 1896 bytes .../Pong.pbxindex/symbols0.pbxsymbols | Bin 0 -> 753376 bytes games/Pong/main.m | 17 + 94 files changed, 12789 insertions(+) create mode 100644 games/Pong/Classes/AsyncSocket.h create mode 100644 games/Pong/Classes/AsyncSocket.m create mode 100644 games/Pong/Classes/GGSDelegate.h create mode 100644 games/Pong/Classes/GGSNetwork.h create mode 100644 games/Pong/Classes/GGSNetwork.m create mode 100644 games/Pong/Classes/PongAppDelegate.h create mode 100644 games/Pong/Classes/PongAppDelegate.m create mode 100644 games/Pong/Classes/PongViewController.h create mode 100644 games/Pong/Classes/PongViewController.m create mode 100644 games/Pong/MainWindow.xib create mode 100644 games/Pong/Pong-Info.plist create mode 100644 games/Pong/Pong.xcodeproj/jeena.mode1v3 create mode 100644 games/Pong/Pong.xcodeproj/jeena.pbxuser create mode 100755 games/Pong/Pong.xcodeproj/project.pbxproj create mode 100644 games/Pong/PongViewController.xib create mode 100644 games/Pong/Pong_Prefix.pch create mode 100644 games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Info.plist create mode 100644 games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Resources/DWARF/Pong create mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/CodeResources create mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/Info.plist create mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib create mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/PkgInfo create mode 100755 games/Pong/build/Debug-iphoneos/Pong.app/Pong create mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib create mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist create mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/_CodeSignature/CodeResources create mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision create mode 100644 games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Info.plist create mode 100644 games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Resources/DWARF/Pong create mode 100644 games/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist create mode 100644 games/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib create mode 100644 games/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo create mode 100755 games/Pong/build/Debug-iphonesimulator/Pong.app/Pong create mode 100644 games/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib create mode 100755 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong.LinkFileList create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o create mode 100755 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.dep create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.hmap create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong~.dep create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state.dat create mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state~.dat create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~$ create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~> create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~? create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~> create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~? create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~$ create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~> create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~? create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong.dep create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong.hmap create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong~.dep create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state.dat create mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state~.dat create mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/categories.pbxbtree create mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/cdecls.pbxbtree create mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/decls.pbxbtree create mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/files.pbxbtree create mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/imports.pbxbtree create mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/pbxindex.header create mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/protocols.pbxbtree create mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/refs.pbxbtree create mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/strings.pbxstrings/control create mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/strings.pbxstrings/strings create mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/subclasses.pbxbtree create mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/symbols0.pbxsymbols create mode 100644 games/Pong/main.m diff --git a/games/Pong/Classes/AsyncSocket.h b/games/Pong/Classes/AsyncSocket.h new file mode 100644 index 0000000..8382cd3 --- /dev/null +++ b/games/Pong/Classes/AsyncSocket.h @@ -0,0 +1,659 @@ +// +// AsyncSocket.h +// +// This class is in the public domain. +// Originally created by Dustin Voss on Wed Jan 29 2003. +// Updated and maintained by Deusty Designs and the Mac development community. +// +// http://code.google.com/p/cocoaasyncsocket/ +// + +#import + +@class AsyncSocket; +@class AsyncReadPacket; +@class AsyncWritePacket; + +extern NSString *const AsyncSocketException; +extern NSString *const AsyncSocketErrorDomain; + +enum AsyncSocketError +{ + AsyncSocketCFSocketError = kCFSocketError, // From CFSocketError enum. + AsyncSocketNoError = 0, // Never used. + AsyncSocketCanceledError, // onSocketWillConnect: returned NO. + AsyncSocketConnectTimeoutError, + AsyncSocketReadMaxedOutError, // Reached set maxLength without completing + AsyncSocketReadTimeoutError, + AsyncSocketWriteTimeoutError +}; +typedef enum AsyncSocketError AsyncSocketError; + +@protocol AsyncSocketDelegate +@optional + +/** + * In the event of an error, the socket is closed. + * You may call "unreadData" during this call-back to get the last bit of data off the socket. + * When connecting, this delegate method may be called + * before"onSocket:didAcceptNewSocket:" or "onSocket:didConnectToHost:". +**/ +- (void)onSocket:(AsyncSocket *)sock willDisconnectWithError:(NSError *)err; + +/** + * Called when a socket disconnects with or without error. If you want to release a socket after it disconnects, + * do so here. It is not safe to do that during "onSocket:willDisconnectWithError:". + * + * If you call the disconnect method, and the socket wasn't already disconnected, + * this delegate method will be called before the disconnect method returns. +**/ +- (void)onSocketDidDisconnect:(AsyncSocket *)sock; + +/** + * Called when a socket accepts a connection. Another socket is spawned to handle it. The new socket will have + * the same delegate and will call "onSocket:didConnectToHost:port:". +**/ +- (void)onSocket:(AsyncSocket *)sock didAcceptNewSocket:(AsyncSocket *)newSocket; + +/** + * Called when a new socket is spawned to handle a connection. This method should return the run-loop of the + * thread on which the new socket and its delegate should operate. If omitted, [NSRunLoop currentRunLoop] is used. +**/ +- (NSRunLoop *)onSocket:(AsyncSocket *)sock wantsRunLoopForNewSocket:(AsyncSocket *)newSocket; + +/** + * Called when a socket is about to connect. This method should return YES to continue, or NO to abort. + * If aborted, will result in AsyncSocketCanceledError. + * + * If the connectToHost:onPort:error: method was called, the delegate will be able to access and configure the + * CFReadStream and CFWriteStream as desired prior to connection. + * + * If the connectToAddress:error: method was called, the delegate will be able to access and configure the + * CFSocket and CFSocketNativeHandle (BSD socket) as desired prior to connection. You will be able to access and + * configure the CFReadStream and CFWriteStream in the onSocket:didConnectToHost:port: method. +**/ +- (BOOL)onSocketWillConnect:(AsyncSocket *)sock; + +/** + * Called when a socket connects and is ready for reading and writing. + * The host parameter will be an IP address, not a DNS name. +**/ +- (void)onSocket:(AsyncSocket *)sock didConnectToHost:(NSString *)host port:(UInt16)port; + +/** + * Called when a socket has completed reading the requested data into memory. + * Not called if there is an error. +**/ +- (void)onSocket:(AsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag; + +/** + * Called when a socket has read in data, but has not yet completed the read. + * This would occur if using readToData: or readToLength: methods. + * It may be used to for things such as updating progress bars. +**/ +- (void)onSocket:(AsyncSocket *)sock didReadPartialDataOfLength:(NSUInteger)partialLength tag:(long)tag; + +/** + * Called when a socket has completed writing the requested data. Not called if there is an error. +**/ +- (void)onSocket:(AsyncSocket *)sock didWriteDataWithTag:(long)tag; + +/** + * Called when a socket has written some data, but has not yet completed the entire write. + * It may be used to for things such as updating progress bars. +**/ +- (void)onSocket:(AsyncSocket *)sock didWritePartialDataOfLength:(NSUInteger)partialLength tag:(long)tag; + +/** + * Called if a read operation has reached its timeout without completing. + * This method allows you to optionally extend the timeout. + * If you return a positive time interval (> 0) the read's timeout will be extended by the given amount. + * If you don't implement this method, or return a non-positive time interval (<= 0) the read will timeout as usual. + * + * The elapsed parameter is the sum of the original timeout, plus any additions previously added via this method. + * The length parameter is the number of bytes that have been read so far for the read operation. + * + * Note that this method may be called multiple times for a single read if you return positive numbers. +**/ +- (NSTimeInterval)onSocket:(AsyncSocket *)sock + shouldTimeoutReadWithTag:(long)tag + elapsed:(NSTimeInterval)elapsed + bytesDone:(NSUInteger)length; + +/** + * Called if a write operation has reached its timeout without completing. + * This method allows you to optionally extend the timeout. + * If you return a positive time interval (> 0) the write's timeout will be extended by the given amount. + * If you don't implement this method, or return a non-positive time interval (<= 0) the write will timeout as usual. + * + * The elapsed parameter is the sum of the original timeout, plus any additions previously added via this method. + * The length parameter is the number of bytes that have been written so far for the write operation. + * + * Note that this method may be called multiple times for a single write if you return positive numbers. +**/ +- (NSTimeInterval)onSocket:(AsyncSocket *)sock + shouldTimeoutWriteWithTag:(long)tag + elapsed:(NSTimeInterval)elapsed + bytesDone:(NSUInteger)length; + +/** + * Called after the socket has successfully completed SSL/TLS negotiation. + * This method is not called unless you use the provided startTLS method. + * + * If a SSL/TLS negotiation fails (invalid certificate, etc) then the socket will immediately close, + * and the onSocket:willDisconnectWithError: delegate method will be called with the specific SSL error code. +**/ +- (void)onSocketDidSecure:(AsyncSocket *)sock; + +@end + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark - +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +@interface AsyncSocket : NSObject +{ + CFSocketNativeHandle theNativeSocket4; + CFSocketNativeHandle theNativeSocket6; + + CFSocketRef theSocket4; // IPv4 accept or connect socket + CFSocketRef theSocket6; // IPv6 accept or connect socket + + CFReadStreamRef theReadStream; + CFWriteStreamRef theWriteStream; + + CFRunLoopSourceRef theSource4; // For theSocket4 + CFRunLoopSourceRef theSource6; // For theSocket6 + CFRunLoopRef theRunLoop; + CFSocketContext theContext; + NSArray *theRunLoopModes; + + NSTimer *theConnectTimer; + + NSMutableArray *theReadQueue; + AsyncReadPacket *theCurrentRead; + NSTimer *theReadTimer; + NSMutableData *partialReadBuffer; + + NSMutableArray *theWriteQueue; + AsyncWritePacket *theCurrentWrite; + NSTimer *theWriteTimer; + + id theDelegate; + UInt16 theFlags; + + long theUserData; +} + +- (id)init; +- (id)initWithDelegate:(id)delegate; +- (id)initWithDelegate:(id)delegate userData:(long)userData; + +/* String representation is long but has no "\n". */ +- (NSString *)description; + +/** + * Use "canSafelySetDelegate" to see if there is any pending business (reads and writes) with the current delegate + * before changing it. It is, of course, safe to change the delegate before connecting or accepting connections. +**/ +- (id)delegate; +- (BOOL)canSafelySetDelegate; +- (void)setDelegate:(id)delegate; + +/* User data can be a long, or an id or void * cast to a long. */ +- (long)userData; +- (void)setUserData:(long)userData; + +/* Don't use these to read or write. And don't close them either! */ +- (CFSocketRef)getCFSocket; +- (CFReadStreamRef)getCFReadStream; +- (CFWriteStreamRef)getCFWriteStream; + +// Once one of the accept or connect methods are called, the AsyncSocket instance is locked in +// and the other accept/connect methods can't be called without disconnecting the socket first. +// If the attempt fails or times out, these methods either return NO or +// call "onSocket:willDisconnectWithError:" and "onSockedDidDisconnect:". + +// When an incoming connection is accepted, AsyncSocket invokes several delegate methods. +// These methods are (in chronological order): +// 1. onSocket:didAcceptNewSocket: +// 2. onSocket:wantsRunLoopForNewSocket: +// 3. onSocketWillConnect: +// +// Your server code will need to retain the accepted socket (if you want to accept it). +// The best place to do this is probably in the onSocket:didAcceptNewSocket: method. +// +// After the read and write streams have been setup for the newly accepted socket, +// the onSocket:didConnectToHost:port: method will be called on the proper run loop. +// +// Multithreading Note: If you're going to be moving the newly accepted socket to another run +// loop by implementing onSocket:wantsRunLoopForNewSocket:, then you should wait until the +// onSocket:didConnectToHost:port: method before calling read, write, or startTLS methods. +// Otherwise read/write events are scheduled on the incorrect runloop, and chaos may ensue. + +/** + * Tells the socket to begin listening and accepting connections on the given port. + * When a connection comes in, the AsyncSocket instance will call the various delegate methods (see above). + * The socket will listen on all available interfaces (e.g. wifi, ethernet, etc) +**/ +- (BOOL)acceptOnPort:(UInt16)port error:(NSError **)errPtr; + +/** + * This method is the same as acceptOnPort:error: with the additional option + * of specifying which interface to listen on. So, for example, if you were writing code for a server that + * has multiple IP addresses, you could specify which address you wanted to listen on. Or you could use it + * to specify that the socket should only accept connections over ethernet, and not other interfaces such as wifi. + * You may also use the special strings "localhost" or "loopback" to specify that + * the socket only accept connections from the local machine. + * + * To accept connections on any interface pass nil, or simply use the acceptOnPort:error: method. +**/ +- (BOOL)acceptOnInterface:(NSString *)interface port:(UInt16)port error:(NSError **)errPtr; + +/** + * Connects to the given host and port. + * The host may be a domain name (e.g. "deusty.com") or an IP address string (e.g. "192.168.0.2") +**/ +- (BOOL)connectToHost:(NSString *)hostname onPort:(UInt16)port error:(NSError **)errPtr; + +/** + * This method is the same as connectToHost:onPort:error: with an additional timeout option. + * To not time out use a negative time interval, or simply use the connectToHost:onPort:error: method. +**/ +- (BOOL)connectToHost:(NSString *)hostname + onPort:(UInt16)port + withTimeout:(NSTimeInterval)timeout + error:(NSError **)errPtr; + +/** + * Connects to the given address, specified as a sockaddr structure wrapped in a NSData object. + * For example, a NSData object returned from NSNetservice's addresses method. + * + * If you have an existing struct sockaddr you can convert it to a NSData object like so: + * struct sockaddr sa -> NSData *dsa = [NSData dataWithBytes:&remoteAddr length:remoteAddr.sa_len]; + * struct sockaddr *sa -> NSData *dsa = [NSData dataWithBytes:remoteAddr length:remoteAddr->sa_len]; +**/ +- (BOOL)connectToAddress:(NSData *)remoteAddr error:(NSError **)errPtr; + +/** + * This method is the same as connectToAddress:error: with an additional timeout option. + * To not time out use a negative time interval, or simply use the connectToAddress:error: method. +**/ +- (BOOL)connectToAddress:(NSData *)remoteAddr withTimeout:(NSTimeInterval)timeout error:(NSError **)errPtr; + +- (BOOL)connectToAddress:(NSData *)remoteAddr + viaInterfaceAddress:(NSData *)interfaceAddr + withTimeout:(NSTimeInterval)timeout + error:(NSError **)errPtr; + +/** + * Disconnects immediately. Any pending reads or writes are dropped. + * If the socket is not already disconnected, the onSocketDidDisconnect delegate method + * will be called immediately, before this method returns. + * + * Please note the recommended way of releasing an AsyncSocket instance (e.g. in a dealloc method) + * [asyncSocket setDelegate:nil]; + * [asyncSocket disconnect]; + * [asyncSocket release]; +**/ +- (void)disconnect; + +/** + * Disconnects after all pending reads have completed. + * After calling this, the read and write methods will do nothing. + * The socket will disconnect even if there are still pending writes. +**/ +- (void)disconnectAfterReading; + +/** + * Disconnects after all pending writes have completed. + * After calling this, the read and write methods will do nothing. + * The socket will disconnect even if there are still pending reads. +**/ +- (void)disconnectAfterWriting; + +/** + * Disconnects after all pending reads and writes have completed. + * After calling this, the read and write methods will do nothing. +**/ +- (void)disconnectAfterReadingAndWriting; + +/* Returns YES if the socket and streams are open, connected, and ready for reading and writing. */ +- (BOOL)isConnected; + +/** + * Returns the local or remote host and port to which this socket is connected, or nil and 0 if not connected. + * The host will be an IP address. +**/ +- (NSString *)connectedHost; +- (UInt16)connectedPort; + +- (NSString *)localHost; +- (UInt16)localPort; + +/** + * Returns the local or remote address to which this socket is connected, + * specified as a sockaddr structure wrapped in a NSData object. + * + * See also the connectedHost, connectedPort, localHost and localPort methods. +**/ +- (NSData *)connectedAddress; +- (NSData *)localAddress; + +/** + * Returns whether the socket is IPv4 or IPv6. + * An accepting socket may be both. +**/ +- (BOOL)isIPv4; +- (BOOL)isIPv6; + +// The readData and writeData methods won't block (they are asynchronous). +// +// When a read is complete the onSocket:didReadData:withTag: delegate method is called. +// When a write is complete the onSocket:didWriteDataWithTag: delegate method is called. +// +// You may optionally set a timeout for any read/write operation. (To not timeout, use a negative time interval.) +// If a read/write opertion times out, the corresponding "onSocket:shouldTimeout..." delegate method +// is called to optionally allow you to extend the timeout. +// Upon a timeout, the "onSocket:willDisconnectWithError:" method is called, followed by "onSocketDidDisconnect". +// +// The tag is for your convenience. +// You can use it as an array index, step number, state id, pointer, etc. + +/** + * Reads the first available bytes that become available on the socket. + * + * If the timeout value is negative, the read operation will not use a timeout. +**/ +- (void)readDataWithTimeout:(NSTimeInterval)timeout tag:(long)tag; + +/** + * Reads the first available bytes that become available on the socket. + * The bytes will be appended to the given byte buffer starting at the given offset. + * The given buffer will automatically be increased in size if needed. + * + * If the timeout value is negative, the read operation will not use a timeout. + * If the buffer if nil, the socket will create a buffer for you. + * + * If the bufferOffset is greater than the length of the given buffer, + * the method will do nothing, and the delegate will not be called. + * + * If you pass a buffer, you must not alter it in any way while AsyncSocket is using it. + * After completion, the data returned in onSocket:didReadData:withTag: will be a subset of the given buffer. + * That is, it will reference the bytes that were appended to the given buffer. +**/ +- (void)readDataWithTimeout:(NSTimeInterval)timeout + buffer:(NSMutableData *)buffer + bufferOffset:(NSUInteger)offset + tag:(long)tag; + +/** + * Reads the first available bytes that become available on the socket. + * The bytes will be appended to the given byte buffer starting at the given offset. + * The given buffer will automatically be increased in size if needed. + * A maximum of length bytes will be read. + * + * If the timeout value is negative, the read operation will not use a timeout. + * If the buffer if nil, a buffer will automatically be created for you. + * If maxLength is zero, no length restriction is enforced. + * + * If the bufferOffset is greater than the length of the given buffer, + * the method will do nothing, and the delegate will not be called. + * + * If you pass a buffer, you must not alter it in any way while AsyncSocket is using it. + * After completion, the data returned in onSocket:didReadData:withTag: will be a subset of the given buffer. + * That is, it will reference the bytes that were appended to the given buffer. +**/ +- (void)readDataWithTimeout:(NSTimeInterval)timeout + buffer:(NSMutableData *)buffer + bufferOffset:(NSUInteger)offset + maxLength:(NSUInteger)length + tag:(long)tag; + +/** + * Reads the given number of bytes. + * + * If the timeout value is negative, the read operation will not use a timeout. + * + * If the length is 0, this method does nothing and the delegate is not called. +**/ +- (void)readDataToLength:(NSUInteger)length withTimeout:(NSTimeInterval)timeout tag:(long)tag; + +/** + * Reads the given number of bytes. + * The bytes will be appended to the given byte buffer starting at the given offset. + * The given buffer will automatically be increased in size if needed. + * + * If the timeout value is negative, the read operation will not use a timeout. + * If the buffer if nil, a buffer will automatically be created for you. + * + * If the length is 0, this method does nothing and the delegate is not called. + * If the bufferOffset is greater than the length of the given buffer, + * the method will do nothing, and the delegate will not be called. + * + * If you pass a buffer, you must not alter it in any way while AsyncSocket is using it. + * After completion, the data returned in onSocket:didReadData:withTag: will be a subset of the given buffer. + * That is, it will reference the bytes that were appended to the given buffer. +**/ +- (void)readDataToLength:(NSUInteger)length + withTimeout:(NSTimeInterval)timeout + buffer:(NSMutableData *)buffer + bufferOffset:(NSUInteger)offset + tag:(long)tag; + +/** + * Reads bytes until (and including) the passed "data" parameter, which acts as a separator. + * + * If the timeout value is negative, the read operation will not use a timeout. + * + * If you pass nil or zero-length data as the "data" parameter, + * the method will do nothing, and the delegate will not be called. + * + * To read a line from the socket, use the line separator (e.g. CRLF for HTTP, see below) as the "data" parameter. + * Note that this method is not character-set aware, so if a separator can occur naturally as part of the encoding for + * a character, the read will prematurely end. +**/ +- (void)readDataToData:(NSData *)data withTimeout:(NSTimeInterval)timeout tag:(long)tag; + +/** + * Reads bytes until (and including) the passed "data" parameter, which acts as a separator. + * The bytes will be appended to the given byte buffer starting at the given offset. + * The given buffer will automatically be increased in size if needed. + * + * If the timeout value is negative, the read operation will not use a timeout. + * If the buffer if nil, a buffer will automatically be created for you. + * + * If the bufferOffset is greater than the length of the given buffer, + * the method will do nothing, and the delegate will not be called. + * + * If you pass a buffer, you must not alter it in any way while AsyncSocket is using it. + * After completion, the data returned in onSocket:didReadData:withTag: will be a subset of the given buffer. + * That is, it will reference the bytes that were appended to the given buffer. + * + * To read a line from the socket, use the line separator (e.g. CRLF for HTTP, see below) as the "data" parameter. + * Note that this method is not character-set aware, so if a separator can occur naturally as part of the encoding for + * a character, the read will prematurely end. +**/ +- (void)readDataToData:(NSData *)data + withTimeout:(NSTimeInterval)timeout + buffer:(NSMutableData *)buffer + bufferOffset:(NSUInteger)offset + tag:(long)tag; + +/** + * Reads bytes until (and including) the passed "data" parameter, which acts as a separator. + * + * If the timeout value is negative, the read operation will not use a timeout. + * + * If maxLength is zero, no length restriction is enforced. + * Otherwise if maxLength bytes are read without completing the read, + * it is treated similarly to a timeout - the socket is closed with a AsyncSocketReadMaxedOutError. + * The read will complete successfully if exactly maxLength bytes are read and the given data is found at the end. + * + * If you pass nil or zero-length data as the "data" parameter, + * the method will do nothing, and the delegate will not be called. + * If you pass a maxLength parameter that is less than the length of the data parameter, + * the method will do nothing, and the delegate will not be called. + * + * To read a line from the socket, use the line separator (e.g. CRLF for HTTP, see below) as the "data" parameter. + * Note that this method is not character-set aware, so if a separator can occur naturally as part of the encoding for + * a character, the read will prematurely end. +**/ +- (void)readDataToData:(NSData *)data withTimeout:(NSTimeInterval)timeout maxLength:(NSUInteger)length tag:(long)tag; + +/** + * Reads bytes until (and including) the passed "data" parameter, which acts as a separator. + * The bytes will be appended to the given byte buffer starting at the given offset. + * The given buffer will automatically be increased in size if needed. + * A maximum of length bytes will be read. + * + * If the timeout value is negative, the read operation will not use a timeout. + * If the buffer if nil, a buffer will automatically be created for you. + * + * If maxLength is zero, no length restriction is enforced. + * Otherwise if maxLength bytes are read without completing the read, + * it is treated similarly to a timeout - the socket is closed with a AsyncSocketReadMaxedOutError. + * The read will complete successfully if exactly maxLength bytes are read and the given data is found at the end. + * + * If you pass a maxLength parameter that is less than the length of the data parameter, + * the method will do nothing, and the delegate will not be called. + * If the bufferOffset is greater than the length of the given buffer, + * the method will do nothing, and the delegate will not be called. + * + * If you pass a buffer, you must not alter it in any way while AsyncSocket is using it. + * After completion, the data returned in onSocket:didReadData:withTag: will be a subset of the given buffer. + * That is, it will reference the bytes that were appended to the given buffer. + * + * To read a line from the socket, use the line separator (e.g. CRLF for HTTP, see below) as the "data" parameter. + * Note that this method is not character-set aware, so if a separator can occur naturally as part of the encoding for + * a character, the read will prematurely end. +**/ +- (void)readDataToData:(NSData *)data + withTimeout:(NSTimeInterval)timeout + buffer:(NSMutableData *)buffer + bufferOffset:(NSUInteger)offset + maxLength:(NSUInteger)length + tag:(long)tag; + +/** + * Writes data to the socket, and calls the delegate when finished. + * + * If you pass in nil or zero-length data, this method does nothing and the delegate will not be called. + * If the timeout value is negative, the write operation will not use a timeout. +**/ +- (void)writeData:(NSData *)data withTimeout:(NSTimeInterval)timeout tag:(long)tag; + +/** + * Returns progress of current read or write, from 0.0 to 1.0, or NaN if no read/write (use isnan() to check). + * "tag", "done" and "total" will be filled in if they aren't NULL. +**/ +- (float)progressOfReadReturningTag:(long *)tag bytesDone:(NSUInteger *)done total:(NSUInteger *)total; +- (float)progressOfWriteReturningTag:(long *)tag bytesDone:(NSUInteger *)done total:(NSUInteger *)total; + +/** + * Secures the connection using SSL/TLS. + * + * This method may be called at any time, and the TLS handshake will occur after all pending reads and writes + * are finished. This allows one the option of sending a protocol dependent StartTLS message, and queuing + * the upgrade to TLS at the same time, without having to wait for the write to finish. + * Any reads or writes scheduled after this method is called will occur over the secured connection. + * + * The possible keys and values for the TLS settings are well documented. + * Some possible keys are: + * - kCFStreamSSLLevel + * - kCFStreamSSLAllowsExpiredCertificates + * - kCFStreamSSLAllowsExpiredRoots + * - kCFStreamSSLAllowsAnyRoot + * - kCFStreamSSLValidatesCertificateChain + * - kCFStreamSSLPeerName + * - kCFStreamSSLCertificates + * - kCFStreamSSLIsServer + * + * Please refer to Apple's documentation for associated values, as well as other possible keys. + * + * If you pass in nil or an empty dictionary, the default settings will be used. + * + * The default settings will check to make sure the remote party's certificate is signed by a + * trusted 3rd party certificate agency (e.g. verisign) and that the certificate is not expired. + * However it will not verify the name on the certificate unless you + * give it a name to verify against via the kCFStreamSSLPeerName key. + * The security implications of this are important to understand. + * Imagine you are attempting to create a secure connection to MySecureServer.com, + * but your socket gets directed to MaliciousServer.com because of a hacked DNS server. + * If you simply use the default settings, and MaliciousServer.com has a valid certificate, + * the default settings will not detect any problems since the certificate is valid. + * To properly secure your connection in this particular scenario you + * should set the kCFStreamSSLPeerName property to "MySecureServer.com". + * If you do not know the peer name of the remote host in advance (for example, you're not sure + * if it will be "domain.com" or "www.domain.com"), then you can use the default settings to validate the + * certificate, and then use the X509Certificate class to verify the issuer after the socket has been secured. + * The X509Certificate class is part of the CocoaAsyncSocket open source project. +**/ +- (void)startTLS:(NSDictionary *)tlsSettings; + +/** + * For handling readDataToData requests, data is necessarily read from the socket in small increments. + * The performance can be much improved by allowing AsyncSocket to read larger chunks at a time and + * store any overflow in a small internal buffer. + * This is termed pre-buffering, as some data may be read for you before you ask for it. + * If you use readDataToData a lot, enabling pre-buffering will result in better performance, especially on the iPhone. + * + * The default pre-buffering state is controlled by the DEFAULT_PREBUFFERING definition. + * It is highly recommended one leave this set to YES. + * + * This method exists in case pre-buffering needs to be disabled by default for some unforeseen reason. + * In that case, this method exists to allow one to easily enable pre-buffering when ready. +**/ +- (void)enablePreBuffering; + +/** + * When you create an AsyncSocket, it is added to the runloop of the current thread. + * So for manually created sockets, it is easiest to simply create the socket on the thread you intend to use it. + * + * If a new socket is accepted, the delegate method onSocket:wantsRunLoopForNewSocket: is called to + * allow you to place the socket on a separate thread. This works best in conjunction with a thread pool design. + * + * If, however, you need to move the socket to a separate thread at a later time, this + * method may be used to accomplish the task. + * + * This method must be called from the thread/runloop the socket is currently running on. + * + * Note: After calling this method, all further method calls to this object should be done from the given runloop. + * Also, all delegate calls will be sent on the given runloop. +**/ +- (BOOL)moveToRunLoop:(NSRunLoop *)runLoop; + +/** + * Allows you to configure which run loop modes the socket uses. + * The default set of run loop modes is NSDefaultRunLoopMode. + * + * If you'd like your socket to continue operation during other modes, you may want to add modes such as + * NSModalPanelRunLoopMode or NSEventTrackingRunLoopMode. Or you may simply want to use NSRunLoopCommonModes. + * + * Accepted sockets will automatically inherit the same run loop modes as the listening socket. + * + * Note: NSRunLoopCommonModes is defined in 10.5. For previous versions one can use kCFRunLoopCommonModes. +**/ +- (BOOL)setRunLoopModes:(NSArray *)runLoopModes; +- (BOOL)addRunLoopMode:(NSString *)runLoopMode; +- (BOOL)removeRunLoopMode:(NSString *)runLoopMode; + +/** + * Returns the current run loop modes the AsyncSocket instance is operating in. + * The default set of run loop modes is NSDefaultRunLoopMode. +**/ +- (NSArray *)runLoopModes; + +/** + * In the event of an error, this method may be called during onSocket:willDisconnectWithError: to read + * any data that's left on the socket. +**/ +- (NSData *)unreadData; + +/* A few common line separators, for use with the readDataToData:... methods. */ ++ (NSData *)CRLFData; // 0x0D0A ++ (NSData *)CRData; // 0x0D ++ (NSData *)LFData; // 0x0A ++ (NSData *)ZeroData; // 0x00 + +@end diff --git a/games/Pong/Classes/AsyncSocket.m b/games/Pong/Classes/AsyncSocket.m new file mode 100644 index 0000000..4f0ab94 --- /dev/null +++ b/games/Pong/Classes/AsyncSocket.m @@ -0,0 +1,4343 @@ +// +// AsyncSocket.m +// +// This class is in the public domain. +// Originally created by Dustin Voss on Wed Jan 29 2003. +// Updated and maintained by Deusty Designs and the Mac development community. +// +// http://code.google.com/p/cocoaasyncsocket/ +// + +#import "AsyncSocket.h" +#import +#import +#import +#import + +#if TARGET_OS_IPHONE +// Note: You may need to add the CFNetwork Framework to your project +#import +#endif + +#pragma mark Declarations + +#define DEFAULT_PREBUFFERING YES // Whether pre-buffering is enabled by default + +#define READQUEUE_CAPACITY 5 // Initial capacity +#define WRITEQUEUE_CAPACITY 5 // Initial capacity +#define READALL_CHUNKSIZE 256 // Incremental increase in buffer size +#define WRITE_CHUNKSIZE (1024 * 4) // Limit on size of each write pass + +// AsyncSocket is RunLoop based, and is thus not thread-safe. +// You must always access your AsyncSocket instance from the thread/runloop in which the instance is running. +// You can use methods such as performSelectorOnThread to accomplish this. +// Failure to comply with these thread-safety rules may result in errors. +// You can enable this option to help diagnose where you are incorrectly accessing your socket. +#define DEBUG_THREAD_SAFETY 0 +// +// If you constantly need to access your socket from multiple threads +// then you may consider using GCDAsyncSocket instead, which is thread-safe. + +NSString *const AsyncSocketException = @"AsyncSocketException"; +NSString *const AsyncSocketErrorDomain = @"AsyncSocketErrorDomain"; + + +enum AsyncSocketFlags +{ + kEnablePreBuffering = 1 << 0, // If set, pre-buffering is enabled + kDidStartDelegate = 1 << 1, // If set, disconnection results in delegate call + kDidCompleteOpenForRead = 1 << 2, // If set, open callback has been called for read stream + kDidCompleteOpenForWrite = 1 << 3, // If set, open callback has been called for write stream + kStartingReadTLS = 1 << 4, // If set, we're waiting for TLS negotiation to complete + kStartingWriteTLS = 1 << 5, // If set, we're waiting for TLS negotiation to complete + kForbidReadsWrites = 1 << 6, // If set, no new reads or writes are allowed + kDisconnectAfterReads = 1 << 7, // If set, disconnect after no more reads are queued + kDisconnectAfterWrites = 1 << 8, // If set, disconnect after no more writes are queued + kClosingWithError = 1 << 9, // If set, the socket is being closed due to an error + kDequeueReadScheduled = 1 << 10, // If set, a maybeDequeueRead operation is already scheduled + kDequeueWriteScheduled = 1 << 11, // If set, a maybeDequeueWrite operation is already scheduled + kSocketCanAcceptBytes = 1 << 12, // If set, we know socket can accept bytes. If unset, it's unknown. + kSocketHasBytesAvailable = 1 << 13, // If set, we know socket has bytes available. If unset, it's unknown. +}; + +@interface AsyncSocket (Private) + +// Connecting +- (void)startConnectTimeout:(NSTimeInterval)timeout; +- (void)endConnectTimeout; +- (void)doConnectTimeout:(NSTimer *)timer; + +// Socket Implementation +- (CFSocketRef)newAcceptSocketForAddress:(NSData *)addr error:(NSError **)errPtr; +- (BOOL)createSocketForAddress:(NSData *)remoteAddr error:(NSError **)errPtr; +- (BOOL)bindSocketToAddress:(NSData *)interfaceAddr error:(NSError **)errPtr; +- (BOOL)attachSocketsToRunLoop:(NSRunLoop *)runLoop error:(NSError **)errPtr; +- (BOOL)configureSocketAndReturnError:(NSError **)errPtr; +- (BOOL)connectSocketToAddress:(NSData *)remoteAddr error:(NSError **)errPtr; +- (void)doAcceptWithSocket:(CFSocketNativeHandle)newSocket; +- (void)doSocketOpen:(CFSocketRef)sock withCFSocketError:(CFSocketError)err; + +// Stream Implementation +- (BOOL)createStreamsFromNative:(CFSocketNativeHandle)native error:(NSError **)errPtr; +- (BOOL)createStreamsToHost:(NSString *)hostname onPort:(UInt16)port error:(NSError **)errPtr; +- (BOOL)attachStreamsToRunLoop:(NSRunLoop *)runLoop error:(NSError **)errPtr; +- (BOOL)configureStreamsAndReturnError:(NSError **)errPtr; +- (BOOL)openStreamsAndReturnError:(NSError **)errPtr; +- (void)doStreamOpen; +- (BOOL)setSocketFromStreamsAndReturnError:(NSError **)errPtr; + +// Disconnect Implementation +- (void)closeWithError:(NSError *)err; +- (void)recoverUnreadData; +- (void)emptyQueues; +- (void)close; + +// Errors +- (NSError *)getErrnoError; +- (NSError *)getAbortError; +- (NSError *)getStreamError; +- (NSError *)getSocketError; +- (NSError *)getConnectTimeoutError; +- (NSError *)getReadMaxedOutError; +- (NSError *)getReadTimeoutError; +- (NSError *)getWriteTimeoutError; +- (NSError *)errorFromCFStreamError:(CFStreamError)err; + +// Diagnostics +- (BOOL)isDisconnected; +- (BOOL)areStreamsConnected; +- (NSString *)connectedHostFromNativeSocket4:(CFSocketNativeHandle)theNativeSocket; +- (NSString *)connectedHostFromNativeSocket6:(CFSocketNativeHandle)theNativeSocket; +- (NSString *)connectedHostFromCFSocket4:(CFSocketRef)socket; +- (NSString *)connectedHostFromCFSocket6:(CFSocketRef)socket; +- (UInt16)connectedPortFromNativeSocket4:(CFSocketNativeHandle)theNativeSocket; +- (UInt16)connectedPortFromNativeSocket6:(CFSocketNativeHandle)theNativeSocket; +- (UInt16)connectedPortFromCFSocket4:(CFSocketRef)socket; +- (UInt16)connectedPortFromCFSocket6:(CFSocketRef)socket; +- (NSString *)localHostFromNativeSocket4:(CFSocketNativeHandle)theNativeSocket; +- (NSString *)localHostFromNativeSocket6:(CFSocketNativeHandle)theNativeSocket; +- (NSString *)localHostFromCFSocket4:(CFSocketRef)socket; +- (NSString *)localHostFromCFSocket6:(CFSocketRef)socket; +- (UInt16)localPortFromNativeSocket4:(CFSocketNativeHandle)theNativeSocket; +- (UInt16)localPortFromNativeSocket6:(CFSocketNativeHandle)theNativeSocket; +- (UInt16)localPortFromCFSocket4:(CFSocketRef)socket; +- (UInt16)localPortFromCFSocket6:(CFSocketRef)socket; +- (NSString *)hostFromAddress4:(struct sockaddr_in *)pSockaddr4; +- (NSString *)hostFromAddress6:(struct sockaddr_in6 *)pSockaddr6; +- (UInt16)portFromAddress4:(struct sockaddr_in *)pSockaddr4; +- (UInt16)portFromAddress6:(struct sockaddr_in6 *)pSockaddr6; + +// Reading +- (void)doBytesAvailable; +- (void)completeCurrentRead; +- (void)endCurrentRead; +- (void)scheduleDequeueRead; +- (void)maybeDequeueRead; +- (void)doReadTimeout:(NSTimer *)timer; + +// Writing +- (void)doSendBytes; +- (void)completeCurrentWrite; +- (void)endCurrentWrite; +- (void)scheduleDequeueWrite; +- (void)maybeDequeueWrite; +- (void)maybeScheduleDisconnect; +- (void)doWriteTimeout:(NSTimer *)timer; + +// Run Loop +- (void)runLoopAddSource:(CFRunLoopSourceRef)source; +- (void)runLoopRemoveSource:(CFRunLoopSourceRef)source; +- (void)runLoopAddTimer:(NSTimer *)timer; +- (void)runLoopRemoveTimer:(NSTimer *)timer; +- (void)runLoopUnscheduleReadStream; +- (void)runLoopUnscheduleWriteStream; + +// Security +- (void)maybeStartTLS; +- (void)onTLSHandshakeSuccessful; + +// Callbacks +- (void)doCFCallback:(CFSocketCallBackType)type + forSocket:(CFSocketRef)sock withAddress:(NSData *)address withData:(const void *)pData; +- (void)doCFReadStreamCallback:(CFStreamEventType)type forStream:(CFReadStreamRef)stream; +- (void)doCFWriteStreamCallback:(CFStreamEventType)type forStream:(CFWriteStreamRef)stream; + +@end + +static void MyCFSocketCallback(CFSocketRef, CFSocketCallBackType, CFDataRef, const void *, void *); +static void MyCFReadStreamCallback(CFReadStreamRef stream, CFStreamEventType type, void *pInfo); +static void MyCFWriteStreamCallback(CFWriteStreamRef stream, CFStreamEventType type, void *pInfo); + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark - +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +/** + * The AsyncReadPacket encompasses the instructions for any given read. + * The content of a read packet allows the code to determine if we're: + * - reading to a certain length + * - reading to a certain separator + * - or simply reading the first chunk of available data +**/ +@interface AsyncReadPacket : NSObject +{ + @public + NSMutableData *buffer; + NSUInteger startOffset; + NSUInteger bytesDone; + NSUInteger maxLength; + NSTimeInterval timeout; + NSUInteger readLength; + NSData *term; + BOOL bufferOwner; + NSUInteger originalBufferLength; + long tag; +} +- (id)initWithData:(NSMutableData *)d + startOffset:(NSUInteger)s + maxLength:(NSUInteger)m + timeout:(NSTimeInterval)t + readLength:(NSUInteger)l + terminator:(NSData *)e + tag:(long)i; + +- (NSUInteger)readLengthForNonTerm; +- (NSUInteger)readLengthForTerm; +- (NSUInteger)readLengthForTermWithPreBuffer:(NSData *)preBuffer found:(BOOL *)foundPtr; + +- (NSUInteger)prebufferReadLengthForTerm; +- (NSInteger)searchForTermAfterPreBuffering:(NSUInteger)numBytes; +@end + +@implementation AsyncReadPacket + +- (id)initWithData:(NSMutableData *)d + startOffset:(NSUInteger)s + maxLength:(NSUInteger)m + timeout:(NSTimeInterval)t + readLength:(NSUInteger)l + terminator:(NSData *)e + tag:(long)i +{ + if((self = [super init])) + { + if (d) + { + buffer = [d retain]; + startOffset = s; + bufferOwner = NO; + originalBufferLength = [d length]; + } + else + { + if (readLength > 0) + buffer = [[NSMutableData alloc] initWithLength:readLength]; + else + buffer = [[NSMutableData alloc] initWithLength:0]; + + startOffset = 0; + bufferOwner = YES; + originalBufferLength = 0; + } + + bytesDone = 0; + maxLength = m; + timeout = t; + readLength = l; + term = [e copy]; + tag = i; + } + return self; +} + +/** + * For read packets without a set terminator, returns the safe length of data that can be read + * without exceeding the maxLength, or forcing a resize of the buffer if at all possible. +**/ +- (NSUInteger)readLengthForNonTerm +{ + NSAssert(term == nil, @"This method does not apply to term reads"); + + if (readLength > 0) + { + // Read a specific length of data + + return readLength - bytesDone; + + // No need to avoid resizing the buffer. + // It should be resized if the buffer space is less than the requested read length. + } + else + { + // Read all available data + + NSUInteger result = READALL_CHUNKSIZE; + + if (maxLength > 0) + { + result = MIN(result, (maxLength - bytesDone)); + } + + if (!bufferOwner) + { + // We did NOT create the buffer. + // It is owned by the caller. + // Avoid resizing the buffer if at all possible. + + if ([buffer length] == originalBufferLength) + { + NSUInteger buffSize = [buffer length]; + NSUInteger buffSpace = buffSize - startOffset - bytesDone; + + if (buffSpace > 0) + { + result = MIN(result, buffSpace); + } + } + } + + return result; + } +} + +/** + * For read packets with a set terminator, returns the safe length of data that can be read + * without going over a terminator, or the maxLength, or forcing a resize of the buffer if at all possible. + * + * It is assumed the terminator has not already been read. +**/ +- (NSUInteger)readLengthForTerm +{ + NSAssert(term != nil, @"This method does not apply to non-term reads"); + + // What we're going to do is look for a partial sequence of the terminator at the end of the buffer. + // If a partial sequence occurs, then we must assume the next bytes to arrive will be the rest of the term, + // and we can only read that amount. + // Otherwise, we're safe to read the entire length of the term. + + NSUInteger termLength = [term length]; + + // Shortcuts + if (bytesDone == 0) return termLength; + if (termLength == 1) return termLength; + + // i = index within buffer at which to check data + // j = length of term to check against + + NSUInteger i, j; + if (bytesDone >= termLength) + { + i = bytesDone - termLength + 1; + j = termLength - 1; + } + else + { + i = 0; + j = bytesDone; + } + + NSUInteger result = termLength; + + void *buf = [buffer mutableBytes]; + const void *termBuf = [term bytes]; + + while (i < bytesDone) + { + void *subbuf = buf + startOffset + i; + + if (memcmp(subbuf, termBuf, j) == 0) + { + result = termLength - j; + break; + } + + i++; + j--; + } + + if (maxLength > 0) + { + result = MIN(result, (maxLength - bytesDone)); + } + + if (!bufferOwner) + { + // We did NOT create the buffer. + // It is owned by the caller. + // Avoid resizing the buffer if at all possible. + + if ([buffer length] == originalBufferLength) + { + NSUInteger buffSize = [buffer length]; + NSUInteger buffSpace = buffSize - startOffset - bytesDone; + + if (buffSpace > 0) + { + result = MIN(result, buffSpace); + } + } + } + + return result; +} + +/** + * For read packets with a set terminator, + * returns the safe length of data that can be read from the given preBuffer, + * without going over a terminator or the maxLength. + * + * It is assumed the terminator has not already been read. +**/ +- (NSUInteger)readLengthForTermWithPreBuffer:(NSData *)preBuffer found:(BOOL *)foundPtr +{ + NSAssert(term != nil, @"This method does not apply to non-term reads"); + NSAssert([preBuffer length] > 0, @"Invoked with empty pre buffer!"); + + // We know that the terminator, as a whole, doesn't exist in our own buffer. + // But it is possible that a portion of it exists in our buffer. + // So we're going to look for the terminator starting with a portion of our own buffer. + // + // Example: + // + // term length = 3 bytes + // bytesDone = 5 bytes + // preBuffer length = 5 bytes + // + // If we append the preBuffer to our buffer, + // it would look like this: + // + // --------------------- + // |B|B|B|B|B|P|P|P|P|P| + // --------------------- + // + // So we start our search here: + // + // --------------------- + // |B|B|B|B|B|P|P|P|P|P| + // -------^-^-^--------- + // + // And move forwards... + // + // --------------------- + // |B|B|B|B|B|P|P|P|P|P| + // ---------^-^-^------- + // + // Until we find the terminator or reach the end. + // + // --------------------- + // |B|B|B|B|B|P|P|P|P|P| + // ---------------^-^-^- + + BOOL found = NO; + + NSUInteger termLength = [term length]; + NSUInteger preBufferLength = [preBuffer length]; + + if ((bytesDone + preBufferLength) < termLength) + { + // Not enough data for a full term sequence yet + return preBufferLength; + } + + NSUInteger maxPreBufferLength; + if (maxLength > 0) { + maxPreBufferLength = MIN(preBufferLength, (maxLength - bytesDone)); + + // Note: maxLength >= termLength + } + else { + maxPreBufferLength = preBufferLength; + } + + Byte seq[termLength]; + const void *termBuf = [term bytes]; + + NSUInteger bufLen = MIN(bytesDone, (termLength - 1)); + void *buf = [buffer mutableBytes] + startOffset + bytesDone - bufLen; + + NSUInteger preLen = termLength - bufLen; + void *pre = (void *)[preBuffer bytes]; + + NSUInteger loopCount = bufLen + maxPreBufferLength - termLength + 1; // Plus one. See example above. + + NSUInteger result = preBufferLength; + + NSUInteger i; + for (i = 0; i < loopCount; i++) + { + if (bufLen > 0) + { + // Combining bytes from buffer and preBuffer + + memcpy(seq, buf, bufLen); + memcpy(seq + bufLen, pre, preLen); + + if (memcmp(seq, termBuf, termLength) == 0) + { + result = preLen; + found = YES; + break; + } + + buf++; + bufLen--; + preLen++; + } + else + { + // Comparing directly from preBuffer + + if (memcmp(pre, termBuf, termLength) == 0) + { + NSUInteger preOffset = pre - [preBuffer bytes]; // pointer arithmetic + + result = preOffset + termLength; + found = YES; + break; + } + + pre++; + } + } + + // There is no need to avoid resizing the buffer in this particular situation. + + if (foundPtr) *foundPtr = found; + return result; +} + +/** + * Assuming pre-buffering is enabled, returns the amount of data that can be read + * without going over the maxLength. +**/ +- (NSUInteger)prebufferReadLengthForTerm +{ + NSAssert(term != nil, @"This method does not apply to non-term reads"); + + NSUInteger result = READALL_CHUNKSIZE; + + if (maxLength > 0) + { + result = MIN(result, (maxLength - bytesDone)); + } + + if (!bufferOwner) + { + // We did NOT create the buffer. + // It is owned by the caller. + // Avoid resizing the buffer if at all possible. + + if ([buffer length] == originalBufferLength) + { + NSUInteger buffSize = [buffer length]; + NSUInteger buffSpace = buffSize - startOffset - bytesDone; + + if (buffSpace > 0) + { + result = MIN(result, buffSpace); + } + } + } + + return result; +} + +/** + * For read packets with a set terminator, scans the packet buffer for the term. + * It is assumed the terminator had not been fully read prior to the new bytes. + * + * If the term is found, the number of excess bytes after the term are returned. + * If the term is not found, this method will return -1. + * + * Note: A return value of zero means the term was found at the very end. +**/ +- (NSInteger)searchForTermAfterPreBuffering:(NSUInteger)numBytes +{ + NSAssert(term != nil, @"This method does not apply to non-term reads"); + NSAssert(bytesDone >= numBytes, @"Invoked with invalid numBytes!"); + + // We try to start the search such that the first new byte read matches up with the last byte of the term. + // We continue searching forward after this until the term no longer fits into the buffer. + + NSUInteger termLength = [term length]; + const void *termBuffer = [term bytes]; + + // Remember: This method is called after the bytesDone variable has been updated. + + NSUInteger prevBytesDone = bytesDone - numBytes; + + NSUInteger i; + if (prevBytesDone >= termLength) + i = prevBytesDone - termLength + 1; + else + i = 0; + + while ((i + termLength) <= bytesDone) + { + void *subBuffer = [buffer mutableBytes] + startOffset + i; + + if(memcmp(subBuffer, termBuffer, termLength) == 0) + { + return bytesDone - (i + termLength); + } + + i++; + } + + return -1; +} + +- (void)dealloc +{ + [buffer release]; + [term release]; + [super dealloc]; +} + +@end + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark - +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +/** + * The AsyncWritePacket encompasses the instructions for any given write. +**/ +@interface AsyncWritePacket : NSObject +{ + @public + NSData *buffer; + NSUInteger bytesDone; + long tag; + NSTimeInterval timeout; +} +- (id)initWithData:(NSData *)d timeout:(NSTimeInterval)t tag:(long)i; +@end + +@implementation AsyncWritePacket + +- (id)initWithData:(NSData *)d timeout:(NSTimeInterval)t tag:(long)i +{ + if((self = [super init])) + { + buffer = [d retain]; + timeout = t; + tag = i; + bytesDone = 0; + } + return self; +} + +- (void)dealloc +{ + [buffer release]; + [super dealloc]; +} + +@end + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark - +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +/** + * The AsyncSpecialPacket encompasses special instructions for interruptions in the read/write queues. + * This class my be altered to support more than just TLS in the future. +**/ +@interface AsyncSpecialPacket : NSObject +{ + @public + NSDictionary *tlsSettings; +} +- (id)initWithTLSSettings:(NSDictionary *)settings; +@end + +@implementation AsyncSpecialPacket + +- (id)initWithTLSSettings:(NSDictionary *)settings +{ + if((self = [super init])) + { + tlsSettings = [settings copy]; + } + return self; +} + +- (void)dealloc +{ + [tlsSettings release]; + [super dealloc]; +} + +@end + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark - +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +@implementation AsyncSocket + +- (id)init +{ + return [self initWithDelegate:nil userData:0]; +} + +- (id)initWithDelegate:(id)delegate +{ + return [self initWithDelegate:delegate userData:0]; +} + +// Designated initializer. +- (id)initWithDelegate:(id)delegate userData:(long)userData +{ + if((self = [super init])) + { + theFlags = DEFAULT_PREBUFFERING ? kEnablePreBuffering : 0; + theDelegate = delegate; + theUserData = userData; + + theNativeSocket4 = 0; + theNativeSocket6 = 0; + + theSocket4 = NULL; + theSource4 = NULL; + + theSocket6 = NULL; + theSource6 = NULL; + + theRunLoop = NULL; + theReadStream = NULL; + theWriteStream = NULL; + + theConnectTimer = nil; + + theReadQueue = [[NSMutableArray alloc] initWithCapacity:READQUEUE_CAPACITY]; + theCurrentRead = nil; + theReadTimer = nil; + + partialReadBuffer = [[NSMutableData alloc] initWithCapacity:READALL_CHUNKSIZE]; + + theWriteQueue = [[NSMutableArray alloc] initWithCapacity:WRITEQUEUE_CAPACITY]; + theCurrentWrite = nil; + theWriteTimer = nil; + + // Socket context + NSAssert(sizeof(CFSocketContext) == sizeof(CFStreamClientContext), @"CFSocketContext != CFStreamClientContext"); + theContext.version = 0; + theContext.info = self; + theContext.retain = nil; + theContext.release = nil; + theContext.copyDescription = nil; + + // Default run loop modes + theRunLoopModes = [[NSArray arrayWithObject:NSDefaultRunLoopMode] retain]; + } + return self; +} + +// The socket may been initialized in a connected state and auto-released, so this should close it down cleanly. +- (void)dealloc +{ + [self close]; + [theReadQueue release]; + [theWriteQueue release]; + [theRunLoopModes release]; + [partialReadBuffer release]; + [NSObject cancelPreviousPerformRequestsWithTarget:self]; + [super dealloc]; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Thread-Safety +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +- (void)checkForThreadSafety +{ + if (theRunLoop && (theRunLoop != CFRunLoopGetCurrent())) + { + // AsyncSocket is RunLoop based. + // It is designed to be run and accessed from a particular thread/runloop. + // As such, it is faster as it does not have the overhead of locks/synchronization. + // + // However, this places a minimal requirement on the developer to maintain thread-safety. + // If you are seeing errors or crashes in AsyncSocket, + // it is very likely that thread-safety has been broken. + // This method may be enabled via the DEBUG_THREAD_SAFETY macro, + // and will allow you to discover the place in your code where thread-safety is being broken. + + [NSException raise:AsyncSocketException + format:@"Attempting to access AsyncSocket instance from incorrect thread."]; + + // Note: + // + // If you find you constantly need to access your socket from various threads, + // you may prefer to use GCDAsyncSocket which is thread-safe. + } +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Accessors +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +- (long)userData +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + return theUserData; +} + +- (void)setUserData:(long)userData +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + theUserData = userData; +} + +- (id)delegate +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + return theDelegate; +} + +- (void)setDelegate:(id)delegate +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + theDelegate = delegate; +} + +- (BOOL)canSafelySetDelegate +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + return ([theReadQueue count] == 0 && [theWriteQueue count] == 0 && theCurrentRead == nil && theCurrentWrite == nil); +} + +- (CFSocketRef)getCFSocket +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + if(theSocket4) + return theSocket4; + else + return theSocket6; +} + +- (CFReadStreamRef)getCFReadStream +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + return theReadStream; +} + +- (CFWriteStreamRef)getCFWriteStream +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + return theWriteStream; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Progress +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +- (float)progressOfReadReturningTag:(long *)tag bytesDone:(NSUInteger *)done total:(NSUInteger *)total +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + // Check to make sure we're actually reading something right now, + // and that the read packet isn't an AsyncSpecialPacket (upgrade to TLS). + if (!theCurrentRead || ![theCurrentRead isKindOfClass:[AsyncReadPacket class]]) + { + if (tag != NULL) *tag = 0; + if (done != NULL) *done = 0; + if (total != NULL) *total = 0; + + return NAN; + } + + // It's only possible to know the progress of our read if we're reading to a certain length. + // If we're reading to data, we of course have no idea when the data will arrive. + // If we're reading to timeout, then we have no idea when the next chunk of data will arrive. + + NSUInteger d = theCurrentRead->bytesDone; + NSUInteger t = theCurrentRead->readLength; + + if (tag != NULL) *tag = theCurrentRead->tag; + if (done != NULL) *done = d; + if (total != NULL) *total = t; + + if (t > 0.0) + return (float)d / (float)t; + else + return 1.0F; +} + +- (float)progressOfWriteReturningTag:(long *)tag bytesDone:(NSUInteger *)done total:(NSUInteger *)total +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + // Check to make sure we're actually writing something right now, + // and that the write packet isn't an AsyncSpecialPacket (upgrade to TLS). + if (!theCurrentWrite || ![theCurrentWrite isKindOfClass:[AsyncWritePacket class]]) + { + if (tag != NULL) *tag = 0; + if (done != NULL) *done = 0; + if (total != NULL) *total = 0; + + return NAN; + } + + NSUInteger d = theCurrentWrite->bytesDone; + NSUInteger t = [theCurrentWrite->buffer length]; + + if (tag != NULL) *tag = theCurrentWrite->tag; + if (done != NULL) *done = d; + if (total != NULL) *total = t; + + return (float)d / (float)t; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Run Loop +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +- (void)runLoopAddSource:(CFRunLoopSourceRef)source +{ + for (NSString *runLoopMode in theRunLoopModes) + { + CFRunLoopAddSource(theRunLoop, source, (CFStringRef)runLoopMode); + } +} + +- (void)runLoopRemoveSource:(CFRunLoopSourceRef)source +{ + for (NSString *runLoopMode in theRunLoopModes) + { + CFRunLoopRemoveSource(theRunLoop, source, (CFStringRef)runLoopMode); + } +} + +- (void)runLoopAddSource:(CFRunLoopSourceRef)source mode:(NSString *)runLoopMode +{ + CFRunLoopAddSource(theRunLoop, source, (CFStringRef)runLoopMode); +} + +- (void)runLoopRemoveSource:(CFRunLoopSourceRef)source mode:(NSString *)runLoopMode +{ + CFRunLoopRemoveSource(theRunLoop, source, (CFStringRef)runLoopMode); +} + +- (void)runLoopAddTimer:(NSTimer *)timer +{ + for (NSString *runLoopMode in theRunLoopModes) + { + CFRunLoopAddTimer(theRunLoop, (CFRunLoopTimerRef)timer, (CFStringRef)runLoopMode); + } +} + +- (void)runLoopRemoveTimer:(NSTimer *)timer +{ + for (NSString *runLoopMode in theRunLoopModes) + { + CFRunLoopRemoveTimer(theRunLoop, (CFRunLoopTimerRef)timer, (CFStringRef)runLoopMode); + } +} + +- (void)runLoopAddTimer:(NSTimer *)timer mode:(NSString *)runLoopMode +{ + CFRunLoopAddTimer(theRunLoop, (CFRunLoopTimerRef)timer, (CFStringRef)runLoopMode); +} + +- (void)runLoopRemoveTimer:(NSTimer *)timer mode:(NSString *)runLoopMode +{ + CFRunLoopRemoveTimer(theRunLoop, (CFRunLoopTimerRef)timer, (CFStringRef)runLoopMode); +} + +- (void)runLoopUnscheduleReadStream +{ + for (NSString *runLoopMode in theRunLoopModes) + { + CFReadStreamUnscheduleFromRunLoop(theReadStream, theRunLoop, (CFStringRef)runLoopMode); + } + CFReadStreamSetClient(theReadStream, kCFStreamEventNone, NULL, NULL); +} + +- (void)runLoopUnscheduleWriteStream +{ + for (NSString *runLoopMode in theRunLoopModes) + { + CFWriteStreamUnscheduleFromRunLoop(theWriteStream, theRunLoop, (CFStringRef)runLoopMode); + } + CFWriteStreamSetClient(theWriteStream, kCFStreamEventNone, NULL, NULL); +} + + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Configuration +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +/** + * See the header file for a full explanation of pre-buffering. +**/ +- (void)enablePreBuffering +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + theFlags |= kEnablePreBuffering; +} + +/** + * See the header file for a full explanation of this method. +**/ +- (BOOL)moveToRunLoop:(NSRunLoop *)runLoop +{ + NSAssert((theRunLoop == NULL) || (theRunLoop == CFRunLoopGetCurrent()), + @"moveToRunLoop must be called from within the current RunLoop!"); + + if(runLoop == nil) + { + return NO; + } + if(theRunLoop == [runLoop getCFRunLoop]) + { + return YES; + } + + [NSObject cancelPreviousPerformRequestsWithTarget:self]; + theFlags &= ~kDequeueReadScheduled; + theFlags &= ~kDequeueWriteScheduled; + + if(theReadStream && theWriteStream) + { + [self runLoopUnscheduleReadStream]; + [self runLoopUnscheduleWriteStream]; + } + + if(theSource4) [self runLoopRemoveSource:theSource4]; + if(theSource6) [self runLoopRemoveSource:theSource6]; + + // We do not retain the timers - they get retained by the runloop when we add them as a source. + // Since we're about to remove them as a source, we retain now, and release again below. + [theReadTimer retain]; + [theWriteTimer retain]; + + if(theReadTimer) [self runLoopRemoveTimer:theReadTimer]; + if(theWriteTimer) [self runLoopRemoveTimer:theWriteTimer]; + + theRunLoop = [runLoop getCFRunLoop]; + + if(theReadTimer) [self runLoopAddTimer:theReadTimer]; + if(theWriteTimer) [self runLoopAddTimer:theWriteTimer]; + + // Release timers since we retained them above + [theReadTimer release]; + [theWriteTimer release]; + + if(theSource4) [self runLoopAddSource:theSource4]; + if(theSource6) [self runLoopAddSource:theSource6]; + + if(theReadStream && theWriteStream) + { + if(![self attachStreamsToRunLoop:runLoop error:nil]) + { + return NO; + } + } + + [runLoop performSelector:@selector(maybeDequeueRead) target:self argument:nil order:0 modes:theRunLoopModes]; + [runLoop performSelector:@selector(maybeDequeueWrite) target:self argument:nil order:0 modes:theRunLoopModes]; + [runLoop performSelector:@selector(maybeScheduleDisconnect) target:self argument:nil order:0 modes:theRunLoopModes]; + + return YES; +} + +/** + * See the header file for a full explanation of this method. +**/ +- (BOOL)setRunLoopModes:(NSArray *)runLoopModes +{ + NSAssert((theRunLoop == NULL) || (theRunLoop == CFRunLoopGetCurrent()), + @"setRunLoopModes must be called from within the current RunLoop!"); + + if([runLoopModes count] == 0) + { + return NO; + } + if([theRunLoopModes isEqualToArray:runLoopModes]) + { + return YES; + } + + [NSObject cancelPreviousPerformRequestsWithTarget:self]; + theFlags &= ~kDequeueReadScheduled; + theFlags &= ~kDequeueWriteScheduled; + + if(theReadStream && theWriteStream) + { + [self runLoopUnscheduleReadStream]; + [self runLoopUnscheduleWriteStream]; + } + + if(theSource4) [self runLoopRemoveSource:theSource4]; + if(theSource6) [self runLoopRemoveSource:theSource6]; + + // We do not retain the timers - they get retained by the runloop when we add them as a source. + // Since we're about to remove them as a source, we retain now, and release again below. + [theReadTimer retain]; + [theWriteTimer retain]; + + if(theReadTimer) [self runLoopRemoveTimer:theReadTimer]; + if(theWriteTimer) [self runLoopRemoveTimer:theWriteTimer]; + + [theRunLoopModes release]; + theRunLoopModes = [runLoopModes copy]; + + if(theReadTimer) [self runLoopAddTimer:theReadTimer]; + if(theWriteTimer) [self runLoopAddTimer:theWriteTimer]; + + // Release timers since we retained them above + [theReadTimer release]; + [theWriteTimer release]; + + if(theSource4) [self runLoopAddSource:theSource4]; + if(theSource6) [self runLoopAddSource:theSource6]; + + if(theReadStream && theWriteStream) + { + // Note: theRunLoop variable is a CFRunLoop, and NSRunLoop is NOT toll-free bridged with CFRunLoop. + // So we cannot pass theRunLoop to the method below, which is expecting a NSRunLoop parameter. + // Instead we pass nil, which will result in the method properly using the current run loop. + + if(![self attachStreamsToRunLoop:nil error:nil]) + { + return NO; + } + } + + [self performSelector:@selector(maybeDequeueRead) withObject:nil afterDelay:0 inModes:theRunLoopModes]; + [self performSelector:@selector(maybeDequeueWrite) withObject:nil afterDelay:0 inModes:theRunLoopModes]; + [self performSelector:@selector(maybeScheduleDisconnect) withObject:nil afterDelay:0 inModes:theRunLoopModes]; + + return YES; +} + +- (BOOL)addRunLoopMode:(NSString *)runLoopMode +{ + NSAssert((theRunLoop == NULL) || (theRunLoop == CFRunLoopGetCurrent()), + @"addRunLoopMode must be called from within the current RunLoop!"); + + if(runLoopMode == nil) + { + return NO; + } + if([theRunLoopModes containsObject:runLoopMode]) + { + return YES; + } + + [NSObject cancelPreviousPerformRequestsWithTarget:self]; + theFlags &= ~kDequeueReadScheduled; + theFlags &= ~kDequeueWriteScheduled; + + NSArray *newRunLoopModes = [theRunLoopModes arrayByAddingObject:runLoopMode]; + [theRunLoopModes release]; + theRunLoopModes = [newRunLoopModes retain]; + + if(theReadTimer) [self runLoopAddTimer:theReadTimer mode:runLoopMode]; + if(theWriteTimer) [self runLoopAddTimer:theWriteTimer mode:runLoopMode]; + + if(theSource4) [self runLoopAddSource:theSource4 mode:runLoopMode]; + if(theSource6) [self runLoopAddSource:theSource6 mode:runLoopMode]; + + if(theReadStream && theWriteStream) + { + CFReadStreamScheduleWithRunLoop(theReadStream, CFRunLoopGetCurrent(), (CFStringRef)runLoopMode); + CFWriteStreamScheduleWithRunLoop(theWriteStream, CFRunLoopGetCurrent(), (CFStringRef)runLoopMode); + } + + [self performSelector:@selector(maybeDequeueRead) withObject:nil afterDelay:0 inModes:theRunLoopModes]; + [self performSelector:@selector(maybeDequeueWrite) withObject:nil afterDelay:0 inModes:theRunLoopModes]; + [self performSelector:@selector(maybeScheduleDisconnect) withObject:nil afterDelay:0 inModes:theRunLoopModes]; + + return YES; +} + +- (BOOL)removeRunLoopMode:(NSString *)runLoopMode +{ + NSAssert((theRunLoop == NULL) || (theRunLoop == CFRunLoopGetCurrent()), + @"addRunLoopMode must be called from within the current RunLoop!"); + + if(runLoopMode == nil) + { + return NO; + } + if(![theRunLoopModes containsObject:runLoopMode]) + { + return YES; + } + + NSMutableArray *newRunLoopModes = [[theRunLoopModes mutableCopy] autorelease]; + [newRunLoopModes removeObject:runLoopMode]; + + if([newRunLoopModes count] == 0) + { + return NO; + } + + [NSObject cancelPreviousPerformRequestsWithTarget:self]; + theFlags &= ~kDequeueReadScheduled; + theFlags &= ~kDequeueWriteScheduled; + + [theRunLoopModes release]; + theRunLoopModes = [newRunLoopModes copy]; + + if(theReadTimer) [self runLoopRemoveTimer:theReadTimer mode:runLoopMode]; + if(theWriteTimer) [self runLoopRemoveTimer:theWriteTimer mode:runLoopMode]; + + if(theSource4) [self runLoopRemoveSource:theSource4 mode:runLoopMode]; + if(theSource6) [self runLoopRemoveSource:theSource6 mode:runLoopMode]; + + if(theReadStream && theWriteStream) + { + CFReadStreamScheduleWithRunLoop(theReadStream, CFRunLoopGetCurrent(), (CFStringRef)runLoopMode); + CFWriteStreamScheduleWithRunLoop(theWriteStream, CFRunLoopGetCurrent(), (CFStringRef)runLoopMode); + } + + [self performSelector:@selector(maybeDequeueRead) withObject:nil afterDelay:0 inModes:theRunLoopModes]; + [self performSelector:@selector(maybeDequeueWrite) withObject:nil afterDelay:0 inModes:theRunLoopModes]; + [self performSelector:@selector(maybeScheduleDisconnect) withObject:nil afterDelay:0 inModes:theRunLoopModes]; + + return YES; +} + +- (NSArray *)runLoopModes +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + return [[theRunLoopModes retain] autorelease]; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Accepting +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +- (BOOL)acceptOnPort:(UInt16)port error:(NSError **)errPtr +{ + return [self acceptOnInterface:nil port:port error:errPtr]; +} + +/** + * To accept on a certain interface, pass the address to accept on. + * To accept on any interface, pass nil or an empty string. + * To accept only connections from localhost pass "localhost" or "loopback". +**/ +- (BOOL)acceptOnInterface:(NSString *)interface port:(UInt16)port error:(NSError **)errPtr +{ + if (theDelegate == NULL) + { + [NSException raise:AsyncSocketException + format:@"Attempting to accept without a delegate. Set a delegate first."]; + } + + if (![self isDisconnected]) + { + [NSException raise:AsyncSocketException + format:@"Attempting to accept while connected or accepting connections. Disconnect first."]; + } + + // Clear queues (spurious read/write requests post disconnect) + [self emptyQueues]; + + // Set up the listen sockaddr structs if needed. + + NSData *address4 = nil, *address6 = nil; + if(interface == nil || ([interface length] == 0)) + { + // Accept on ANY address + struct sockaddr_in nativeAddr4; + nativeAddr4.sin_len = sizeof(struct sockaddr_in); + nativeAddr4.sin_family = AF_INET; + nativeAddr4.sin_port = htons(port); + nativeAddr4.sin_addr.s_addr = htonl(INADDR_ANY); + memset(&(nativeAddr4.sin_zero), 0, sizeof(nativeAddr4.sin_zero)); + + struct sockaddr_in6 nativeAddr6; + nativeAddr6.sin6_len = sizeof(struct sockaddr_in6); + nativeAddr6.sin6_family = AF_INET6; + nativeAddr6.sin6_port = htons(port); + nativeAddr6.sin6_flowinfo = 0; + nativeAddr6.sin6_addr = in6addr_any; + nativeAddr6.sin6_scope_id = 0; + + // Wrap the native address structures for CFSocketSetAddress. + address4 = [NSData dataWithBytes:&nativeAddr4 length:sizeof(nativeAddr4)]; + address6 = [NSData dataWithBytes:&nativeAddr6 length:sizeof(nativeAddr6)]; + } + else if([interface isEqualToString:@"localhost"] || [interface isEqualToString:@"loopback"]) + { + // Accept only on LOOPBACK address + struct sockaddr_in nativeAddr4; + nativeAddr4.sin_len = sizeof(struct sockaddr_in); + nativeAddr4.sin_family = AF_INET; + nativeAddr4.sin_port = htons(port); + nativeAddr4.sin_addr.s_addr = htonl(INADDR_LOOPBACK); + memset(&(nativeAddr4.sin_zero), 0, sizeof(nativeAddr4.sin_zero)); + + struct sockaddr_in6 nativeAddr6; + nativeAddr6.sin6_len = sizeof(struct sockaddr_in6); + nativeAddr6.sin6_family = AF_INET6; + nativeAddr6.sin6_port = htons(port); + nativeAddr6.sin6_flowinfo = 0; + nativeAddr6.sin6_addr = in6addr_loopback; + nativeAddr6.sin6_scope_id = 0; + + // Wrap the native address structures for CFSocketSetAddress. + address4 = [NSData dataWithBytes:&nativeAddr4 length:sizeof(nativeAddr4)]; + address6 = [NSData dataWithBytes:&nativeAddr6 length:sizeof(nativeAddr6)]; + } + else + { + NSString *portStr = [NSString stringWithFormat:@"%hu", port]; + + struct addrinfo hints, *res, *res0; + + memset(&hints, 0, sizeof(hints)); + hints.ai_family = PF_UNSPEC; + hints.ai_socktype = SOCK_STREAM; + hints.ai_protocol = IPPROTO_TCP; + hints.ai_flags = AI_PASSIVE; + + int error = getaddrinfo([interface UTF8String], [portStr UTF8String], &hints, &res0); + + if (error) + { + if (errPtr) + { + NSString *errMsg = [NSString stringWithCString:gai_strerror(error) encoding:NSASCIIStringEncoding]; + NSDictionary *info = [NSDictionary dictionaryWithObject:errMsg forKey:NSLocalizedDescriptionKey]; + + *errPtr = [NSError errorWithDomain:@"kCFStreamErrorDomainNetDB" code:error userInfo:info]; + } + } + else + { + for (res = res0; res; res = res->ai_next) + { + if (!address4 && (res->ai_family == AF_INET)) + { + // Found IPv4 address + // Wrap the native address structures for CFSocketSetAddress. + address4 = [NSData dataWithBytes:res->ai_addr length:res->ai_addrlen]; + } + else if (!address6 && (res->ai_family == AF_INET6)) + { + // Found IPv6 address + // Wrap the native address structures for CFSocketSetAddress. + address6 = [NSData dataWithBytes:res->ai_addr length:res->ai_addrlen]; + } + } + freeaddrinfo(res0); + } + + if(!address4 && !address6) return NO; + } + + // Create the sockets. + + if (address4) + { + theSocket4 = [self newAcceptSocketForAddress:address4 error:errPtr]; + if (theSocket4 == NULL) goto Failed; + } + + if (address6) + { + theSocket6 = [self newAcceptSocketForAddress:address6 error:errPtr]; + + // Note: The iPhone doesn't currently support IPv6 + +#if !TARGET_OS_IPHONE + if (theSocket6 == NULL) goto Failed; +#endif + } + + // Attach the sockets to the run loop so that callback methods work + + [self attachSocketsToRunLoop:nil error:nil]; + + // Set the SO_REUSEADDR flags. + + int reuseOn = 1; + if (theSocket4) setsockopt(CFSocketGetNative(theSocket4), SOL_SOCKET, SO_REUSEADDR, &reuseOn, sizeof(reuseOn)); + if (theSocket6) setsockopt(CFSocketGetNative(theSocket6), SOL_SOCKET, SO_REUSEADDR, &reuseOn, sizeof(reuseOn)); + + // Set the local bindings which causes the sockets to start listening. + + CFSocketError err; + if (theSocket4) + { + err = CFSocketSetAddress(theSocket4, (CFDataRef)address4); + if (err != kCFSocketSuccess) goto Failed; + + //NSLog(@"theSocket4: %hu", [self localPortFromCFSocket4:theSocket4]); + } + + if(port == 0 && theSocket4 && theSocket6) + { + // The user has passed in port 0, which means he wants to allow the kernel to choose the port for them + // However, the kernel will choose a different port for both theSocket4 and theSocket6 + // So we grab the port the kernel choose for theSocket4, and set it as the port for theSocket6 + UInt16 chosenPort = [self localPortFromCFSocket4:theSocket4]; + + struct sockaddr_in6 *pSockAddr6 = (struct sockaddr_in6 *)[address6 bytes]; + pSockAddr6->sin6_port = htons(chosenPort); + } + + if (theSocket6) + { + err = CFSocketSetAddress(theSocket6, (CFDataRef)address6); + if (err != kCFSocketSuccess) goto Failed; + + //NSLog(@"theSocket6: %hu", [self localPortFromCFSocket6:theSocket6]); + } + + theFlags |= kDidStartDelegate; + return YES; + +Failed: + if(errPtr) *errPtr = [self getSocketError]; + if(theSocket4 != NULL) + { + CFSocketInvalidate(theSocket4); + CFRelease(theSocket4); + theSocket4 = NULL; + } + if(theSocket6 != NULL) + { + CFSocketInvalidate(theSocket6); + CFRelease(theSocket6); + theSocket6 = NULL; + } + return NO; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Connecting +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +- (BOOL)connectToHost:(NSString*)hostname onPort:(UInt16)port error:(NSError **)errPtr +{ + return [self connectToHost:hostname onPort:port withTimeout:-1 error:errPtr]; +} + +/** + * This method creates an initial CFReadStream and CFWriteStream to the given host on the given port. + * The connection is then opened, and the corresponding CFSocket will be extracted after the connection succeeds. + * + * Thus the delegate will have access to the CFReadStream and CFWriteStream prior to connection, + * specifically in the onSocketWillConnect: method. +**/ +- (BOOL)connectToHost:(NSString *)hostname + onPort:(UInt16)port + withTimeout:(NSTimeInterval)timeout + error:(NSError **)errPtr +{ + if (theDelegate == NULL) + { + [NSException raise:AsyncSocketException + format:@"Attempting to connect without a delegate. Set a delegate first."]; + } + + if (![self isDisconnected]) + { + [NSException raise:AsyncSocketException + format:@"Attempting to connect while connected or accepting connections. Disconnect first."]; + } + + // Clear queues (spurious read/write requests post disconnect) + [self emptyQueues]; + + if(![self createStreamsToHost:hostname onPort:port error:errPtr]) goto Failed; + if(![self attachStreamsToRunLoop:nil error:errPtr]) goto Failed; + if(![self configureStreamsAndReturnError:errPtr]) goto Failed; + if(![self openStreamsAndReturnError:errPtr]) goto Failed; + + [self startConnectTimeout:timeout]; + theFlags |= kDidStartDelegate; + + return YES; + +Failed: + [self close]; + return NO; +} + +- (BOOL)connectToAddress:(NSData *)remoteAddr error:(NSError **)errPtr +{ + return [self connectToAddress:remoteAddr viaInterfaceAddress:nil withTimeout:-1 error:errPtr]; +} + +/** + * This method creates an initial CFSocket to the given address. + * The connection is then opened, and the corresponding CFReadStream and CFWriteStream will be + * created from the low-level sockets after the connection succeeds. + * + * Thus the delegate will have access to the CFSocket and CFSocketNativeHandle (BSD socket) prior to connection, + * specifically in the onSocketWillConnect: method. + * + * Note: The NSData parameter is expected to be a sockaddr structure. For example, an NSData object returned from + * NSNetservice addresses method. + * If you have an existing struct sockaddr you can convert it to an NSData object like so: + * struct sockaddr sa -> NSData *dsa = [NSData dataWithBytes:&remoteAddr length:remoteAddr.sa_len]; + * struct sockaddr *sa -> NSData *dsa = [NSData dataWithBytes:remoteAddr length:remoteAddr->sa_len]; +**/ +- (BOOL)connectToAddress:(NSData *)remoteAddr withTimeout:(NSTimeInterval)timeout error:(NSError **)errPtr +{ + return [self connectToAddress:remoteAddr viaInterfaceAddress:nil withTimeout:timeout error:errPtr]; +} + +/** + * This method is similar to the one above, but allows you to specify which socket interface + * the connection should run over. E.g. ethernet, wifi, bluetooth, etc. +**/ +- (BOOL)connectToAddress:(NSData *)remoteAddr + viaInterfaceAddress:(NSData *)interfaceAddr + withTimeout:(NSTimeInterval)timeout + error:(NSError **)errPtr +{ + if (theDelegate == NULL) + { + [NSException raise:AsyncSocketException + format:@"Attempting to connect without a delegate. Set a delegate first."]; + } + + if (![self isDisconnected]) + { + [NSException raise:AsyncSocketException + format:@"Attempting to connect while connected or accepting connections. Disconnect first."]; + } + + // Clear queues (spurious read/write requests post disconnect) + [self emptyQueues]; + + if(![self createSocketForAddress:remoteAddr error:errPtr]) goto Failed; + if(![self bindSocketToAddress:interfaceAddr error:errPtr]) goto Failed; + if(![self attachSocketsToRunLoop:nil error:errPtr]) goto Failed; + if(![self configureSocketAndReturnError:errPtr]) goto Failed; + if(![self connectSocketToAddress:remoteAddr error:errPtr]) goto Failed; + + [self startConnectTimeout:timeout]; + theFlags |= kDidStartDelegate; + + return YES; + +Failed: + [self close]; + return NO; +} + +- (void)startConnectTimeout:(NSTimeInterval)timeout +{ + if(timeout >= 0.0) + { + theConnectTimer = [NSTimer timerWithTimeInterval:timeout + target:self + selector:@selector(doConnectTimeout:) + userInfo:nil + repeats:NO]; + [self runLoopAddTimer:theConnectTimer]; + } +} + +- (void)endConnectTimeout +{ + [theConnectTimer invalidate]; + theConnectTimer = nil; +} + +- (void)doConnectTimeout:(NSTimer *)timer +{ + #pragma unused(timer) + + [self endConnectTimeout]; + [self closeWithError:[self getConnectTimeoutError]]; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Socket Implementation +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +/** + * Creates the accept sockets. + * Returns true if either IPv4 or IPv6 is created. + * If either is missing, an error is returned (even though the method may return true). +**/ +- (CFSocketRef)newAcceptSocketForAddress:(NSData *)addr error:(NSError **)errPtr +{ + struct sockaddr *pSockAddr = (struct sockaddr *)[addr bytes]; + int addressFamily = pSockAddr->sa_family; + + CFSocketRef theSocket = CFSocketCreate(kCFAllocatorDefault, + addressFamily, + SOCK_STREAM, + 0, + kCFSocketAcceptCallBack, // Callback flags + (CFSocketCallBack)&MyCFSocketCallback, // Callback method + &theContext); + + if(theSocket == NULL) + { + if(errPtr) *errPtr = [self getSocketError]; + } + + return theSocket; +} + +- (BOOL)createSocketForAddress:(NSData *)remoteAddr error:(NSError **)errPtr +{ + struct sockaddr *pSockAddr = (struct sockaddr *)[remoteAddr bytes]; + + if(pSockAddr->sa_family == AF_INET) + { + theSocket4 = CFSocketCreate(NULL, // Default allocator + PF_INET, // Protocol Family + SOCK_STREAM, // Socket Type + IPPROTO_TCP, // Protocol + kCFSocketConnectCallBack, // Callback flags + (CFSocketCallBack)&MyCFSocketCallback, // Callback method + &theContext); // Socket Context + + if(theSocket4 == NULL) + { + if (errPtr) *errPtr = [self getSocketError]; + return NO; + } + } + else if(pSockAddr->sa_family == AF_INET6) + { + theSocket6 = CFSocketCreate(NULL, // Default allocator + PF_INET6, // Protocol Family + SOCK_STREAM, // Socket Type + IPPROTO_TCP, // Protocol + kCFSocketConnectCallBack, // Callback flags + (CFSocketCallBack)&MyCFSocketCallback, // Callback method + &theContext); // Socket Context + + if(theSocket6 == NULL) + { + if (errPtr) *errPtr = [self getSocketError]; + return NO; + } + } + else + { + if (errPtr) + { + NSString *errMsg = @"Remote address is not IPv4 or IPv6"; + NSDictionary *info = [NSDictionary dictionaryWithObject:errMsg forKey:NSLocalizedDescriptionKey]; + + *errPtr = [NSError errorWithDomain:AsyncSocketErrorDomain code:AsyncSocketCFSocketError userInfo:info]; + } + return NO; + } + + return YES; +} + +- (BOOL)bindSocketToAddress:(NSData *)interfaceAddr error:(NSError **)errPtr +{ + if (interfaceAddr == nil) return YES; + + struct sockaddr *pSockAddr = (struct sockaddr *)[interfaceAddr bytes]; + + CFSocketRef theSocket = (theSocket4 != NULL) ? theSocket4 : theSocket6; + NSAssert((theSocket != NULL), @"bindSocketToAddress called without valid socket"); + + CFSocketNativeHandle nativeSocket = CFSocketGetNative(theSocket); + + if (pSockAddr->sa_family == AF_INET || pSockAddr->sa_family == AF_INET6) + { + int result = bind(nativeSocket, pSockAddr, (socklen_t)[interfaceAddr length]); + if (result != 0) + { + if (errPtr) *errPtr = [self getErrnoError]; + return NO; + } + } + else + { + if (errPtr) + { + NSString *errMsg = @"Interface address is not IPv4 or IPv6"; + NSDictionary *info = [NSDictionary dictionaryWithObject:errMsg forKey:NSLocalizedDescriptionKey]; + + *errPtr = [NSError errorWithDomain:AsyncSocketErrorDomain code:AsyncSocketCFSocketError userInfo:info]; + } + return NO; + } + + return YES; +} + +/** + * Adds the CFSocket's to the run-loop so that callbacks will work properly. +**/ +- (BOOL)attachSocketsToRunLoop:(NSRunLoop *)runLoop error:(NSError **)errPtr +{ + #pragma unused(errPtr) + + // Get the CFRunLoop to which the socket should be attached. + theRunLoop = (runLoop == nil) ? CFRunLoopGetCurrent() : [runLoop getCFRunLoop]; + + if(theSocket4) + { + theSource4 = CFSocketCreateRunLoopSource (kCFAllocatorDefault, theSocket4, 0); + [self runLoopAddSource:theSource4]; + } + + if(theSocket6) + { + theSource6 = CFSocketCreateRunLoopSource (kCFAllocatorDefault, theSocket6, 0); + [self runLoopAddSource:theSource6]; + } + + return YES; +} + +/** + * Allows the delegate method to configure the CFSocket or CFNativeSocket as desired before we connect. + * Note that the CFReadStream and CFWriteStream will not be available until after the connection is opened. +**/ +- (BOOL)configureSocketAndReturnError:(NSError **)errPtr +{ + // Call the delegate method for further configuration. + if([theDelegate respondsToSelector:@selector(onSocketWillConnect:)]) + { + if([theDelegate onSocketWillConnect:self] == NO) + { + if (errPtr) *errPtr = [self getAbortError]; + return NO; + } + } + return YES; +} + +- (BOOL)connectSocketToAddress:(NSData *)remoteAddr error:(NSError **)errPtr +{ + // Start connecting to the given address in the background + // The MyCFSocketCallback method will be called when the connection succeeds or fails + if(theSocket4) + { + CFSocketError err = CFSocketConnectToAddress(theSocket4, (CFDataRef)remoteAddr, -1); + if(err != kCFSocketSuccess) + { + if (errPtr) *errPtr = [self getSocketError]; + return NO; + } + } + else if(theSocket6) + { + CFSocketError err = CFSocketConnectToAddress(theSocket6, (CFDataRef)remoteAddr, -1); + if(err != kCFSocketSuccess) + { + if (errPtr) *errPtr = [self getSocketError]; + return NO; + } + } + + return YES; +} + +/** + * Attempt to make the new socket. + * If an error occurs, ignore this event. +**/ +- (void)doAcceptFromSocket:(CFSocketRef)parentSocket withNewNativeSocket:(CFSocketNativeHandle)newNativeSocket +{ + if(newNativeSocket) + { + // New socket inherits same delegate and run loop modes. + // Note: We use [self class] to support subclassing AsyncSocket. + AsyncSocket *newSocket = [[[[self class] alloc] initWithDelegate:theDelegate] autorelease]; + [newSocket setRunLoopModes:theRunLoopModes]; + + if(![newSocket createStreamsFromNative:newNativeSocket error:nil]) + goto Failed; + + if (parentSocket == theSocket4) + newSocket->theNativeSocket4 = newNativeSocket; + else + newSocket->theNativeSocket6 = newNativeSocket; + + if ([theDelegate respondsToSelector:@selector(onSocket:didAcceptNewSocket:)]) + [theDelegate onSocket:self didAcceptNewSocket:newSocket]; + + newSocket->theFlags |= kDidStartDelegate; + + NSRunLoop *runLoop = nil; + if ([theDelegate respondsToSelector:@selector(onSocket:wantsRunLoopForNewSocket:)]) + { + runLoop = [theDelegate onSocket:self wantsRunLoopForNewSocket:newSocket]; + } + + if(![newSocket attachStreamsToRunLoop:runLoop error:nil]) goto Failed; + if(![newSocket configureStreamsAndReturnError:nil]) goto Failed; + if(![newSocket openStreamsAndReturnError:nil]) goto Failed; + + return; + + Failed: + [newSocket close]; + } +} + +/** + * This method is called as a result of connectToAddress:withTimeout:error:. + * At this point we have an open CFSocket from which we need to create our read and write stream. +**/ +- (void)doSocketOpen:(CFSocketRef)sock withCFSocketError:(CFSocketError)socketError +{ + NSParameterAssert ((sock == theSocket4) || (sock == theSocket6)); + + if(socketError == kCFSocketTimeout || socketError == kCFSocketError) + { + [self closeWithError:[self getSocketError]]; + return; + } + + // Get the underlying native (BSD) socket + CFSocketNativeHandle nativeSocket = CFSocketGetNative(sock); + + // Store a reference to it + if (sock == theSocket4) + theNativeSocket4 = nativeSocket; + else + theNativeSocket6 = nativeSocket; + + // Setup the CFSocket so that invalidating it will not close the underlying native socket + CFSocketSetSocketFlags(sock, 0); + + // Invalidate and release the CFSocket - All we need from here on out is the nativeSocket. + // Note: If we don't invalidate the CFSocket (leaving the native socket open) + // then theReadStream and theWriteStream won't function properly. + // Specifically, their callbacks won't work, with the exception of kCFStreamEventOpenCompleted. + // + // This is likely due to the mixture of the CFSocketCreateWithNative method, + // along with the CFStreamCreatePairWithSocket method. + // The documentation for CFSocketCreateWithNative states: + // + // If a CFSocket object already exists for sock, + // the function returns the pre-existing object instead of creating a new object; + // the context, callout, and callBackTypes parameters are ignored in this case. + // + // So the CFStreamCreateWithNative method invokes the CFSocketCreateWithNative method, + // thinking that is creating a new underlying CFSocket for it's own purposes. + // When it does this, it uses the context/callout/callbackTypes parameters to setup everything appropriately. + // However, if a CFSocket already exists for the native socket, + // then it is returned (as per the documentation), which in turn screws up the CFStreams. + + CFSocketInvalidate(sock); + CFRelease(sock); + theSocket4 = NULL; + theSocket6 = NULL; + + NSError *err; + BOOL pass = YES; + + if(pass && ![self createStreamsFromNative:nativeSocket error:&err]) pass = NO; + if(pass && ![self attachStreamsToRunLoop:nil error:&err]) pass = NO; + if(pass && ![self openStreamsAndReturnError:&err]) pass = NO; + + if(!pass) + { + [self closeWithError:err]; + } +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Stream Implementation +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +/** + * Creates the CFReadStream and CFWriteStream from the given native socket. + * The CFSocket may be extracted from either stream after the streams have been opened. + * + * Note: The given native socket must already be connected! +**/ +- (BOOL)createStreamsFromNative:(CFSocketNativeHandle)native error:(NSError **)errPtr +{ + // Create the socket & streams. + CFStreamCreatePairWithSocket(kCFAllocatorDefault, native, &theReadStream, &theWriteStream); + if (theReadStream == NULL || theWriteStream == NULL) + { + NSError *err = [self getStreamError]; + + NSLog(@"AsyncSocket %p couldn't create streams from accepted socket: %@", self, err); + + if (errPtr) *errPtr = err; + return NO; + } + + // Ensure the CF & BSD socket is closed when the streams are closed. + CFReadStreamSetProperty(theReadStream, kCFStreamPropertyShouldCloseNativeSocket, kCFBooleanTrue); + CFWriteStreamSetProperty(theWriteStream, kCFStreamPropertyShouldCloseNativeSocket, kCFBooleanTrue); + + return YES; +} + +/** + * Creates the CFReadStream and CFWriteStream from the given hostname and port number. + * The CFSocket may be extracted from either stream after the streams have been opened. +**/ +- (BOOL)createStreamsToHost:(NSString *)hostname onPort:(UInt16)port error:(NSError **)errPtr +{ + // Create the socket & streams. + CFStreamCreatePairWithSocketToHost(kCFAllocatorDefault, (CFStringRef)hostname, port, &theReadStream, &theWriteStream); + if (theReadStream == NULL || theWriteStream == NULL) + { + if (errPtr) *errPtr = [self getStreamError]; + return NO; + } + + // Ensure the CF & BSD socket is closed when the streams are closed. + CFReadStreamSetProperty(theReadStream, kCFStreamPropertyShouldCloseNativeSocket, kCFBooleanTrue); + CFWriteStreamSetProperty(theWriteStream, kCFStreamPropertyShouldCloseNativeSocket, kCFBooleanTrue); + + return YES; +} + +- (BOOL)attachStreamsToRunLoop:(NSRunLoop *)runLoop error:(NSError **)errPtr +{ + // Get the CFRunLoop to which the socket should be attached. + theRunLoop = (runLoop == nil) ? CFRunLoopGetCurrent() : [runLoop getCFRunLoop]; + + // Setup read stream callbacks + + CFOptionFlags readStreamEvents = kCFStreamEventHasBytesAvailable | + kCFStreamEventErrorOccurred | + kCFStreamEventEndEncountered | + kCFStreamEventOpenCompleted; + + if (!CFReadStreamSetClient(theReadStream, + readStreamEvents, + (CFReadStreamClientCallBack)&MyCFReadStreamCallback, + (CFStreamClientContext *)(&theContext))) + { + NSError *err = [self getStreamError]; + + NSLog (@"AsyncSocket %p couldn't attach read stream to run-loop,", self); + NSLog (@"Error: %@", err); + + if (errPtr) *errPtr = err; + return NO; + } + + // Setup write stream callbacks + + CFOptionFlags writeStreamEvents = kCFStreamEventCanAcceptBytes | + kCFStreamEventErrorOccurred | + kCFStreamEventEndEncountered | + kCFStreamEventOpenCompleted; + + if (!CFWriteStreamSetClient (theWriteStream, + writeStreamEvents, + (CFWriteStreamClientCallBack)&MyCFWriteStreamCallback, + (CFStreamClientContext *)(&theContext))) + { + NSError *err = [self getStreamError]; + + NSLog (@"AsyncSocket %p couldn't attach write stream to run-loop,", self); + NSLog (@"Error: %@", err); + + if (errPtr) *errPtr = err; + return NO; + } + + // Add read and write streams to run loop + + for (NSString *runLoopMode in theRunLoopModes) + { + CFReadStreamScheduleWithRunLoop(theReadStream, theRunLoop, (CFStringRef)runLoopMode); + CFWriteStreamScheduleWithRunLoop(theWriteStream, theRunLoop, (CFStringRef)runLoopMode); + } + + return YES; +} + +/** + * Allows the delegate method to configure the CFReadStream and/or CFWriteStream as desired before we connect. + * + * If being called from a connect method, + * the CFSocket and CFNativeSocket will not be available until after the connection is opened. +**/ +- (BOOL)configureStreamsAndReturnError:(NSError **)errPtr +{ + // Call the delegate method for further configuration. + if([theDelegate respondsToSelector:@selector(onSocketWillConnect:)]) + { + if([theDelegate onSocketWillConnect:self] == NO) + { + if (errPtr) *errPtr = [self getAbortError]; + return NO; + } + } + return YES; +} + +- (BOOL)openStreamsAndReturnError:(NSError **)errPtr +{ + BOOL pass = YES; + + if(pass && !CFReadStreamOpen(theReadStream)) + { + NSLog (@"AsyncSocket %p couldn't open read stream,", self); + pass = NO; + } + + if(pass && !CFWriteStreamOpen(theWriteStream)) + { + NSLog (@"AsyncSocket %p couldn't open write stream,", self); + pass = NO; + } + + if(!pass) + { + if (errPtr) *errPtr = [self getStreamError]; + } + + return pass; +} + +/** + * Called when read or write streams open. + * When the socket is connected and both streams are open, consider the AsyncSocket instance to be ready. +**/ +- (void)doStreamOpen +{ + if ((theFlags & kDidCompleteOpenForRead) && (theFlags & kDidCompleteOpenForWrite)) + { + NSError *err = nil; + + // Get the socket + if (![self setSocketFromStreamsAndReturnError: &err]) + { + NSLog (@"AsyncSocket %p couldn't get socket from streams, %@. Disconnecting.", self, err); + [self closeWithError:err]; + return; + } + + // Stop the connection attempt timeout timer + [self endConnectTimeout]; + + if ([theDelegate respondsToSelector:@selector(onSocket:didConnectToHost:port:)]) + { + [theDelegate onSocket:self didConnectToHost:[self connectedHost] port:[self connectedPort]]; + } + + // Immediately deal with any already-queued requests. + [self maybeDequeueRead]; + [self maybeDequeueWrite]; + } +} + +- (BOOL)setSocketFromStreamsAndReturnError:(NSError **)errPtr +{ + // Get the CFSocketNativeHandle from theReadStream + CFSocketNativeHandle native; + CFDataRef nativeProp = CFReadStreamCopyProperty(theReadStream, kCFStreamPropertySocketNativeHandle); + if(nativeProp == NULL) + { + if (errPtr) *errPtr = [self getStreamError]; + return NO; + } + + CFIndex nativePropLen = CFDataGetLength(nativeProp); + CFIndex nativeLen = (CFIndex)sizeof(native); + + CFIndex len = MIN(nativePropLen, nativeLen); + + CFDataGetBytes(nativeProp, CFRangeMake(0, len), (UInt8 *)&native); + CFRelease(nativeProp); + + CFSocketRef theSocket = CFSocketCreateWithNative(kCFAllocatorDefault, native, 0, NULL, NULL); + if(theSocket == NULL) + { + if (errPtr) *errPtr = [self getSocketError]; + return NO; + } + + // Determine whether the connection was IPv4 or IPv6. + // We may already know if this was an accepted socket, + // or if the connectToAddress method was used. + // In either of the above two cases, the native socket variable would already be set. + + if (theNativeSocket4 > 0) + { + theSocket4 = theSocket; + return YES; + } + if (theNativeSocket6 > 0) + { + theSocket6 = theSocket; + return YES; + } + + CFDataRef peeraddr = CFSocketCopyPeerAddress(theSocket); + if(peeraddr == NULL) + { + NSLog(@"AsyncSocket couldn't determine IP version of socket"); + + CFRelease(theSocket); + + if (errPtr) *errPtr = [self getSocketError]; + return NO; + } + struct sockaddr *sa = (struct sockaddr *)CFDataGetBytePtr(peeraddr); + + if(sa->sa_family == AF_INET) + { + theSocket4 = theSocket; + theNativeSocket4 = native; + } + else + { + theSocket6 = theSocket; + theNativeSocket6 = native; + } + + CFRelease(peeraddr); + + return YES; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Disconnect Implementation +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +// Sends error message and disconnects +- (void)closeWithError:(NSError *)err +{ + theFlags |= kClosingWithError; + + if (theFlags & kDidStartDelegate) + { + // Try to salvage what data we can. + [self recoverUnreadData]; + + // Let the delegate know, so it can try to recover if it likes. + if ([theDelegate respondsToSelector:@selector(onSocket:willDisconnectWithError:)]) + { + [theDelegate onSocket:self willDisconnectWithError:err]; + } + } + [self close]; +} + +// Prepare partially read data for recovery. +- (void)recoverUnreadData +{ + if(theCurrentRead != nil) + { + // We never finished the current read. + // Check to see if it's a normal read packet (not AsyncSpecialPacket) and if it had read anything yet. + + if(([theCurrentRead isKindOfClass:[AsyncReadPacket class]]) && (theCurrentRead->bytesDone > 0)) + { + // We need to move its data into the front of the partial read buffer. + + void *buffer = [theCurrentRead->buffer mutableBytes] + theCurrentRead->startOffset; + + [partialReadBuffer replaceBytesInRange:NSMakeRange(0, 0) + withBytes:buffer + length:theCurrentRead->bytesDone]; + } + } + + [self emptyQueues]; +} + +- (void)emptyQueues +{ + if (theCurrentRead != nil) [self endCurrentRead]; + if (theCurrentWrite != nil) [self endCurrentWrite]; + + [theReadQueue removeAllObjects]; + [theWriteQueue removeAllObjects]; + + [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(maybeDequeueRead) object:nil]; + [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(maybeDequeueWrite) object:nil]; + + theFlags &= ~kDequeueReadScheduled; + theFlags &= ~kDequeueWriteScheduled; +} + +/** + * Disconnects. This is called for both error and clean disconnections. +**/ +- (void)close +{ + // Empty queues + [self emptyQueues]; + + // Clear partialReadBuffer (pre-buffer and also unreadData buffer in case of error) + [partialReadBuffer replaceBytesInRange:NSMakeRange(0, [partialReadBuffer length]) withBytes:NULL length:0]; + + [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(disconnect) object:nil]; + + // Stop the connection attempt timeout timer + if (theConnectTimer != nil) + { + [self endConnectTimeout]; + } + + // Close streams. + if (theReadStream != NULL) + { + [self runLoopUnscheduleReadStream]; + CFReadStreamClose(theReadStream); + CFRelease(theReadStream); + theReadStream = NULL; + } + if (theWriteStream != NULL) + { + [self runLoopUnscheduleWriteStream]; + CFWriteStreamClose(theWriteStream); + CFRelease(theWriteStream); + theWriteStream = NULL; + } + + // Close sockets. + if (theSocket4 != NULL) + { + CFSocketInvalidate (theSocket4); + CFRelease (theSocket4); + theSocket4 = NULL; + } + if (theSocket6 != NULL) + { + CFSocketInvalidate (theSocket6); + CFRelease (theSocket6); + theSocket6 = NULL; + } + + // Closing the streams or sockets resulted in closing the underlying native socket + theNativeSocket4 = 0; + theNativeSocket6 = 0; + + // Remove run loop sources + if (theSource4 != NULL) + { + [self runLoopRemoveSource:theSource4]; + CFRelease (theSource4); + theSource4 = NULL; + } + if (theSource6 != NULL) + { + [self runLoopRemoveSource:theSource6]; + CFRelease (theSource6); + theSource6 = NULL; + } + theRunLoop = NULL; + + // If the client has passed the connect/accept method, then the connection has at least begun. + // Notify delegate that it is now ending. + BOOL shouldCallDelegate = (theFlags & kDidStartDelegate); + + // Clear all flags (except the pre-buffering flag, which should remain as is) + theFlags &= kEnablePreBuffering; + + if (shouldCallDelegate) + { + if ([theDelegate respondsToSelector: @selector(onSocketDidDisconnect:)]) + { + [theDelegate onSocketDidDisconnect:self]; + } + } + + // Do not access any instance variables after calling onSocketDidDisconnect. + // This gives the delegate freedom to release us without returning here and crashing. +} + +/** + * Disconnects immediately. Any pending reads or writes are dropped. +**/ +- (void)disconnect +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + [self close]; +} + +/** + * Diconnects after all pending reads have completed. +**/ +- (void)disconnectAfterReading +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + theFlags |= (kForbidReadsWrites | kDisconnectAfterReads); + + [self maybeScheduleDisconnect]; +} + +/** + * Disconnects after all pending writes have completed. +**/ +- (void)disconnectAfterWriting +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + theFlags |= (kForbidReadsWrites | kDisconnectAfterWrites); + + [self maybeScheduleDisconnect]; +} + +/** + * Disconnects after all pending reads and writes have completed. +**/ +- (void)disconnectAfterReadingAndWriting +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + theFlags |= (kForbidReadsWrites | kDisconnectAfterReads | kDisconnectAfterWrites); + + [self maybeScheduleDisconnect]; +} + +/** + * Schedules a call to disconnect if possible. + * That is, if all writes have completed, and we're set to disconnect after writing, + * or if all reads have completed, and we're set to disconnect after reading. +**/ +- (void)maybeScheduleDisconnect +{ + BOOL shouldDisconnect = NO; + + if(theFlags & kDisconnectAfterReads) + { + if(([theReadQueue count] == 0) && (theCurrentRead == nil)) + { + if(theFlags & kDisconnectAfterWrites) + { + if(([theWriteQueue count] == 0) && (theCurrentWrite == nil)) + { + shouldDisconnect = YES; + } + } + else + { + shouldDisconnect = YES; + } + } + } + else if(theFlags & kDisconnectAfterWrites) + { + if(([theWriteQueue count] == 0) && (theCurrentWrite == nil)) + { + shouldDisconnect = YES; + } + } + + if(shouldDisconnect) + { + [self performSelector:@selector(disconnect) withObject:nil afterDelay:0 inModes:theRunLoopModes]; + } +} + +/** + * In the event of an error, this method may be called during onSocket:willDisconnectWithError: to read + * any data that's left on the socket. +**/ +- (NSData *)unreadData +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + // Ensure this method will only return data in the event of an error + if (!(theFlags & kClosingWithError)) return nil; + + if (theReadStream == NULL) return nil; + + NSUInteger totalBytesRead = [partialReadBuffer length]; + + BOOL error = NO; + while (!error && CFReadStreamHasBytesAvailable(theReadStream)) + { + if (totalBytesRead == [partialReadBuffer length]) + { + [partialReadBuffer increaseLengthBy:READALL_CHUNKSIZE]; + } + + // Number of bytes to read is space left in packet buffer. + NSUInteger bytesToRead = [partialReadBuffer length] - totalBytesRead; + + // Read data into packet buffer + UInt8 *packetbuf = (UInt8 *)( [partialReadBuffer mutableBytes] + totalBytesRead ); + + CFIndex result = CFReadStreamRead(theReadStream, packetbuf, bytesToRead); + + // Check results + if (result < 0) + { + error = YES; + } + else + { + CFIndex bytesRead = result; + + totalBytesRead += bytesRead; + } + } + + [partialReadBuffer setLength:totalBytesRead]; + + return partialReadBuffer; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Errors +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +/** + * Returns a standard error object for the current errno value. + * Errno is used for low-level BSD socket errors. +**/ +- (NSError *)getErrnoError +{ + NSString *errorMsg = [NSString stringWithUTF8String:strerror(errno)]; + NSDictionary *userInfo = [NSDictionary dictionaryWithObject:errorMsg forKey:NSLocalizedDescriptionKey]; + + return [NSError errorWithDomain:NSPOSIXErrorDomain code:errno userInfo:userInfo]; +} + +/** + * Returns a standard error message for a CFSocket error. + * Unfortunately, CFSocket offers no feedback on its errors. +**/ +- (NSError *)getSocketError +{ + NSString *errMsg = NSLocalizedStringWithDefaultValue(@"AsyncSocketCFSocketError", + @"AsyncSocket", [NSBundle mainBundle], + @"General CFSocket error", nil); + + NSDictionary *info = [NSDictionary dictionaryWithObject:errMsg forKey:NSLocalizedDescriptionKey]; + + return [NSError errorWithDomain:AsyncSocketErrorDomain code:AsyncSocketCFSocketError userInfo:info]; +} + +- (NSError *)getStreamError +{ + CFStreamError err; + if (theReadStream != NULL) + { + err = CFReadStreamGetError (theReadStream); + if (err.error != 0) return [self errorFromCFStreamError: err]; + } + + if (theWriteStream != NULL) + { + err = CFWriteStreamGetError (theWriteStream); + if (err.error != 0) return [self errorFromCFStreamError: err]; + } + + return nil; +} + +/** + * Returns a standard AsyncSocket abort error. +**/ +- (NSError *)getAbortError +{ + NSString *errMsg = NSLocalizedStringWithDefaultValue(@"AsyncSocketCanceledError", + @"AsyncSocket", [NSBundle mainBundle], + @"Connection canceled", nil); + + NSDictionary *info = [NSDictionary dictionaryWithObject:errMsg forKey:NSLocalizedDescriptionKey]; + + return [NSError errorWithDomain:AsyncSocketErrorDomain code:AsyncSocketCanceledError userInfo:info]; +} + +/** + * Returns a standard AsyncSocket connect timeout error. +**/ +- (NSError *)getConnectTimeoutError +{ + NSString *errMsg = NSLocalizedStringWithDefaultValue(@"AsyncSocketConnectTimeoutError", + @"AsyncSocket", [NSBundle mainBundle], + @"Attempt to connect to host timed out", nil); + + NSDictionary *info = [NSDictionary dictionaryWithObject:errMsg forKey:NSLocalizedDescriptionKey]; + + return [NSError errorWithDomain:AsyncSocketErrorDomain code:AsyncSocketConnectTimeoutError userInfo:info]; +} + +/** + * Returns a standard AsyncSocket maxed out error. +**/ +- (NSError *)getReadMaxedOutError +{ + NSString *errMsg = NSLocalizedStringWithDefaultValue(@"AsyncSocketReadMaxedOutError", + @"AsyncSocket", [NSBundle mainBundle], + @"Read operation reached set maximum length", nil); + + NSDictionary *info = [NSDictionary dictionaryWithObject:errMsg forKey:NSLocalizedDescriptionKey]; + + return [NSError errorWithDomain:AsyncSocketErrorDomain code:AsyncSocketReadMaxedOutError userInfo:info]; +} + +/** + * Returns a standard AsyncSocket read timeout error. +**/ +- (NSError *)getReadTimeoutError +{ + NSString *errMsg = NSLocalizedStringWithDefaultValue(@"AsyncSocketReadTimeoutError", + @"AsyncSocket", [NSBundle mainBundle], + @"Read operation timed out", nil); + + NSDictionary *info = [NSDictionary dictionaryWithObject:errMsg forKey:NSLocalizedDescriptionKey]; + + return [NSError errorWithDomain:AsyncSocketErrorDomain code:AsyncSocketReadTimeoutError userInfo:info]; +} + +/** + * Returns a standard AsyncSocket write timeout error. +**/ +- (NSError *)getWriteTimeoutError +{ + NSString *errMsg = NSLocalizedStringWithDefaultValue(@"AsyncSocketWriteTimeoutError", + @"AsyncSocket", [NSBundle mainBundle], + @"Write operation timed out", nil); + + NSDictionary *info = [NSDictionary dictionaryWithObject:errMsg forKey:NSLocalizedDescriptionKey]; + + return [NSError errorWithDomain:AsyncSocketErrorDomain code:AsyncSocketWriteTimeoutError userInfo:info]; +} + +- (NSError *)errorFromCFStreamError:(CFStreamError)err +{ + if (err.domain == 0 && err.error == 0) return nil; + + // Can't use switch; these constants aren't int literals. + NSString *domain = @"CFStreamError (unlisted domain)"; + NSString *message = nil; + + if(err.domain == kCFStreamErrorDomainPOSIX) { + domain = NSPOSIXErrorDomain; + } + else if(err.domain == kCFStreamErrorDomainMacOSStatus) { + domain = NSOSStatusErrorDomain; + } + else if(err.domain == kCFStreamErrorDomainMach) { + domain = NSMachErrorDomain; + } + else if(err.domain == kCFStreamErrorDomainNetDB) + { + domain = @"kCFStreamErrorDomainNetDB"; + message = [NSString stringWithCString:gai_strerror(err.error) encoding:NSASCIIStringEncoding]; + } + else if(err.domain == kCFStreamErrorDomainNetServices) { + domain = @"kCFStreamErrorDomainNetServices"; + } + else if(err.domain == kCFStreamErrorDomainSOCKS) { + domain = @"kCFStreamErrorDomainSOCKS"; + } + else if(err.domain == kCFStreamErrorDomainSystemConfiguration) { + domain = @"kCFStreamErrorDomainSystemConfiguration"; + } + else if(err.domain == kCFStreamErrorDomainSSL) { + domain = @"kCFStreamErrorDomainSSL"; + } + + NSDictionary *info = nil; + if(message != nil) + { + info = [NSDictionary dictionaryWithObject:message forKey:NSLocalizedDescriptionKey]; + } + return [NSError errorWithDomain:domain code:err.error userInfo:info]; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Diagnostics +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +- (BOOL)isDisconnected +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + if (theNativeSocket4 > 0) return NO; + if (theNativeSocket6 > 0) return NO; + + if (theSocket4) return NO; + if (theSocket6) return NO; + + if (theReadStream) return NO; + if (theWriteStream) return NO; + + return YES; +} + +- (BOOL)isConnected +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + return [self areStreamsConnected]; +} + +- (NSString *)connectedHost +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + if(theSocket4) + return [self connectedHostFromCFSocket4:theSocket4]; + if(theSocket6) + return [self connectedHostFromCFSocket6:theSocket6]; + + if(theNativeSocket4 > 0) + return [self connectedHostFromNativeSocket4:theNativeSocket4]; + if(theNativeSocket6 > 0) + return [self connectedHostFromNativeSocket6:theNativeSocket6]; + + return nil; +} + +- (UInt16)connectedPort +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + if(theSocket4) + return [self connectedPortFromCFSocket4:theSocket4]; + if(theSocket6) + return [self connectedPortFromCFSocket6:theSocket6]; + + if(theNativeSocket4 > 0) + return [self connectedPortFromNativeSocket4:theNativeSocket4]; + if(theNativeSocket6 > 0) + return [self connectedPortFromNativeSocket6:theNativeSocket6]; + + return 0; +} + +- (NSString *)localHost +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + if(theSocket4) + return [self localHostFromCFSocket4:theSocket4]; + if(theSocket6) + return [self localHostFromCFSocket6:theSocket6]; + + if(theNativeSocket4 > 0) + return [self localHostFromNativeSocket4:theNativeSocket4]; + if(theNativeSocket6 > 0) + return [self localHostFromNativeSocket6:theNativeSocket6]; + + return nil; +} + +- (UInt16)localPort +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + if(theSocket4) + return [self localPortFromCFSocket4:theSocket4]; + if(theSocket6) + return [self localPortFromCFSocket6:theSocket6]; + + if(theNativeSocket4 > 0) + return [self localPortFromNativeSocket4:theNativeSocket4]; + if(theNativeSocket6 > 0) + return [self localPortFromNativeSocket6:theNativeSocket6]; + + return 0; +} + +- (NSString *)connectedHost4 +{ + if(theSocket4) + return [self connectedHostFromCFSocket4:theSocket4]; + if(theNativeSocket4 > 0) + return [self connectedHostFromNativeSocket4:theNativeSocket4]; + + return nil; +} + +- (NSString *)connectedHost6 +{ + if(theSocket6) + return [self connectedHostFromCFSocket6:theSocket6]; + if(theNativeSocket6 > 0) + return [self connectedHostFromNativeSocket6:theNativeSocket6]; + + return nil; +} + +- (UInt16)connectedPort4 +{ + if(theSocket4) + return [self connectedPortFromCFSocket4:theSocket4]; + if(theNativeSocket4 > 0) + return [self connectedPortFromNativeSocket4:theNativeSocket4]; + + return 0; +} + +- (UInt16)connectedPort6 +{ + if(theSocket6) + return [self connectedPortFromCFSocket6:theSocket6]; + if(theNativeSocket6 > 0) + return [self connectedPortFromNativeSocket6:theNativeSocket6]; + + return 0; +} + +- (NSString *)localHost4 +{ + if(theSocket4) + return [self localHostFromCFSocket4:theSocket4]; + if(theNativeSocket4 > 0) + return [self localHostFromNativeSocket4:theNativeSocket4]; + + return nil; +} + +- (NSString *)localHost6 +{ + if(theSocket6) + return [self localHostFromCFSocket6:theSocket6]; + if(theNativeSocket6 > 0) + return [self localHostFromNativeSocket6:theNativeSocket6]; + + return nil; +} + +- (UInt16)localPort4 +{ + if(theSocket4) + return [self localPortFromCFSocket4:theSocket4]; + if(theNativeSocket4 > 0) + return [self localPortFromNativeSocket4:theNativeSocket4]; + + return 0; +} + +- (UInt16)localPort6 +{ + if(theSocket6) + return [self localPortFromCFSocket6:theSocket6]; + if(theNativeSocket6 > 0) + return [self localPortFromNativeSocket6:theNativeSocket6]; + + return 0; +} + +- (NSString *)connectedHostFromNativeSocket4:(CFSocketNativeHandle)theNativeSocket +{ + struct sockaddr_in sockaddr4; + socklen_t sockaddr4len = sizeof(sockaddr4); + + if(getpeername(theNativeSocket, (struct sockaddr *)&sockaddr4, &sockaddr4len) < 0) + { + return nil; + } + return [self hostFromAddress4:&sockaddr4]; +} + +- (NSString *)connectedHostFromNativeSocket6:(CFSocketNativeHandle)theNativeSocket +{ + struct sockaddr_in6 sockaddr6; + socklen_t sockaddr6len = sizeof(sockaddr6); + + if(getpeername(theNativeSocket, (struct sockaddr *)&sockaddr6, &sockaddr6len) < 0) + { + return nil; + } + return [self hostFromAddress6:&sockaddr6]; +} + +- (NSString *)connectedHostFromCFSocket4:(CFSocketRef)theSocket +{ + CFDataRef peeraddr; + NSString *peerstr = nil; + + if((peeraddr = CFSocketCopyPeerAddress(theSocket))) + { + struct sockaddr_in *pSockAddr = (struct sockaddr_in *)CFDataGetBytePtr(peeraddr); + + peerstr = [self hostFromAddress4:pSockAddr]; + CFRelease (peeraddr); + } + + return peerstr; +} + +- (NSString *)connectedHostFromCFSocket6:(CFSocketRef)theSocket +{ + CFDataRef peeraddr; + NSString *peerstr = nil; + + if((peeraddr = CFSocketCopyPeerAddress(theSocket))) + { + struct sockaddr_in6 *pSockAddr = (struct sockaddr_in6 *)CFDataGetBytePtr(peeraddr); + + peerstr = [self hostFromAddress6:pSockAddr]; + CFRelease (peeraddr); + } + + return peerstr; +} + +- (UInt16)connectedPortFromNativeSocket4:(CFSocketNativeHandle)theNativeSocket +{ + struct sockaddr_in sockaddr4; + socklen_t sockaddr4len = sizeof(sockaddr4); + + if(getpeername(theNativeSocket, (struct sockaddr *)&sockaddr4, &sockaddr4len) < 0) + { + return 0; + } + return [self portFromAddress4:&sockaddr4]; +} + +- (UInt16)connectedPortFromNativeSocket6:(CFSocketNativeHandle)theNativeSocket +{ + struct sockaddr_in6 sockaddr6; + socklen_t sockaddr6len = sizeof(sockaddr6); + + if(getpeername(theNativeSocket, (struct sockaddr *)&sockaddr6, &sockaddr6len) < 0) + { + return 0; + } + return [self portFromAddress6:&sockaddr6]; +} + +- (UInt16)connectedPortFromCFSocket4:(CFSocketRef)theSocket +{ + CFDataRef peeraddr; + UInt16 peerport = 0; + + if((peeraddr = CFSocketCopyPeerAddress(theSocket))) + { + struct sockaddr_in *pSockAddr = (struct sockaddr_in *)CFDataGetBytePtr(peeraddr); + + peerport = [self portFromAddress4:pSockAddr]; + CFRelease (peeraddr); + } + + return peerport; +} + +- (UInt16)connectedPortFromCFSocket6:(CFSocketRef)theSocket +{ + CFDataRef peeraddr; + UInt16 peerport = 0; + + if((peeraddr = CFSocketCopyPeerAddress(theSocket))) + { + struct sockaddr_in6 *pSockAddr = (struct sockaddr_in6 *)CFDataGetBytePtr(peeraddr); + + peerport = [self portFromAddress6:pSockAddr]; + CFRelease (peeraddr); + } + + return peerport; +} + +- (NSString *)localHostFromNativeSocket4:(CFSocketNativeHandle)theNativeSocket +{ + struct sockaddr_in sockaddr4; + socklen_t sockaddr4len = sizeof(sockaddr4); + + if(getsockname(theNativeSocket, (struct sockaddr *)&sockaddr4, &sockaddr4len) < 0) + { + return nil; + } + return [self hostFromAddress4:&sockaddr4]; +} + +- (NSString *)localHostFromNativeSocket6:(CFSocketNativeHandle)theNativeSocket +{ + struct sockaddr_in6 sockaddr6; + socklen_t sockaddr6len = sizeof(sockaddr6); + + if(getsockname(theNativeSocket, (struct sockaddr *)&sockaddr6, &sockaddr6len) < 0) + { + return nil; + } + return [self hostFromAddress6:&sockaddr6]; +} + +- (NSString *)localHostFromCFSocket4:(CFSocketRef)theSocket +{ + CFDataRef selfaddr; + NSString *selfstr = nil; + + if((selfaddr = CFSocketCopyAddress(theSocket))) + { + struct sockaddr_in *pSockAddr = (struct sockaddr_in *)CFDataGetBytePtr(selfaddr); + + selfstr = [self hostFromAddress4:pSockAddr]; + CFRelease (selfaddr); + } + + return selfstr; +} + +- (NSString *)localHostFromCFSocket6:(CFSocketRef)theSocket +{ + CFDataRef selfaddr; + NSString *selfstr = nil; + + if((selfaddr = CFSocketCopyAddress(theSocket))) + { + struct sockaddr_in6 *pSockAddr = (struct sockaddr_in6 *)CFDataGetBytePtr(selfaddr); + + selfstr = [self hostFromAddress6:pSockAddr]; + CFRelease (selfaddr); + } + + return selfstr; +} + +- (UInt16)localPortFromNativeSocket4:(CFSocketNativeHandle)theNativeSocket +{ + struct sockaddr_in sockaddr4; + socklen_t sockaddr4len = sizeof(sockaddr4); + + if(getsockname(theNativeSocket, (struct sockaddr *)&sockaddr4, &sockaddr4len) < 0) + { + return 0; + } + return [self portFromAddress4:&sockaddr4]; +} + +- (UInt16)localPortFromNativeSocket6:(CFSocketNativeHandle)theNativeSocket +{ + struct sockaddr_in6 sockaddr6; + socklen_t sockaddr6len = sizeof(sockaddr6); + + if(getsockname(theNativeSocket, (struct sockaddr *)&sockaddr6, &sockaddr6len) < 0) + { + return 0; + } + return [self portFromAddress6:&sockaddr6]; +} + +- (UInt16)localPortFromCFSocket4:(CFSocketRef)theSocket +{ + CFDataRef selfaddr; + UInt16 selfport = 0; + + if ((selfaddr = CFSocketCopyAddress(theSocket))) + { + struct sockaddr_in *pSockAddr = (struct sockaddr_in *)CFDataGetBytePtr(selfaddr); + + selfport = [self portFromAddress4:pSockAddr]; + CFRelease (selfaddr); + } + + return selfport; +} + +- (UInt16)localPortFromCFSocket6:(CFSocketRef)theSocket +{ + CFDataRef selfaddr; + UInt16 selfport = 0; + + if ((selfaddr = CFSocketCopyAddress(theSocket))) + { + struct sockaddr_in6 *pSockAddr = (struct sockaddr_in6 *)CFDataGetBytePtr(selfaddr); + + selfport = [self portFromAddress6:pSockAddr]; + CFRelease (selfaddr); + } + + return selfport; +} + +- (NSString *)hostFromAddress4:(struct sockaddr_in *)pSockaddr4 +{ + char addrBuf[INET_ADDRSTRLEN]; + + if(inet_ntop(AF_INET, &pSockaddr4->sin_addr, addrBuf, (socklen_t)sizeof(addrBuf)) == NULL) + { + [NSException raise:NSInternalInconsistencyException format:@"Cannot convert IPv4 address to string."]; + } + + return [NSString stringWithCString:addrBuf encoding:NSASCIIStringEncoding]; +} + +- (NSString *)hostFromAddress6:(struct sockaddr_in6 *)pSockaddr6 +{ + char addrBuf[INET6_ADDRSTRLEN]; + + if(inet_ntop(AF_INET6, &pSockaddr6->sin6_addr, addrBuf, (socklen_t)sizeof(addrBuf)) == NULL) + { + [NSException raise:NSInternalInconsistencyException format:@"Cannot convert IPv6 address to string."]; + } + + return [NSString stringWithCString:addrBuf encoding:NSASCIIStringEncoding]; +} + +- (UInt16)portFromAddress4:(struct sockaddr_in *)pSockaddr4 +{ + return ntohs(pSockaddr4->sin_port); +} + +- (UInt16)portFromAddress6:(struct sockaddr_in6 *)pSockaddr6 +{ + return ntohs(pSockaddr6->sin6_port); +} + +- (NSData *)connectedAddress +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + // Extract address from CFSocket + + CFSocketRef theSocket; + + if (theSocket4) + theSocket = theSocket4; + else + theSocket = theSocket6; + + if (theSocket) + { + CFDataRef peeraddr = CFSocketCopyPeerAddress(theSocket); + + if (peeraddr == NULL) return nil; + + return [(NSData *)NSMakeCollectable(peeraddr) autorelease]; + } + + // Extract address from CFSocketNativeHandle + + socklen_t sockaddrlen; + CFSocketNativeHandle theNativeSocket = 0; + + if (theNativeSocket4 > 0) + { + theNativeSocket = theNativeSocket4; + sockaddrlen = sizeof(struct sockaddr_in); + } + else + { + theNativeSocket = theNativeSocket6; + sockaddrlen = sizeof(struct sockaddr_in6); + } + + NSData *result = nil; + void *sockaddr = malloc(sockaddrlen); + + if(getpeername(theNativeSocket, (struct sockaddr *)sockaddr, &sockaddrlen) >= 0) + { + result = [NSData dataWithBytesNoCopy:sockaddr length:sockaddrlen freeWhenDone:YES]; + } + else + { + free(sockaddr); + } + + return result; +} + +- (NSData *)localAddress +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + // Extract address from CFSocket + + CFSocketRef theSocket; + + if (theSocket4) + theSocket = theSocket4; + else + theSocket = theSocket6; + + if (theSocket) + { + CFDataRef selfaddr = CFSocketCopyAddress(theSocket); + + if (selfaddr == NULL) return nil; + + return [(NSData *)NSMakeCollectable(selfaddr) autorelease]; + } + + // Extract address from CFSocketNativeHandle + + socklen_t sockaddrlen; + CFSocketNativeHandle theNativeSocket = 0; + + if (theNativeSocket4 > 0) + { + theNativeSocket = theNativeSocket4; + sockaddrlen = sizeof(struct sockaddr_in); + } + else + { + theNativeSocket = theNativeSocket6; + sockaddrlen = sizeof(struct sockaddr_in6); + } + + NSData *result = nil; + void *sockaddr = malloc(sockaddrlen); + + if(getsockname(theNativeSocket, (struct sockaddr *)sockaddr, &sockaddrlen) >= 0) + { + result = [NSData dataWithBytesNoCopy:sockaddr length:sockaddrlen freeWhenDone:YES]; + } + else + { + free(sockaddr); + } + + return result; +} + +- (BOOL)isIPv4 +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + return (theNativeSocket4 > 0 || theSocket4 != NULL); +} + +- (BOOL)isIPv6 +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + return (theNativeSocket6 > 0 || theSocket6 != NULL); +} + +- (BOOL)areStreamsConnected +{ + CFStreamStatus s; + + if (theReadStream != NULL) + { + s = CFReadStreamGetStatus(theReadStream); + if ( !(s == kCFStreamStatusOpen || s == kCFStreamStatusReading || s == kCFStreamStatusError) ) + return NO; + } + else return NO; + + if (theWriteStream != NULL) + { + s = CFWriteStreamGetStatus(theWriteStream); + if ( !(s == kCFStreamStatusOpen || s == kCFStreamStatusWriting || s == kCFStreamStatusError) ) + return NO; + } + else return NO; + + return YES; +} + +- (NSString *)description +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + static const char *statstr[] = {"not open","opening","open","reading","writing","at end","closed","has error"}; + CFStreamStatus rs = (theReadStream != NULL) ? CFReadStreamGetStatus(theReadStream) : 0; + CFStreamStatus ws = (theWriteStream != NULL) ? CFWriteStreamGetStatus(theWriteStream) : 0; + + NSString *peerstr, *selfstr; + + BOOL is4 = [self isIPv4]; + BOOL is6 = [self isIPv6]; + + if (is4 || is6) + { + if (is4 && is6) + { + peerstr = [NSString stringWithFormat: @"%@/%@ %u", + [self connectedHost4], + [self connectedHost6], + [self connectedPort]]; + } + else if (is4) + { + peerstr = [NSString stringWithFormat: @"%@ %u", + [self connectedHost4], + [self connectedPort4]]; + } + else + { + peerstr = [NSString stringWithFormat: @"%@ %u", + [self connectedHost6], + [self connectedPort6]]; + } + } + else peerstr = @"nowhere"; + + if (is4 || is6) + { + if (is4 && is6) + { + selfstr = [NSString stringWithFormat: @"%@/%@ %u", + [self localHost4], + [self localHost6], + [self localPort]]; + } + else if (is4) + { + selfstr = [NSString stringWithFormat: @"%@ %u", + [self localHost4], + [self localPort4]]; + } + else + { + selfstr = [NSString stringWithFormat: @"%@ %u", + [self localHost6], + [self localPort6]]; + } + } + else selfstr = @"nowhere"; + + NSMutableString *ms = [[NSMutableString alloc] initWithCapacity:150]; + + [ms appendString:[NSString stringWithFormat:@"readLength > 0) + percentDone = (float)theCurrentRead->bytesDone / (float)theCurrentRead->readLength * 100.0F; + else + percentDone = 100.0F; + + [ms appendString: [NSString stringWithFormat:@"currently read %u bytes (%d%% done), ", + (unsigned int)[theCurrentRead->buffer length], + theCurrentRead->bytesDone ? percentDone : 0]]; + } + + if (theCurrentWrite == nil) + [ms appendString: @"no current write, "]; + else + { + int percentDone = (float)theCurrentWrite->bytesDone / (float)[theCurrentWrite->buffer length] * 100.0F; + + [ms appendString: [NSString stringWithFormat:@"currently written %u (%d%%), ", + (unsigned int)[theCurrentWrite->buffer length], + theCurrentWrite->bytesDone ? percentDone : 0]]; + } + + [ms appendString:[NSString stringWithFormat:@"read stream %p %s, ", theReadStream, statstr[rs]]]; + [ms appendString:[NSString stringWithFormat:@"write stream %p %s", theWriteStream, statstr[ws]]]; + + if(theFlags & kDisconnectAfterReads) + { + if(theFlags & kDisconnectAfterWrites) + [ms appendString: @", will disconnect after reads & writes"]; + else + [ms appendString: @", will disconnect after reads"]; + } + else if(theFlags & kDisconnectAfterWrites) + { + [ms appendString: @", will disconnect after writes"]; + } + + if (![self isConnected]) [ms appendString: @", not connected"]; + + [ms appendString:@">"]; + + return [ms autorelease]; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Reading +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +- (void)readDataWithTimeout:(NSTimeInterval)timeout tag:(long)tag +{ + [self readDataWithTimeout:timeout buffer:nil bufferOffset:0 maxLength:0 tag:tag]; +} + +- (void)readDataWithTimeout:(NSTimeInterval)timeout + buffer:(NSMutableData *)buffer + bufferOffset:(NSUInteger)offset + tag:(long)tag +{ + [self readDataWithTimeout:timeout buffer:buffer bufferOffset:offset maxLength:0 tag:tag]; +} + +- (void)readDataWithTimeout:(NSTimeInterval)timeout + buffer:(NSMutableData *)buffer + bufferOffset:(NSUInteger)offset + maxLength:(NSUInteger)length + tag:(long)tag +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + if (offset > [buffer length]) return; + if (theFlags & kForbidReadsWrites) return; + + AsyncReadPacket *packet = [[AsyncReadPacket alloc] initWithData:buffer + startOffset:offset + maxLength:length + timeout:timeout + readLength:0 + terminator:nil + tag:tag]; + [theReadQueue addObject:packet]; + [self scheduleDequeueRead]; + + [packet release]; +} + +- (void)readDataToLength:(NSUInteger)length withTimeout:(NSTimeInterval)timeout tag:(long)tag +{ + [self readDataToLength:length withTimeout:timeout buffer:nil bufferOffset:0 tag:tag]; +} + +- (void)readDataToLength:(NSUInteger)length + withTimeout:(NSTimeInterval)timeout + buffer:(NSMutableData *)buffer + bufferOffset:(NSUInteger)offset + tag:(long)tag +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + if (length == 0) return; + if (offset > [buffer length]) return; + if (theFlags & kForbidReadsWrites) return; + + AsyncReadPacket *packet = [[AsyncReadPacket alloc] initWithData:buffer + startOffset:offset + maxLength:0 + timeout:timeout + readLength:length + terminator:nil + tag:tag]; + [theReadQueue addObject:packet]; + [self scheduleDequeueRead]; + + [packet release]; +} + +- (void)readDataToData:(NSData *)data withTimeout:(NSTimeInterval)timeout tag:(long)tag +{ + [self readDataToData:data withTimeout:timeout buffer:nil bufferOffset:0 maxLength:0 tag:tag]; +} + +- (void)readDataToData:(NSData *)data + withTimeout:(NSTimeInterval)timeout + buffer:(NSMutableData *)buffer + bufferOffset:(NSUInteger)offset + tag:(long)tag +{ + [self readDataToData:data withTimeout:timeout buffer:buffer bufferOffset:offset maxLength:0 tag:tag]; +} + +- (void)readDataToData:(NSData *)data withTimeout:(NSTimeInterval)timeout maxLength:(NSUInteger)length tag:(long)tag +{ + [self readDataToData:data withTimeout:timeout buffer:nil bufferOffset:0 maxLength:length tag:tag]; +} + +- (void)readDataToData:(NSData *)data + withTimeout:(NSTimeInterval)timeout + buffer:(NSMutableData *)buffer + bufferOffset:(NSUInteger)offset + maxLength:(NSUInteger)length + tag:(long)tag +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + if (data == nil || [data length] == 0) return; + if (offset > [buffer length]) return; + if (length > 0 && length < [data length]) return; + if (theFlags & kForbidReadsWrites) return; + + AsyncReadPacket *packet = [[AsyncReadPacket alloc] initWithData:buffer + startOffset:offset + maxLength:length + timeout:timeout + readLength:0 + terminator:data + tag:tag]; + [theReadQueue addObject:packet]; + [self scheduleDequeueRead]; + + [packet release]; +} + +/** + * Puts a maybeDequeueRead on the run loop. + * An assumption here is that selectors will be performed consecutively within their priority. +**/ +- (void)scheduleDequeueRead +{ + if((theFlags & kDequeueReadScheduled) == 0) + { + theFlags |= kDequeueReadScheduled; + [self performSelector:@selector(maybeDequeueRead) withObject:nil afterDelay:0 inModes:theRunLoopModes]; + } +} + +/** + * This method starts a new read, if needed. + * It is called when a user requests a read, + * or when a stream opens that may have requested reads sitting in the queue, etc. +**/ +- (void)maybeDequeueRead +{ + // Unset the flag indicating a call to this method is scheduled + theFlags &= ~kDequeueReadScheduled; + + // If we're not currently processing a read AND we have an available read stream + if((theCurrentRead == nil) && (theReadStream != NULL)) + { + if([theReadQueue count] > 0) + { + // Dequeue the next object in the write queue + theCurrentRead = [[theReadQueue objectAtIndex:0] retain]; + [theReadQueue removeObjectAtIndex:0]; + + if([theCurrentRead isKindOfClass:[AsyncSpecialPacket class]]) + { + // Attempt to start TLS + theFlags |= kStartingReadTLS; + + // This method won't do anything unless both kStartingReadTLS and kStartingWriteTLS are set + [self maybeStartTLS]; + } + else + { + // Start time-out timer + if(theCurrentRead->timeout >= 0.0) + { + theReadTimer = [NSTimer timerWithTimeInterval:theCurrentRead->timeout + target:self + selector:@selector(doReadTimeout:) + userInfo:nil + repeats:NO]; + [self runLoopAddTimer:theReadTimer]; + } + + // Immediately read, if possible + [self doBytesAvailable]; + } + } + else if(theFlags & kDisconnectAfterReads) + { + if(theFlags & kDisconnectAfterWrites) + { + if(([theWriteQueue count] == 0) && (theCurrentWrite == nil)) + { + [self disconnect]; + } + } + else + { + [self disconnect]; + } + } + } +} + +/** + * Call this method in doBytesAvailable instead of CFReadStreamHasBytesAvailable(). + * This method supports pre-buffering properly as well as the kSocketHasBytesAvailable flag. +**/ +- (BOOL)hasBytesAvailable +{ + if ((theFlags & kSocketHasBytesAvailable) || ([partialReadBuffer length] > 0)) + { + return YES; + } + else + { + return CFReadStreamHasBytesAvailable(theReadStream); + } +} + +/** + * Call this method in doBytesAvailable instead of CFReadStreamRead(). + * This method support pre-buffering properly. +**/ +- (CFIndex)readIntoBuffer:(void *)buffer maxLength:(NSUInteger)length +{ + if([partialReadBuffer length] > 0) + { + // Determine the maximum amount of data to read + NSUInteger bytesToRead = MIN(length, [partialReadBuffer length]); + + // Copy the bytes from the partial read buffer + memcpy(buffer, [partialReadBuffer bytes], (size_t)bytesToRead); + + // Remove the copied bytes from the partial read buffer + [partialReadBuffer replaceBytesInRange:NSMakeRange(0, bytesToRead) withBytes:NULL length:0]; + + return (CFIndex)bytesToRead; + } + else + { + // Unset the "has-bytes-available" flag + theFlags &= ~kSocketHasBytesAvailable; + + return CFReadStreamRead(theReadStream, (UInt8 *)buffer, length); + } +} + +/** + * This method is called when a new read is taken from the read queue or when new data becomes available on the stream. +**/ +- (void)doBytesAvailable +{ + // If data is available on the stream, but there is no read request, then we don't need to process the data yet. + // Also, if there is a read request but no read stream setup, we can't process any data yet. + if((theCurrentRead == nil) || (theReadStream == NULL)) + { + return; + } + + // Note: This method is not called if theCurrentRead is an AsyncSpecialPacket (startTLS packet) + + NSUInteger totalBytesRead = 0; + + BOOL done = NO; + BOOL socketError = NO; + BOOL maxoutError = NO; + + while(!done && !socketError && !maxoutError && [self hasBytesAvailable]) + { + BOOL didPreBuffer = NO; + BOOL didReadFromPreBuffer = NO; + + // There are 3 types of read packets: + // + // 1) Read all available data. + // 2) Read a specific length of data. + // 3) Read up to a particular terminator. + + NSUInteger bytesToRead; + + if (theCurrentRead->term != nil) + { + // Read type #3 - read up to a terminator + // + // If pre-buffering is enabled we'll read a chunk and search for the terminator. + // If the terminator is found, overflow data will be placed in the partialReadBuffer for the next read. + // + // If pre-buffering is disabled we'll be forced to read only a few bytes. + // Just enough to ensure we don't go past our term or over our max limit. + // + // If we already have data pre-buffered, we can read directly from it. + + if ([partialReadBuffer length] > 0) + { + didReadFromPreBuffer = YES; + bytesToRead = [theCurrentRead readLengthForTermWithPreBuffer:partialReadBuffer found:&done]; + } + else + { + if (theFlags & kEnablePreBuffering) + { + didPreBuffer = YES; + bytesToRead = [theCurrentRead prebufferReadLengthForTerm]; + } + else + { + bytesToRead = [theCurrentRead readLengthForTerm]; + } + } + } + else + { + // Read type #1 or #2 + + bytesToRead = [theCurrentRead readLengthForNonTerm]; + } + + // Make sure we have enough room in the buffer for our read + + NSUInteger buffSize = [theCurrentRead->buffer length]; + NSUInteger buffSpace = buffSize - theCurrentRead->startOffset - theCurrentRead->bytesDone; + + if (bytesToRead > buffSpace) + { + NSUInteger buffInc = bytesToRead - buffSpace; + + [theCurrentRead->buffer increaseLengthBy:buffInc]; + } + + // Read data into packet buffer + + void *buffer = [theCurrentRead->buffer mutableBytes] + theCurrentRead->startOffset; + void *subBuffer = buffer + theCurrentRead->bytesDone; + + CFIndex result = [self readIntoBuffer:subBuffer maxLength:bytesToRead]; + + // Check results + if (result < 0) + { + socketError = YES; + } + else + { + CFIndex bytesRead = result; + + // Update total amount read for the current read + theCurrentRead->bytesDone += bytesRead; + + // Update total amount read in this method invocation + totalBytesRead += bytesRead; + + + // Is packet done? + if (theCurrentRead->readLength > 0) + { + // Read type #2 - read a specific length of data + + done = (theCurrentRead->bytesDone == theCurrentRead->readLength); + } + else if (theCurrentRead->term != nil) + { + // Read type #3 - read up to a terminator + + if (didPreBuffer) + { + // Search for the terminating sequence within the big chunk we just read. + + NSInteger overflow = [theCurrentRead searchForTermAfterPreBuffering:result]; + + if (overflow > 0) + { + // Copy excess data into partialReadBuffer + void *overflowBuffer = buffer + theCurrentRead->bytesDone - overflow; + + [partialReadBuffer appendBytes:overflowBuffer length:overflow]; + + // Update the bytesDone variable. + theCurrentRead->bytesDone -= overflow; + + // Note: The completeCurrentRead method will trim the buffer for us. + } + + done = (overflow >= 0); + } + else if (didReadFromPreBuffer) + { + // Our 'done' variable was updated via the readLengthForTermWithPreBuffer:found: method + } + else + { + // Search for the terminating sequence at the end of the buffer + + NSUInteger termlen = [theCurrentRead->term length]; + + if(theCurrentRead->bytesDone >= termlen) + { + void *bufferEnd = buffer + (theCurrentRead->bytesDone - termlen); + + const void *seq = [theCurrentRead->term bytes]; + + done = (memcmp (bufferEnd, seq, termlen) == 0); + } + } + + if(!done && theCurrentRead->maxLength > 0) + { + // We're not done and there's a set maxLength. + // Have we reached that maxLength yet? + + if(theCurrentRead->bytesDone >= theCurrentRead->maxLength) + { + maxoutError = YES; + } + } + } + else + { + // Read type #1 - read all available data + // + // We're done when: + // - we reach maxLength (if there is a max) + // - all readable is read (see below) + + if (theCurrentRead->maxLength > 0) + { + done = (theCurrentRead->bytesDone >= theCurrentRead->maxLength); + } + } + } + } + + if (theCurrentRead->readLength <= 0 && theCurrentRead->term == nil) + { + // Read type #1 - read all available data + + if (theCurrentRead->bytesDone > 0) + { + // Ran out of bytes, so the "read-all-available-data" type packet is done + done = YES; + } + } + + if (done) + { + [self completeCurrentRead]; + if (!socketError) [self scheduleDequeueRead]; + } + else if (totalBytesRead > 0) + { + // We're not done with the readToLength or readToData yet, but we have read in some bytes + if ([theDelegate respondsToSelector:@selector(onSocket:didReadPartialDataOfLength:tag:)]) + { + [theDelegate onSocket:self didReadPartialDataOfLength:totalBytesRead tag:theCurrentRead->tag]; + } + } + + if(socketError) + { + CFStreamError err = CFReadStreamGetError(theReadStream); + [self closeWithError:[self errorFromCFStreamError:err]]; + return; + } + + if(maxoutError) + { + [self closeWithError:[self getReadMaxedOutError]]; + return; + } +} + +// Ends current read and calls delegate. +- (void)completeCurrentRead +{ + NSAssert(theCurrentRead, @"Trying to complete current read when there is no current read."); + + NSData *result; + + if (theCurrentRead->bufferOwner) + { + // We created the buffer on behalf of the user. + // Trim our buffer to be the proper size. + [theCurrentRead->buffer setLength:theCurrentRead->bytesDone]; + + result = theCurrentRead->buffer; + } + else + { + // We did NOT create the buffer. + // The buffer is owned by the caller. + // Only trim the buffer if we had to increase its size. + + if ([theCurrentRead->buffer length] > theCurrentRead->originalBufferLength) + { + NSUInteger readSize = theCurrentRead->startOffset + theCurrentRead->bytesDone; + NSUInteger origSize = theCurrentRead->originalBufferLength; + + NSUInteger buffSize = MAX(readSize, origSize); + + [theCurrentRead->buffer setLength:buffSize]; + } + + void *buffer = [theCurrentRead->buffer mutableBytes] + theCurrentRead->startOffset; + + result = [NSData dataWithBytesNoCopy:buffer length:theCurrentRead->bytesDone freeWhenDone:NO]; + } + + if([theDelegate respondsToSelector:@selector(onSocket:didReadData:withTag:)]) + { + [theDelegate onSocket:self didReadData:result withTag:theCurrentRead->tag]; + } + + // Caller may have disconnected in the above delegate method + if (theCurrentRead != nil) + { + [self endCurrentRead]; + } +} + +// Ends current read. +- (void)endCurrentRead +{ + NSAssert(theCurrentRead, @"Trying to end current read when there is no current read."); + + [theReadTimer invalidate]; + theReadTimer = nil; + + [theCurrentRead release]; + theCurrentRead = nil; +} + +- (void)doReadTimeout:(NSTimer *)timer +{ + #pragma unused(timer) + + NSTimeInterval timeoutExtension = 0.0; + + if([theDelegate respondsToSelector:@selector(onSocket:shouldTimeoutReadWithTag:elapsed:bytesDone:)]) + { + timeoutExtension = [theDelegate onSocket:self shouldTimeoutReadWithTag:theCurrentRead->tag + elapsed:theCurrentRead->timeout + bytesDone:theCurrentRead->bytesDone]; + } + + if(timeoutExtension > 0.0) + { + theCurrentRead->timeout += timeoutExtension; + + theReadTimer = [NSTimer timerWithTimeInterval:timeoutExtension + target:self + selector:@selector(doReadTimeout:) + userInfo:nil + repeats:NO]; + [self runLoopAddTimer:theReadTimer]; + } + else + { + // Do not call endCurrentRead here. + // We must allow the delegate access to any partial read in the unreadData method. + + [self closeWithError:[self getReadTimeoutError]]; + } +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Writing +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +- (void)writeData:(NSData *)data withTimeout:(NSTimeInterval)timeout tag:(long)tag +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + if (data == nil || [data length] == 0) return; + if (theFlags & kForbidReadsWrites) return; + + AsyncWritePacket *packet = [[AsyncWritePacket alloc] initWithData:data timeout:timeout tag:tag]; + + [theWriteQueue addObject:packet]; + [self scheduleDequeueWrite]; + + [packet release]; +} + +- (void)scheduleDequeueWrite +{ + if((theFlags & kDequeueWriteScheduled) == 0) + { + theFlags |= kDequeueWriteScheduled; + [self performSelector:@selector(maybeDequeueWrite) withObject:nil afterDelay:0 inModes:theRunLoopModes]; + } +} + +/** + * Conditionally starts a new write. + * + * IF there is not another write in process + * AND there is a write queued + * AND we have a write stream available + * + * This method also handles auto-disconnect post read/write completion. +**/ +- (void)maybeDequeueWrite +{ + // Unset the flag indicating a call to this method is scheduled + theFlags &= ~kDequeueWriteScheduled; + + // If we're not currently processing a write AND we have an available write stream + if((theCurrentWrite == nil) && (theWriteStream != NULL)) + { + if([theWriteQueue count] > 0) + { + // Dequeue the next object in the write queue + theCurrentWrite = [[theWriteQueue objectAtIndex:0] retain]; + [theWriteQueue removeObjectAtIndex:0]; + + if([theCurrentWrite isKindOfClass:[AsyncSpecialPacket class]]) + { + // Attempt to start TLS + theFlags |= kStartingWriteTLS; + + // This method won't do anything unless both kStartingReadTLS and kStartingWriteTLS are set + [self maybeStartTLS]; + } + else + { + // Start time-out timer + if(theCurrentWrite->timeout >= 0.0) + { + theWriteTimer = [NSTimer timerWithTimeInterval:theCurrentWrite->timeout + target:self + selector:@selector(doWriteTimeout:) + userInfo:nil + repeats:NO]; + [self runLoopAddTimer:theWriteTimer]; + } + + // Immediately write, if possible + [self doSendBytes]; + } + } + else if(theFlags & kDisconnectAfterWrites) + { + if(theFlags & kDisconnectAfterReads) + { + if(([theReadQueue count] == 0) && (theCurrentRead == nil)) + { + [self disconnect]; + } + } + else + { + [self disconnect]; + } + } + } +} + +/** + * Call this method in doSendBytes instead of CFWriteStreamCanAcceptBytes(). + * This method supports the kSocketCanAcceptBytes flag. +**/ +- (BOOL)canAcceptBytes +{ + if (theFlags & kSocketCanAcceptBytes) + { + return YES; + } + else + { + return CFWriteStreamCanAcceptBytes(theWriteStream); + } +} + +- (void)doSendBytes +{ + if ((theCurrentWrite == nil) || (theWriteStream == NULL)) + { + return; + } + + // Note: This method is not called if theCurrentWrite is an AsyncSpecialPacket (startTLS packet) + + NSUInteger totalBytesWritten = 0; + + BOOL done = NO; + BOOL error = NO; + + while (!done && !error && [self canAcceptBytes]) + { + // Figure out what to write + NSUInteger bytesRemaining = [theCurrentWrite->buffer length] - theCurrentWrite->bytesDone; + NSUInteger bytesToWrite = (bytesRemaining < WRITE_CHUNKSIZE) ? bytesRemaining : WRITE_CHUNKSIZE; + + UInt8 *writestart = (UInt8 *)([theCurrentWrite->buffer bytes] + theCurrentWrite->bytesDone); + + // Write + CFIndex result = CFWriteStreamWrite(theWriteStream, writestart, bytesToWrite); + + // Unset the "can accept bytes" flag + theFlags &= ~kSocketCanAcceptBytes; + + // Check results + if (result < 0) + { + error = YES; + } + else + { + CFIndex bytesWritten = result; + + // Update total amount read for the current write + theCurrentWrite->bytesDone += bytesWritten; + + // Update total amount written in this method invocation + totalBytesWritten += bytesWritten; + + // Is packet done? + done = ([theCurrentWrite->buffer length] == theCurrentWrite->bytesDone); + } + } + + if(done) + { + [self completeCurrentWrite]; + [self scheduleDequeueWrite]; + } + else if(error) + { + CFStreamError err = CFWriteStreamGetError(theWriteStream); + [self closeWithError:[self errorFromCFStreamError:err]]; + return; + } + else if (totalBytesWritten > 0) + { + // We're not done with the entire write, but we have written some bytes + if ([theDelegate respondsToSelector:@selector(onSocket:didWritePartialDataOfLength:tag:)]) + { + [theDelegate onSocket:self didWritePartialDataOfLength:totalBytesWritten tag:theCurrentWrite->tag]; + } + } +} + +// Ends current write and calls delegate. +- (void)completeCurrentWrite +{ + NSAssert(theCurrentWrite, @"Trying to complete current write when there is no current write."); + + if ([theDelegate respondsToSelector:@selector(onSocket:didWriteDataWithTag:)]) + { + [theDelegate onSocket:self didWriteDataWithTag:theCurrentWrite->tag]; + } + + if (theCurrentWrite != nil) [self endCurrentWrite]; // Caller may have disconnected. +} + +// Ends current write. +- (void)endCurrentWrite +{ + NSAssert(theCurrentWrite, @"Trying to complete current write when there is no current write."); + + [theWriteTimer invalidate]; + theWriteTimer = nil; + + [theCurrentWrite release]; + theCurrentWrite = nil; +} + +- (void)doWriteTimeout:(NSTimer *)timer +{ + #pragma unused(timer) + + NSTimeInterval timeoutExtension = 0.0; + + if([theDelegate respondsToSelector:@selector(onSocket:shouldTimeoutWriteWithTag:elapsed:bytesDone:)]) + { + timeoutExtension = [theDelegate onSocket:self shouldTimeoutWriteWithTag:theCurrentWrite->tag + elapsed:theCurrentWrite->timeout + bytesDone:theCurrentWrite->bytesDone]; + } + + if(timeoutExtension > 0.0) + { + theCurrentWrite->timeout += timeoutExtension; + + theWriteTimer = [NSTimer timerWithTimeInterval:timeoutExtension + target:self + selector:@selector(doWriteTimeout:) + userInfo:nil + repeats:NO]; + [self runLoopAddTimer:theWriteTimer]; + } + else + { + [self closeWithError:[self getWriteTimeoutError]]; + } +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Security +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +- (void)startTLS:(NSDictionary *)tlsSettings +{ +#if DEBUG_THREAD_SAFETY + [self checkForThreadSafety]; +#endif + + if(tlsSettings == nil) + { + // Passing nil/NULL to CFReadStreamSetProperty will appear to work the same as passing an empty dictionary, + // but causes problems if we later try to fetch the remote host's certificate. + // + // To be exact, it causes the following to return NULL instead of the normal result: + // CFReadStreamCopyProperty(readStream, kCFStreamPropertySSLPeerCertificates) + // + // So we use an empty dictionary instead, which works perfectly. + + tlsSettings = [NSDictionary dictionary]; + } + + AsyncSpecialPacket *packet = [[AsyncSpecialPacket alloc] initWithTLSSettings:tlsSettings]; + + [theReadQueue addObject:packet]; + [self scheduleDequeueRead]; + + [theWriteQueue addObject:packet]; + [self scheduleDequeueWrite]; + + [packet release]; +} + +- (void)maybeStartTLS +{ + // We can't start TLS until: + // - All queued reads prior to the user calling StartTLS are complete + // - All queued writes prior to the user calling StartTLS are complete + // + // We'll know these conditions are met when both kStartingReadTLS and kStartingWriteTLS are set + + if((theFlags & kStartingReadTLS) && (theFlags & kStartingWriteTLS)) + { + AsyncSpecialPacket *tlsPacket = (AsyncSpecialPacket *)theCurrentRead; + + BOOL didStartOnReadStream = CFReadStreamSetProperty(theReadStream, kCFStreamPropertySSLSettings, + (CFDictionaryRef)tlsPacket->tlsSettings); + BOOL didStartOnWriteStream = CFWriteStreamSetProperty(theWriteStream, kCFStreamPropertySSLSettings, + (CFDictionaryRef)tlsPacket->tlsSettings); + + if(!didStartOnReadStream || !didStartOnWriteStream) + { + [self closeWithError:[self getSocketError]]; + } + } +} + +- (void)onTLSHandshakeSuccessful +{ + if((theFlags & kStartingReadTLS) && (theFlags & kStartingWriteTLS)) + { + theFlags &= ~kStartingReadTLS; + theFlags &= ~kStartingWriteTLS; + + if([theDelegate respondsToSelector:@selector(onSocketDidSecure:)]) + { + [theDelegate onSocketDidSecure:self]; + } + + [self endCurrentRead]; + [self endCurrentWrite]; + + [self scheduleDequeueRead]; + [self scheduleDequeueWrite]; + } +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark CF Callbacks +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +- (void)doCFSocketCallback:(CFSocketCallBackType)type + forSocket:(CFSocketRef)sock + withAddress:(NSData *)address + withData:(const void *)pData +{ + #pragma unused(address) + + NSParameterAssert ((sock == theSocket4) || (sock == theSocket6)); + + switch (type) + { + case kCFSocketConnectCallBack: + // The data argument is either NULL or a pointer to an SInt32 error code, if the connect failed. + if(pData) + [self doSocketOpen:sock withCFSocketError:kCFSocketError]; + else + [self doSocketOpen:sock withCFSocketError:kCFSocketSuccess]; + break; + case kCFSocketAcceptCallBack: + [self doAcceptFromSocket:sock withNewNativeSocket:*((CFSocketNativeHandle *)pData)]; + break; + default: + NSLog(@"AsyncSocket %p received unexpected CFSocketCallBackType %i", self, (int)type); + break; + } +} + +- (void)doCFReadStreamCallback:(CFStreamEventType)type forStream:(CFReadStreamRef)stream +{ + #pragma unused(stream) + + NSParameterAssert(theReadStream != NULL); + + CFStreamError err; + switch (type) + { + case kCFStreamEventOpenCompleted: + theFlags |= kDidCompleteOpenForRead; + [self doStreamOpen]; + break; + case kCFStreamEventHasBytesAvailable: + if(theFlags & kStartingReadTLS) { + [self onTLSHandshakeSuccessful]; + } + else { + theFlags |= kSocketHasBytesAvailable; + [self doBytesAvailable]; + } + break; + case kCFStreamEventErrorOccurred: + case kCFStreamEventEndEncountered: + err = CFReadStreamGetError (theReadStream); + [self closeWithError: [self errorFromCFStreamError:err]]; + break; + default: + NSLog(@"AsyncSocket %p received unexpected CFReadStream callback, CFStreamEventType %i", self, (int)type); + } +} + +- (void)doCFWriteStreamCallback:(CFStreamEventType)type forStream:(CFWriteStreamRef)stream +{ + #pragma unused(stream) + + NSParameterAssert(theWriteStream != NULL); + + CFStreamError err; + switch (type) + { + case kCFStreamEventOpenCompleted: + theFlags |= kDidCompleteOpenForWrite; + [self doStreamOpen]; + break; + case kCFStreamEventCanAcceptBytes: + if(theFlags & kStartingWriteTLS) { + [self onTLSHandshakeSuccessful]; + } + else { + theFlags |= kSocketCanAcceptBytes; + [self doSendBytes]; + } + break; + case kCFStreamEventErrorOccurred: + case kCFStreamEventEndEncountered: + err = CFWriteStreamGetError (theWriteStream); + [self closeWithError: [self errorFromCFStreamError:err]]; + break; + default: + NSLog(@"AsyncSocket %p received unexpected CFWriteStream callback, CFStreamEventType %i", self, (int)type); + } +} + +/** + * This is the callback we setup for CFSocket. + * This method does nothing but forward the call to it's Objective-C counterpart +**/ +static void MyCFSocketCallback (CFSocketRef sref, CFSocketCallBackType type, CFDataRef address, const void *pData, void *pInfo) +{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + + AsyncSocket *theSocket = [[(AsyncSocket *)pInfo retain] autorelease]; + [theSocket doCFSocketCallback:type forSocket:sref withAddress:(NSData *)address withData:pData]; + + [pool release]; +} + +/** + * This is the callback we setup for CFReadStream. + * This method does nothing but forward the call to it's Objective-C counterpart +**/ +static void MyCFReadStreamCallback (CFReadStreamRef stream, CFStreamEventType type, void *pInfo) +{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + + AsyncSocket *theSocket = [[(AsyncSocket *)pInfo retain] autorelease]; + [theSocket doCFReadStreamCallback:type forStream:stream]; + + [pool release]; +} + +/** + * This is the callback we setup for CFWriteStream. + * This method does nothing but forward the call to it's Objective-C counterpart +**/ +static void MyCFWriteStreamCallback (CFWriteStreamRef stream, CFStreamEventType type, void *pInfo) +{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + + AsyncSocket *theSocket = [[(AsyncSocket *)pInfo retain] autorelease]; + [theSocket doCFWriteStreamCallback:type forStream:stream]; + + [pool release]; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +#pragma mark Class Methods +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +// Return line separators. ++ (NSData *)CRLFData +{ + return [NSData dataWithBytes:"\x0D\x0A" length:2]; +} + ++ (NSData *)CRData +{ + return [NSData dataWithBytes:"\x0D" length:1]; +} + ++ (NSData *)LFData +{ + return [NSData dataWithBytes:"\x0A" length:1]; +} + ++ (NSData *)ZeroData +{ + return [NSData dataWithBytes:"" length:1]; +} + +@end diff --git a/games/Pong/Classes/GGSDelegate.h b/games/Pong/Classes/GGSDelegate.h new file mode 100644 index 0000000..66fcb49 --- /dev/null +++ b/games/Pong/Classes/GGSDelegate.h @@ -0,0 +1,20 @@ +// +// GGSDelegate.h +// Pong +// +// Created by Jeena on 27.02.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import +#import "GGSNetwork.h" + +@class GGSNetwork; + +@protocol GGSDelegate + +- (void)GGSNetwork:(GGSNetwork *)ggsNetwork ready:(BOOL)ready; +- (void)GGSNetwork:(GGSNetwork *)ggsNetwork gotCommand:(NSString *)command withArgs:(NSString *)args; +- (void)GGSNetwork:(GGSNetwork *)ggsNetwork defined:(BOOL)defined; + +@end diff --git a/games/Pong/Classes/GGSNetwork.h b/games/Pong/Classes/GGSNetwork.h new file mode 100644 index 0000000..ccd066d --- /dev/null +++ b/games/Pong/Classes/GGSNetwork.h @@ -0,0 +1,31 @@ +// +// Network.h +// Pong +// +// Created by Jeena on 27.02.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import +#import "AsyncSocket.h" +#import "GGSDelegate.h" + +@protocol GGSDelegate; + +@interface GGSNetwork : NSObject { + AsyncSocket *asyncSocket; + id delegate; + NSString *gameToken; + NSString *currentCommand; +} + +@property (nonatomic, retain) AsyncSocket *asyncSocket; +@property (nonatomic, retain) id delegate; +@property (nonatomic, retain) NSString *gameToken; +@property (nonatomic, retain) NSString *currentCommand; + +- (id)initWithDelegate:(id)delegate; +- (void)define:(NSString *)sourceCode; +- (void)sendCommand:(NSString *)command withArgs:(NSString *)args; + +@end diff --git a/games/Pong/Classes/GGSNetwork.m b/games/Pong/Classes/GGSNetwork.m new file mode 100644 index 0000000..24488af --- /dev/null +++ b/games/Pong/Classes/GGSNetwork.m @@ -0,0 +1,117 @@ +// +// Network.m +// Pong +// +// Created by Jeena on 27.02.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import "GGSNetwork.h" + + +@implementation GGSNetwork + +#define GGS_HOST @"jeena.net"; +#define GGS_PORT 9000 +#define NO_TIMEOUT -1 + +#define CONNECT_RESPONSE_TAG 9 +#define HELLO_REQUEST_TAG 10 +#define HELLO_RESPONSE_TAG 11 +#define DEFINE_REQUEST_TAG 12 +#define DEFINE_RESPONSE_TAG 13 +#define COMMAND_REQUEST_TAG 14 +#define COMMAND_RESPONSE_TAG 15 +#define ARGS_RESPONSE_TAG 16 + +@synthesize asyncSocket, delegate, gameToken, currentCommand; + +- (id)initWithDelegate:(id)_delegate { + if (self = [super init]) { + delegate = _delegate; + asyncSocket = [[AsyncSocket alloc] initWithDelegate:self]; + + [asyncSocket connectToHost:@"jeena.net" onPort:9000 error:nil]; + [asyncSocket readDataToLength:36 withTimeout:NO_TIMEOUT tag:CONNECT_RESPONSE_TAG]; + } + + return self; +} + +- (void)define:(NSString *)sourceCode { + NSString *body = [NSString stringWithFormat:@"Token: %@\nServer-Command: define\nContent-Length: %i\n\n%@", + self.gameToken, + [sourceCode length], + sourceCode]; + + [asyncSocket writeData:[body dataUsingEncoding:NSUTF8StringEncoding] withTimeout:NO_TIMEOUT tag:DEFINE_REQUEST_TAG]; + [asyncSocket readDataToData:[@"\n\n" dataUsingEncoding:NSUTF8StringEncoding] withTimeout:NO_TIMEOUT tag:DEFINE_RESPONSE_TAG]; +} + +- (void)sendCommand:(NSString *)command withArgs:(NSString *)args { + NSString *body = [NSString stringWithFormat:@"Token: %@\nGame-Command: %@\nContent-Length: %i\n\n%@", + self.gameToken, + command, + [args length]+1, + args]; + + [asyncSocket writeData:[body dataUsingEncoding:NSUTF8StringEncoding] withTimeout:NO_TIMEOUT tag:COMMAND_REQUEST_TAG]; + // [asyncSocket readDataToData:[@"\n\n" dataUsingEncoding:NSUTF8StringEncoding] withTimeout:NO_TIMEOUT tag:COMMAND_RESPONSE_TAG]; + [asyncSocket readDataToData:[@"\n" dataUsingEncoding:NSUTF8StringEncoding] withTimeout:NO_TIMEOUT tag:ARGS_RESPONSE_TAG]; // FIXME change to \n\n abd COMMAND_RESPONSE_TAG +} + +- (void)onSocket:(AsyncSocket *)sock didConnectToHost:(NSString *)host port:(UInt16)port { + +} + +- (void)onSocket:(AsyncSocket *)sender didReadData:(NSData *)data withTag:(long)tag { + + if (tag == CONNECT_RESPONSE_TAG) { + + NSString *response = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; + self.gameToken = response; + [response release]; + + [delegate GGSNetwork:self ready:YES]; + + } else if (tag == DEFINE_RESPONSE_TAG) { + + [self.delegate GGSNetwork:self defined:YES]; + + } else if (tag == COMMAND_RESPONSE_TAG) { + + NSString *response = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; + NSArray *headers = [response componentsSeparatedByString:@"\n"]; + [response release]; + + for (NSInteger i = 0; i < [headers count]; i++) { + NSString *header = [headers objectAtIndex:i]; + + if ([header rangeOfString:@"Client-Command: "].location == 0) { + self.currentCommand = [header substringFromIndex:16]; + } else if ([header rangeOfString:@"Size: "].location == 0) { + [asyncSocket readDataToLength:[[header substringFromIndex:6] intValue] withTimeout:NO_TIMEOUT tag:ARGS_RESPONSE_TAG]; + } + } + + } else if (tag == ARGS_RESPONSE_TAG) { + + NSString *response = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; + [delegate GGSNetwork:self gotCommand:self.currentCommand withArgs:response]; + [response release]; + //self.currentCommand = nil; + + [asyncSocket readDataToData:[@"\n" dataUsingEncoding:NSUTF8StringEncoding] withTimeout:NO_TIMEOUT tag:ARGS_RESPONSE_TAG]; + + } +} + +- (void)dealloc { + [asyncSocket release]; + [gameToken release]; + [currentCommand release]; + + [super dealloc]; +} + +@end diff --git a/games/Pong/Classes/PongAppDelegate.h b/games/Pong/Classes/PongAppDelegate.h new file mode 100644 index 0000000..69d453a --- /dev/null +++ b/games/Pong/Classes/PongAppDelegate.h @@ -0,0 +1,22 @@ +// +// PongAppDelegate.h +// Pong +// +// Created by Jeena on 26.01.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import + +@class PongViewController; + +@interface PongAppDelegate : NSObject { + UIWindow *window; + PongViewController *viewController; +} + +@property (nonatomic, retain) IBOutlet UIWindow *window; +@property (nonatomic, retain) IBOutlet PongViewController *viewController; + +@end + diff --git a/games/Pong/Classes/PongAppDelegate.m b/games/Pong/Classes/PongAppDelegate.m new file mode 100644 index 0000000..968396f --- /dev/null +++ b/games/Pong/Classes/PongAppDelegate.m @@ -0,0 +1,88 @@ +// +// PongAppDelegate.m +// Pong +// +// Created by Jeena on 26.01.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import "PongAppDelegate.h" +#import "PongViewController.h" + +@implementation PongAppDelegate + +@synthesize window; +@synthesize viewController; + + +#pragma mark - +#pragma mark Application lifecycle + +- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { + + // Override point for customization after application launch. + + // Add the view controller's view to the window and display. + [self.window addSubview:viewController.view]; + [self.window makeKeyAndVisible]; + + return YES; +} + + +- (void)applicationWillResignActive:(UIApplication *)application { + /* + Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. + Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. + */ +} + + +- (void)applicationDidEnterBackground:(UIApplication *)application { + /* + Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. + If your application supports background execution, called instead of applicationWillTerminate: when the user quits. + */ +} + + +- (void)applicationWillEnterForeground:(UIApplication *)application { + /* + Called as part of transition from the background to the inactive state: here you can undo many of the changes made on entering the background. + */ +} + + +- (void)applicationDidBecomeActive:(UIApplication *)application { + /* + Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. + */ +} + + +- (void)applicationWillTerminate:(UIApplication *)application { + /* + Called when the application is about to terminate. + See also applicationDidEnterBackground:. + */ +} + + +#pragma mark - +#pragma mark Memory management + +- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application { + /* + Free up as much memory as possible by purging cached data objects that can be recreated (or reloaded from disk) later. + */ +} + + +- (void)dealloc { + [viewController release]; + [window release]; + [super dealloc]; +} + + +@end diff --git a/games/Pong/Classes/PongViewController.h b/games/Pong/Classes/PongViewController.h new file mode 100644 index 0000000..c62572d --- /dev/null +++ b/games/Pong/Classes/PongViewController.h @@ -0,0 +1,50 @@ +// +// PongViewController.h +// Pong +// +// Created by Jeena on 26.01.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import +#import "GGSDelegate.h" +#import "GGSNetwork.h" + +enum GameType { + kGameTypeSinglePlayer = 0, + kGameTypeMultiPlayer, + kGameTypeNetworkMultiPlayer +}; + +@interface PongViewController : UIViewController { + IBOutlet UIView *ballView; + IBOutlet UIView *player1View; + IBOutlet UIView *player2View; + IBOutlet UILabel *tapToBegin; + CGPoint ballVelocity; + BOOL gamePaused; + + IBOutlet UILabel *pointsP1; + IBOutlet UILabel *pointsP2; + + GGSNetwork *ggsNetwork; +} + +@property (nonatomic, retain) IBOutlet UIView *ballView; +@property (nonatomic, retain) IBOutlet UIView *player1View; +@property (nonatomic, retain) IBOutlet UIView *player2View; +@property (nonatomic, retain) IBOutlet UIView *tapToBegin; + +@property (nonatomic, retain) IBOutlet UILabel *pointsP1; +@property (nonatomic, retain) IBOutlet UILabel *pointsP2; + +@property (nonatomic, retain) GGSNetwork *ggsNetwork; + +- (void)startPositions; +- (void)zeroPoints; + +- (void)moveBall; +- (void)positionPlayer:(CGPoint)point; + +@end + diff --git a/games/Pong/Classes/PongViewController.m b/games/Pong/Classes/PongViewController.m new file mode 100644 index 0000000..b9166f4 --- /dev/null +++ b/games/Pong/Classes/PongViewController.m @@ -0,0 +1,241 @@ +// +// PongViewController.m +// Pong +// +// Created by Jeena on 26.01.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import "PongViewController.h" +#import "GGSNetwork.h" + +@implementation PongViewController + +#define PLAYER_SPEED 20 +#define BALL_SPEED_X 7 +#define BALL_SPEED_Y 5 +#define INTERVAL 0.05 +#define WIDTH 480 +#define HEIGHT 320 + +@synthesize ballView, player1View, player2View, tapToBegin, pointsP1, pointsP2; + +/* +// The designated initializer. Override to perform setup that is required before the view is loaded. +- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { + self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; + if (self) { + // Custom initialization + } + return self; +} +*/ + +/* +// Implement loadView to create a view hierarchy programmatically, without using a nib. +- (void)loadView { + [super loadView]; +} +*/ + +#pragma mark - +#pragma mark GGSNetwork Delegate + +- (void)GGSNetwork:(GGSNetwork *)ggsNetwork ready:(BOOL)ready { + [ggsNetwork sendCommand:@"nick" withArgs:@"jeena"]; + [ggsNetwork sendCommand:@"chat" withArgs:@"Hi everybody I'm pong."]; +} + +- (void)GGSNetwork:(GGSNetwork *)ggsNetwork defined:(BOOL)defined { + if (defined) { + NSLog(@"Defined"); + } else { + NSLog(@"Not defined"); + } + +} + +- (void)GGSNetwork:(GGSNetwork *)ggsNetwork gotCommand:(NSString *)command withArgs:(NSString *)args { + NSLog(@"Command: %@; Args: %@", command, args); +} + + +#pragma mark - +#pragma mark View + +// Implement viewDidLoad to do additional setup after loading the view, typically from a nib. +- (void)viewDidLoad { + [super viewDidLoad]; + + ggsNetwork = [[GGSNetwork alloc] initWithDelegate:self]; + + gamePaused = YES; + [self startPositions]; + [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(moveBall) userInfo:nil repeats:YES]; +} + +-(void)viewDidAppear:(BOOL)animated { + [super viewDidAppear:animated]; + [self becomeFirstResponder]; +} + +- (void)viewWillDisappear:(BOOL)animated { + [self resignFirstResponder]; + [super viewWillDisappear:animated]; +} + + +// Override to allow orientations other than the default portrait orientation. +- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { + // Return YES for supported orientations + return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft || interfaceOrientation == UIInterfaceOrientationLandscapeRight); +} + + +- (void)didReceiveMemoryWarning { + // Releases the view if it doesn't have a superview. + [super didReceiveMemoryWarning]; + + // Release any cached data, images, etc that aren't in use. +} + +- (void)viewDidUnload { + // Release any retained subviews of the main view. + // e.g. self.myOutlet = nil; +} + + +# pragma mark - +# pragma mark Ball + +- (void)moveBall { + if (!gamePaused) { + + [UIView beginAnimations:NULL context:NULL]; + ballView.center = CGPointMake(ballView.center.x + ballVelocity.x, ballView.center.y + ballVelocity.y ); + [UIView commitAnimations]; + + if (ballView.center.y > HEIGHT || ballView.center.y < 0) { + ballVelocity.y = -ballVelocity.y; + } + + if (CGRectIntersectsRect(ballView.frame, player1View.frame) || CGRectIntersectsRect(ballView.frame, player2View.frame)) { + ballVelocity.x = - (ballVelocity.x + 1); + if (arc4random() % 2) { + ballVelocity.y = - (ballVelocity.y + 1); + } + } + + if (ballView.center.x > WIDTH || ballView.center.x < 0) { + + if (ballView.center.x < 0) { + pointsP1.text = [NSString stringWithFormat:@"%i", [pointsP1.text intValue] + 1]; + } else { + pointsP2.text = [NSString stringWithFormat:@"%i", [pointsP2.text intValue] + 1]; + } + + gamePaused = YES; + [self startPositions]; + } + + } else { + tapToBegin.hidden = NO; + } + +} + +# pragma mark - +# pragma mark Positioning + +- (void)startPositions { + int s1 = - (arc4random() % 5); + int s2 = - (arc4random() % 5); + int d1 = arc4random() % 2 ? -1 : 1; + int d2 = arc4random() % 2 ? -1 : 1; + ballVelocity = CGPointMake((BALL_SPEED_X + s1) * d1 , (BALL_SPEED_Y + s2) * d2); + ballView.center = CGPointMake(WIDTH/2, HEIGHT/2); + player1View.center = CGPointMake(30, HEIGHT/2); + player2View.center = CGPointMake(WIDTH-30, HEIGHT/2); +} + +- (void)positionPlayer:(CGPoint)point { + UIView *p; + NSInteger direction = 0; + + if (point.x < WIDTH/2) { + p = player1View; + } else { + p = player2View; + } + + if (point.y > HEIGHT/2 && p.frame.origin.y + p.frame.size.height < HEIGHT) { + direction = 1; + } else if (point.y < HEIGHT/2 && p.frame.origin.y > 0) { + direction = -1; + } else { + direction = 0; + } + + + CGRect f = p.frame; + f.origin.y = f.origin.y + (PLAYER_SPEED * direction); + [UIView beginAnimations:NULL context:NULL]; + p.frame = f; + [UIView commitAnimations]; +} + +#pragma mark - +#pragma mark Input + +- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { + if (gamePaused) { + tapToBegin.hidden = YES; + gamePaused = NO; + } else { + switch ([touches count]) { + case 1: + [self positionPlayer:[[[touches allObjects] objectAtIndex:0] locationInView:self.view]]; + break; + default: + [self positionPlayer:[[[touches allObjects] objectAtIndex:0] locationInView:self.view]]; + [self positionPlayer:[[[touches allObjects] objectAtIndex:1] locationInView:self.view]]; + break; + } + } +} + + +# pragma mark - +# pragma mark Reset + +-(BOOL)canBecomeFirstResponder { + return YES; +} + +- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event { + if (event.type == UIEventSubtypeMotionShake) { + [self zeroPoints]; + } +} + +- (void)zeroPoints { + pointsP1.text = @"0"; + pointsP2.text = @"0"; +} + +# pragma mark - +# pragma mark Dealloc + +- (void)dealloc { + [ballView release]; + [player1View release]; + [player2View release]; + [tapToBegin release]; + [pointsP1 release]; + [pointsP2 release]; + [ggsNetwork release]; + + [super dealloc]; +} + +@end diff --git a/games/Pong/MainWindow.xib b/games/Pong/MainWindow.xib new file mode 100644 index 0000000..141dd7d --- /dev/null +++ b/games/Pong/MainWindow.xib @@ -0,0 +1,444 @@ + + + + 1024 + 10D571 + 786 + 1038.29 + 460.00 + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + 112 + + + YES + + + + YES + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + YES + + YES + + + YES + + + + YES + + IBFilesOwner + IBCocoaTouchFramework + + + IBFirstResponder + IBCocoaTouchFramework + + + IBCocoaTouchFramework + + + PongViewController + + + 1 + + IBCocoaTouchFramework + NO + + + + 292 + {320, 480} + + 1 + MSAxIDEAA + + NO + NO + + IBCocoaTouchFramework + YES + + + + + YES + + + delegate + + + + 4 + + + + viewController + + + + 11 + + + + window + + + + 14 + + + + + YES + + 0 + + + + + + -1 + + + File's Owner + + + 3 + + + Pong App Delegate + + + -2 + + + + + 10 + + + + + 12 + + + + + + + YES + + YES + -1.CustomClassName + -2.CustomClassName + 10.CustomClassName + 10.IBEditorWindowLastContentRect + 10.IBPluginDependency + 12.IBEditorWindowLastContentRect + 12.IBPluginDependency + 3.CustomClassName + 3.IBPluginDependency + + + YES + UIApplication + UIResponder + PongViewController + {{234, 376}, {320, 480}} + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + {{525, 346}, {320, 480}} + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + PongAppDelegate + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 15 + + + + YES + + UIWindow + UIView + + IBUserSource + + + + + PongAppDelegate + NSObject + + YES + + YES + viewController + window + + + YES + PongViewController + UIWindow + + + + YES + + YES + viewController + window + + + YES + + viewController + PongViewController + + + window + UIWindow + + + + + IBProjectSource + Classes/PongAppDelegate.h + + + + PongAppDelegate + NSObject + + IBUserSource + + + + + PongViewController + UIViewController + + IBProjectSource + Classes/PongViewController.h + + + + + YES + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + UIKit.framework/Headers/UIAccessibility.h + + + + NSObject + + IBFrameworkSource + UIKit.framework/Headers/UINibLoading.h + + + + NSObject + + IBFrameworkSource + UIKit.framework/Headers/UIResponder.h + + + + UIApplication + UIResponder + + IBFrameworkSource + UIKit.framework/Headers/UIApplication.h + + + + UIResponder + NSObject + + + + UISearchBar + UIView + + IBFrameworkSource + UIKit.framework/Headers/UISearchBar.h + + + + UISearchDisplayController + NSObject + + IBFrameworkSource + UIKit.framework/Headers/UISearchDisplayController.h + + + + UIView + + IBFrameworkSource + UIKit.framework/Headers/UITextField.h + + + + UIView + UIResponder + + IBFrameworkSource + UIKit.framework/Headers/UIView.h + + + + UIViewController + + IBFrameworkSource + UIKit.framework/Headers/UINavigationController.h + + + + UIViewController + + IBFrameworkSource + UIKit.framework/Headers/UIPopoverController.h + + + + UIViewController + + IBFrameworkSource + UIKit.framework/Headers/UISplitViewController.h + + + + UIViewController + + IBFrameworkSource + UIKit.framework/Headers/UITabBarController.h + + + + UIViewController + UIResponder + + IBFrameworkSource + UIKit.framework/Headers/UIViewController.h + + + + UIWindow + UIView + + IBFrameworkSource + UIKit.framework/Headers/UIWindow.h + + + + + 0 + IBCocoaTouchFramework + + com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS + + + + com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3 + + + YES + Pong.xcodeproj + 3 + 112 + + diff --git a/games/Pong/Pong-Info.plist b/games/Pong/Pong-Info.plist new file mode 100644 index 0000000..170ef1c --- /dev/null +++ b/games/Pong/Pong-Info.plist @@ -0,0 +1,37 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleDisplayName + ${PRODUCT_NAME} + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + net.jeena.apps.pong + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + LSRequiresIPhoneOS + + NSMainNibFile + MainWindow + UIStatusBarHidden + + UISupportedInterfaceOrientations + + UIInterfaceOrientationLandscapeRight + UIInterfaceOrientationLandscapeLeft + + + diff --git a/games/Pong/Pong.xcodeproj/jeena.mode1v3 b/games/Pong/Pong.xcodeproj/jeena.mode1v3 new file mode 100644 index 0000000..2254fb4 --- /dev/null +++ b/games/Pong/Pong.xcodeproj/jeena.mode1v3 @@ -0,0 +1,1410 @@ + + + + + ActivePerspectiveName + Project + AllowedModules + + + BundleLoadPath + + MaxInstances + n + Module + PBXSmartGroupTreeModule + Name + Groups and Files Outline View + + + BundleLoadPath + + MaxInstances + n + Module + PBXNavigatorGroup + Name + Editor + + + BundleLoadPath + + MaxInstances + n + Module + XCTaskListModule + Name + Task List + + + BundleLoadPath + + MaxInstances + n + Module + XCDetailModule + Name + File and Smart Group Detail Viewer + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXBuildResultsModule + Name + Detailed Build Results Viewer + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXProjectFindModule + Name + Project Batch Find Tool + + + BundleLoadPath + + MaxInstances + n + Module + XCProjectFormatConflictsModule + Name + Project Format Conflicts List + + + BundleLoadPath + + MaxInstances + n + Module + PBXBookmarksModule + Name + Bookmarks Tool + + + BundleLoadPath + + MaxInstances + n + Module + PBXClassBrowserModule + Name + Class Browser + + + BundleLoadPath + + MaxInstances + n + Module + PBXCVSModule + Name + Source Code Control Tool + + + BundleLoadPath + + MaxInstances + n + Module + PBXDebugBreakpointsModule + Name + Debug Breakpoints Tool + + + BundleLoadPath + + MaxInstances + n + Module + XCDockableInspector + Name + Inspector + + + BundleLoadPath + + MaxInstances + n + Module + PBXOpenQuicklyModule + Name + Open Quickly Tool + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXDebugSessionModule + Name + Debugger + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXDebugCLIModule + Name + Debug Console + + + BundleLoadPath + + MaxInstances + n + Module + XCSnapshotModule + Name + Snapshots Tool + + + BundlePath + /Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources + Description + DefaultDescriptionKey + DockingSystemVisible + + Extension + mode1v3 + FavBarConfig + + PBXProjectModuleGUID + 1FA056A312F0B540003F1373 + XCBarModuleItemNames + + XCBarModuleItems + + + FirstTimeWindowDisplayed + + Identifier + com.apple.perspectives.project.mode1v3 + MajorVersion + 33 + MinorVersion + 0 + Name + Default + Notifications + + OpenEditors + + PerspectiveWidths + + -1 + -1 + + Perspectives + + + ChosenToolbarItems + + active-combo-popup + action + NSToolbarFlexibleSpaceItem + build-and-go + com.apple.ide.PBXToolbarStopButton + get-info + NSToolbarFlexibleSpaceItem + com.apple.pbx.toolbar.searchfield + + ControllerClassBaseName + + IconName + WindowOfProjectWithEditor + Identifier + perspective.project + IsVertical + + Layout + + + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C37FBAC04509CD000000102 + 1C37FAAC04509CD000000102 + 1C37FABC05509CD000000102 + 1C37FABC05539CD112110102 + E2644B35053B69B200211256 + 1C37FABC04509CD000100104 + 1CC0EA4004350EF90044410B + 1CC0EA4004350EF90041110B + + PBXProjectModuleGUID + 1CE0B1FE06471DED0097A5F4 + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + yes + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 186 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 29B97314FDCFA39411CA2CEA + 080E96DDFE201D6D7F000001 + 29B97317FDCFA39411CA2CEA + 29B97323FDCFA39411CA2CEA + 1C37FABC05509CD000000102 + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 11 + 1 + 0 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 0}, {186, 1238}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + + XCSharingToken + com.apple.Xcode.GFSharingToken + + GeometryConfiguration + + Frame + {{0, 0}, {203, 1256}} + GroupTreeTableConfiguration + + MainColumn + 186 + + RubberWindowFrame + 1041 121 1267 1297 0 0 2560 1418 + + Module + PBXSmartGroupTreeModule + Proportion + 203pt + + + Dock + + + BecomeActive + + ContentConfiguration + + PBXProjectModuleGUID + 1CE0B20306471E060097A5F4 + PBXProjectModuleLabel + GGSNetwork.m + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1CE0B20406471E060097A5F4 + PBXProjectModuleLabel + GGSNetwork.m + _historyCapacity + 0 + bookmark + 1FBEC151131B2C52006D5497 + history + + 1FBEBF151319F5C1006D5497 + 1FBEC001131AA71C006D5497 + 1FBEC002131AA71C006D5497 + 1FBEC05C131B085D006D5497 + 1FBEC05D131B085D006D5497 + 1FBEC124131B2559006D5497 + 1FBEC12D131B2581006D5497 + 1FBEC12E131B2581006D5497 + 1FBEC141131B2757006D5497 + 1FBEC13C131B26A1006D5497 + + + SplitCount + 1 + + StatusBarVisibility + + + GeometryConfiguration + + Frame + {{0, 0}, {1059, 1064}} + RubberWindowFrame + 1041 121 1267 1297 0 0 2560 1418 + + Module + PBXNavigatorGroup + Proportion + 1064pt + + + ContentConfiguration + + PBXProjectModuleGUID + 1CE0B20506471E060097A5F4 + PBXProjectModuleLabel + Detail + + GeometryConfiguration + + Frame + {{0, 1069}, {1059, 187}} + RubberWindowFrame + 1041 121 1267 1297 0 0 2560 1418 + + Module + XCDetailModule + Proportion + 187pt + + + Proportion + 1059pt + + + Name + Project + ServiceClasses + + XCModuleDock + PBXSmartGroupTreeModule + XCModuleDock + PBXNavigatorGroup + XCDetailModule + + TableOfContents + + 1FBEBE4E1319CC38006D5497 + 1CE0B1FE06471DED0097A5F4 + 1FBEBE4F1319CC38006D5497 + 1CE0B20306471E060097A5F4 + 1CE0B20506471E060097A5F4 + + ToolbarConfigUserDefaultsMinorVersion + 2 + ToolbarConfiguration + xcode.toolbar.config.defaultV3 + + + ControllerClassBaseName + + IconName + WindowOfProject + Identifier + perspective.morph + IsVertical + 0 + Layout + + + BecomeActive + 1 + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C37FBAC04509CD000000102 + 1C37FAAC04509CD000000102 + 1C08E77C0454961000C914BD + 1C37FABC05509CD000000102 + 1C37FABC05539CD112110102 + E2644B35053B69B200211256 + 1C37FABC04509CD000100104 + 1CC0EA4004350EF90044410B + 1CC0EA4004350EF90041110B + + PBXProjectModuleGUID + 11E0B1FE06471DED0097A5F4 + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + yes + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 186 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 29B97314FDCFA39411CA2CEA + 1C37FABC05509CD000000102 + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 0 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 0}, {186, 337}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + 1 + XCSharingToken + com.apple.Xcode.GFSharingToken + + GeometryConfiguration + + Frame + {{0, 0}, {203, 355}} + GroupTreeTableConfiguration + + MainColumn + 186 + + RubberWindowFrame + 373 269 690 397 0 0 1440 878 + + Module + PBXSmartGroupTreeModule + Proportion + 100% + + + Name + Morph + PreferredWidth + 300 + ServiceClasses + + XCModuleDock + PBXSmartGroupTreeModule + + TableOfContents + + 11E0B1FE06471DED0097A5F4 + + ToolbarConfiguration + xcode.toolbar.config.default.shortV3 + + + PerspectivesBarVisible + + ShelfIsVisible + + SourceDescription + file at '/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources/XCPerspectivesSpecificationMode1.xcperspec' + StatusbarIsVisible + + TimeStamp + 0.0 + ToolbarConfigUserDefaultsMinorVersion + 2 + ToolbarDisplayMode + 1 + ToolbarIsVisible + + ToolbarSizeMode + 1 + Type + Perspectives + UpdateMessage + The Default Workspace in this version of Xcode now includes support to hide and show the detail view (what has been referred to as the "Metro-Morph" feature). You must discard your current Default Workspace settings and update to the latest Default Workspace in order to gain this feature. Do you wish to update to the latest Workspace defaults for project '%@'? + WindowJustification + 5 + WindowOrderList + + 1FBEBE9F1319D79C006D5497 + 1FBEBEA01319D79C006D5497 + 1FA056A412F0B540003F1373 + 1CD10A99069EF8BA00B06720 + 1C78EAAD065D492600B07095 + /Users/jeena/Projects/Pong/Pong.xcodeproj + + WindowString + 1041 121 1267 1297 0 0 2560 1418 + WindowToolsV3 + + + FirstTimeWindowDisplayed + + Identifier + windowTool.build + IsVertical + + Layout + + + Dock + + + BecomeActive + + ContentConfiguration + + PBXProjectModuleGUID + 1CD0528F0623707200166675 + PBXProjectModuleLabel + PongViewController.m + StatusBarVisibility + + + GeometryConfiguration + + Frame + {{0, 0}, {500, 218}} + RubberWindowFrame + 907 680 500 500 0 0 2560 1418 + + Module + PBXNavigatorGroup + Proportion + 218pt + + + ContentConfiguration + + PBXProjectModuleGUID + XCMainBuildResultsModuleGUID + PBXProjectModuleLabel + Build Results + XCBuildResultsTrigger_Collapse + 1021 + XCBuildResultsTrigger_Open + 1011 + + GeometryConfiguration + + Frame + {{0, 223}, {500, 236}} + RubberWindowFrame + 907 680 500 500 0 0 2560 1418 + + Module + PBXBuildResultsModule + Proportion + 236pt + + + Proportion + 459pt + + + Name + Build Results + ServiceClasses + + PBXBuildResultsModule + + StatusbarIsVisible + + TableOfContents + + 1FA056A412F0B540003F1373 + 1FBEBE501319CC38006D5497 + 1CD0528F0623707200166675 + XCMainBuildResultsModuleGUID + + ToolbarConfiguration + xcode.toolbar.config.buildV3 + WindowContentMinSize + 486 300 + WindowString + 907 680 500 500 0 0 2560 1418 + WindowToolGUID + 1FA056A412F0B540003F1373 + WindowToolIsVisible + + + + FirstTimeWindowDisplayed + + Identifier + windowTool.debugger + IsVertical + + Layout + + + Dock + + + ContentConfiguration + + Debugger + + HorizontalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {316, 194}} + {{316, 0}, {378, 194}} + + + VerticalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {694, 194}} + {{0, 194}, {694, 187}} + + + + LauncherConfigVersion + 8 + PBXProjectModuleGUID + 1C162984064C10D400B95A72 + PBXProjectModuleLabel + Debug - GLUTExamples (Underwater) + + GeometryConfiguration + + DebugConsoleVisible + None + DebugConsoleWindowFrame + {{200, 200}, {500, 300}} + DebugSTDIOWindowFrame + {{200, 200}, {500, 300}} + Frame + {{0, 0}, {694, 381}} + PBXDebugSessionStackFrameViewKey + + DebugVariablesTableConfiguration + + Name + 120 + Value + 85 + Summary + 148 + + Frame + {{316, 0}, {378, 194}} + RubberWindowFrame + 108 977 694 422 0 0 2560 1418 + + RubberWindowFrame + 108 977 694 422 0 0 2560 1418 + + Module + PBXDebugSessionModule + Proportion + 381pt + + + Proportion + 381pt + + + Name + Debugger + ServiceClasses + + PBXDebugSessionModule + + StatusbarIsVisible + + TableOfContents + + 1CD10A99069EF8BA00B06720 + 1FBEBE981319D79C006D5497 + 1C162984064C10D400B95A72 + 1FBEBE991319D79C006D5497 + 1FBEBE9A1319D79C006D5497 + 1FBEBE9B1319D79C006D5497 + 1FBEBE9C1319D79C006D5497 + 1FBEBE9D1319D79C006D5497 + + ToolbarConfiguration + xcode.toolbar.config.debugV3 + WindowString + 108 977 694 422 0 0 2560 1418 + WindowToolGUID + 1CD10A99069EF8BA00B06720 + WindowToolIsVisible + + + + Identifier + windowTool.find + Layout + + + Dock + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1CDD528C0622207200134675 + PBXProjectModuleLabel + <No Editor> + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1CD0528D0623707200166675 + + SplitCount + 1 + + StatusBarVisibility + 1 + + GeometryConfiguration + + Frame + {{0, 0}, {781, 167}} + RubberWindowFrame + 62 385 781 470 0 0 1440 878 + + Module + PBXNavigatorGroup + Proportion + 781pt + + + Proportion + 50% + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + 1CD0528E0623707200166675 + PBXProjectModuleLabel + Project Find + + GeometryConfiguration + + Frame + {{8, 0}, {773, 254}} + RubberWindowFrame + 62 385 781 470 0 0 1440 878 + + Module + PBXProjectFindModule + Proportion + 50% + + + Proportion + 428pt + + + Name + Project Find + ServiceClasses + + PBXProjectFindModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C530D57069F1CE1000CFCEE + 1C530D58069F1CE1000CFCEE + 1C530D59069F1CE1000CFCEE + 1CDD528C0622207200134675 + 1C530D5A069F1CE1000CFCEE + 1CE0B1FE06471DED0097A5F4 + 1CD0528E0623707200166675 + + WindowString + 62 385 781 470 0 0 1440 878 + WindowToolGUID + 1C530D57069F1CE1000CFCEE + WindowToolIsVisible + 0 + + + Identifier + MENUSEPARATOR + + + FirstTimeWindowDisplayed + + Identifier + windowTool.debuggerConsole + IsVertical + + Layout + + + Dock + + + BecomeActive + + ContentConfiguration + + PBXProjectModuleGUID + 1C78EAAC065D492600B07095 + PBXProjectModuleLabel + Debugger Console + + GeometryConfiguration + + Frame + {{0, 0}, {662, 564}} + RubberWindowFrame + 1852 70 662 605 0 0 2560 1418 + + Module + PBXDebugCLIModule + Proportion + 564pt + + + Proportion + 564pt + + + Name + Debugger Console + ServiceClasses + + PBXDebugCLIModule + + StatusbarIsVisible + + TableOfContents + + 1C78EAAD065D492600B07095 + 1FBEBE9E1319D79C006D5497 + 1C78EAAC065D492600B07095 + + ToolbarConfiguration + xcode.toolbar.config.consoleV3 + WindowString + 1852 70 662 605 0 0 2560 1418 + WindowToolGUID + 1C78EAAD065D492600B07095 + WindowToolIsVisible + + + + Identifier + windowTool.snapshots + Layout + + + Dock + + + Module + XCSnapshotModule + Proportion + 100% + + + Proportion + 100% + + + Name + Snapshots + ServiceClasses + + XCSnapshotModule + + StatusbarIsVisible + Yes + ToolbarConfiguration + xcode.toolbar.config.snapshots + WindowString + 315 824 300 550 0 0 1440 878 + WindowToolIsVisible + Yes + + + Identifier + windowTool.scm + Layout + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1C78EAB2065D492600B07095 + PBXProjectModuleLabel + <No Editor> + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1C78EAB3065D492600B07095 + + SplitCount + 1 + + StatusBarVisibility + 1 + + GeometryConfiguration + + Frame + {{0, 0}, {452, 0}} + RubberWindowFrame + 743 379 452 308 0 0 1280 1002 + + Module + PBXNavigatorGroup + Proportion + 0pt + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + 1CD052920623707200166675 + PBXProjectModuleLabel + SCM + + GeometryConfiguration + + ConsoleFrame + {{0, 259}, {452, 0}} + Frame + {{0, 7}, {452, 259}} + RubberWindowFrame + 743 379 452 308 0 0 1280 1002 + TableConfiguration + + Status + 30 + FileName + 199 + Path + 197.0950012207031 + + TableFrame + {{0, 0}, {452, 250}} + + Module + PBXCVSModule + Proportion + 262pt + + + Proportion + 266pt + + + Name + SCM + ServiceClasses + + PBXCVSModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C78EAB4065D492600B07095 + 1C78EAB5065D492600B07095 + 1C78EAB2065D492600B07095 + 1CD052920623707200166675 + + ToolbarConfiguration + xcode.toolbar.config.scm + WindowString + 743 379 452 308 0 0 1280 1002 + + + Identifier + windowTool.breakpoints + IsVertical + 0 + Layout + + + Dock + + + BecomeActive + 1 + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C77FABC04509CD000000102 + + PBXProjectModuleGUID + 1CE0B1FE06471DED0097A5F4 + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + no + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 168 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 1C77FABC04509CD000000102 + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 0 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 0}, {168, 350}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + 0 + + GeometryConfiguration + + Frame + {{0, 0}, {185, 368}} + GroupTreeTableConfiguration + + MainColumn + 168 + + RubberWindowFrame + 315 424 744 409 0 0 1440 878 + + Module + PBXSmartGroupTreeModule + Proportion + 185pt + + + ContentConfiguration + + PBXProjectModuleGUID + 1CA1AED706398EBD00589147 + PBXProjectModuleLabel + Detail + + GeometryConfiguration + + Frame + {{190, 0}, {554, 368}} + RubberWindowFrame + 315 424 744 409 0 0 1440 878 + + Module + XCDetailModule + Proportion + 554pt + + + Proportion + 368pt + + + MajorVersion + 3 + MinorVersion + 0 + Name + Breakpoints + ServiceClasses + + PBXSmartGroupTreeModule + XCDetailModule + + StatusbarIsVisible + 1 + TableOfContents + + 1CDDB66807F98D9800BB5817 + 1CDDB66907F98D9800BB5817 + 1CE0B1FE06471DED0097A5F4 + 1CA1AED706398EBD00589147 + + ToolbarConfiguration + xcode.toolbar.config.breakpointsV3 + WindowString + 315 424 744 409 0 0 1440 878 + WindowToolGUID + 1CDDB66807F98D9800BB5817 + WindowToolIsVisible + 1 + + + Identifier + windowTool.debugAnimator + Layout + + + Dock + + + Module + PBXNavigatorGroup + Proportion + 100% + + + Proportion + 100% + + + Name + Debug Visualizer + ServiceClasses + + PBXNavigatorGroup + + StatusbarIsVisible + 1 + ToolbarConfiguration + xcode.toolbar.config.debugAnimatorV3 + WindowString + 100 100 700 500 0 0 1280 1002 + + + Identifier + windowTool.bookmarks + Layout + + + Dock + + + Module + PBXBookmarksModule + Proportion + 100% + + + Proportion + 100% + + + Name + Bookmarks + ServiceClasses + + PBXBookmarksModule + + StatusbarIsVisible + 0 + WindowString + 538 42 401 187 0 0 1280 1002 + + + Identifier + windowTool.projectFormatConflicts + Layout + + + Dock + + + Module + XCProjectFormatConflictsModule + Proportion + 100% + + + Proportion + 100% + + + Name + Project Format Conflicts + ServiceClasses + + XCProjectFormatConflictsModule + + StatusbarIsVisible + 0 + WindowContentMinSize + 450 300 + WindowString + 50 850 472 307 0 0 1440 877 + + + Identifier + windowTool.classBrowser + Layout + + + Dock + + + BecomeActive + 1 + ContentConfiguration + + OptionsSetName + Hierarchy, all classes + PBXProjectModuleGUID + 1CA6456E063B45B4001379D8 + PBXProjectModuleLabel + Class Browser - NSObject + + GeometryConfiguration + + ClassesFrame + {{0, 0}, {374, 96}} + ClassesTreeTableConfiguration + + PBXClassNameColumnIdentifier + 208 + PBXClassBookColumnIdentifier + 22 + + Frame + {{0, 0}, {630, 331}} + MembersFrame + {{0, 105}, {374, 395}} + MembersTreeTableConfiguration + + PBXMemberTypeIconColumnIdentifier + 22 + PBXMemberNameColumnIdentifier + 216 + PBXMemberTypeColumnIdentifier + 97 + PBXMemberBookColumnIdentifier + 22 + + PBXModuleWindowStatusBarHidden2 + 1 + RubberWindowFrame + 385 179 630 352 0 0 1440 878 + + Module + PBXClassBrowserModule + Proportion + 332pt + + + Proportion + 332pt + + + Name + Class Browser + ServiceClasses + + PBXClassBrowserModule + + StatusbarIsVisible + 0 + TableOfContents + + 1C0AD2AF069F1E9B00FABCE6 + 1C0AD2B0069F1E9B00FABCE6 + 1CA6456E063B45B4001379D8 + + ToolbarConfiguration + xcode.toolbar.config.classbrowser + WindowString + 385 179 630 352 0 0 1440 878 + WindowToolGUID + 1C0AD2AF069F1E9B00FABCE6 + WindowToolIsVisible + 0 + + + Identifier + windowTool.refactoring + IncludeInToolsMenu + 0 + Layout + + + Dock + + + BecomeActive + 1 + GeometryConfiguration + + Frame + {0, 0}, {500, 335} + RubberWindowFrame + {0, 0}, {500, 335} + + Module + XCRefactoringModule + Proportion + 100% + + + Proportion + 100% + + + Name + Refactoring + ServiceClasses + + XCRefactoringModule + + WindowString + 200 200 500 356 0 0 1920 1200 + + + + diff --git a/games/Pong/Pong.xcodeproj/jeena.pbxuser b/games/Pong/Pong.xcodeproj/jeena.pbxuser new file mode 100644 index 0000000..322ef53 --- /dev/null +++ b/games/Pong/Pong.xcodeproj/jeena.pbxuser @@ -0,0 +1,2434 @@ +// !$*UTF8*$! +{ + 1D3623240D0F684500981E51 /* PongAppDelegate.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {900, 935}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 455}"; + }; + }; + 1D3623250D0F684500981E51 /* PongAppDelegate.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1965, 1215}}"; + sepNavSelRange = "{629, 0}"; + sepNavVisRange = "{448, 307}"; + }; + }; + 1D6058900D05DD3D006BFB54 /* Pong */ = { + activeExec = 0; + executables = ( + 1FA0569112F0B513003F1373 /* Pong */, + ); + }; + 1FA0569112F0B513003F1373 /* Pong */ = { + isa = PBXExecutable; + activeArgIndices = ( + ); + argumentStrings = ( + ); + autoAttachOnCrash = 1; + breakpointsEnabled = 0; + configStateDict = { + }; + customDataFormattersEnabled = 1; + dataTipCustomDataFormattersEnabled = 1; + dataTipShowTypeColumn = 1; + dataTipSortType = 0; + debuggerPlugin = GDBDebugging; + disassemblyDisplayState = 0; + dylibVariantSuffix = ""; + enableDebugStr = 1; + environmentEntries = ( + ); + executableSystemSymbolLevel = 0; + executableUserSymbolLevel = 0; + libgmallocEnabled = 0; + name = Pong; + savedGlobals = { + }; + showTypeColumn = 0; + sourceDirectories = ( + ); + variableFormatDictionary = { + }; + }; + 1FA0569D12F0B528003F1373 /* Source Control */ = { + isa = PBXSourceControlManager; + fallbackIsa = XCSourceControlManager; + isSCMEnabled = 0; + scmConfiguration = { + repositoryNamesForRoots = { + "" = ""; + }; + }; + }; + 1FA0569E12F0B528003F1373 /* Code sense */ = { + isa = PBXCodeSenseManager; + indexTemplatePath = ""; + }; + 1FB25C6312F4AAD8009AC8AB /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1455; + vrLoc = 0; + }; + 1FB25C6412F4AAD8009AC8AB /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 8D1107310486CEB800E47090 /* Pong-Info.plist */; + }; + 1FB25C6512F4AAD8009AC8AB /* PlistBookmark */ = { + isa = PlistBookmark; + fRef = 8D1107310486CEB800E47090 /* Pong-Info.plist */; + fallbackIsa = PBXBookmark; + isK = 0; + kPath = ( + ); + name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; + rLen = 0; + rLoc = 9223372036854775808; + }; + 1FBEBE4C1319CC38006D5497 /* PlistBookmark */ = { + isa = PlistBookmark; + fRef = 8D1107310486CEB800E47090 /* Pong-Info.plist */; + fallbackIsa = PBXBookmark; + isK = 0; + kPath = ( + ); + name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; + rLen = 0; + rLoc = 9223372036854775807; + }; + 1FBEBE4D1319CC38006D5497 /* PlistBookmark */ = { + isa = PlistBookmark; + fRef = 8D1107310486CEB800E47090 /* Pong-Info.plist */; + fallbackIsa = PBXBookmark; + isK = 0; + kPath = ( + ); + name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; + rLen = 0; + rLoc = 9223372036854775807; + }; + 1FBEBE641319D1E5006D5497 /* PongView.h */ = { + isa = PBXFileReference; + fileEncoding = 4; + lastKnownFileType = sourcecode.c.h; + name = PongView.h; + path = /Users/jeena/Projects/Pong/Classes/PongView.h; + sourceTree = ""; + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {900, 958}}"; + sepNavSelRange = "{186, 0}"; + sepNavVisRange = "{0, 193}"; + }; + }; + 1FBEBE651319D1E5006D5497 /* PongView.m */ = { + isa = PBXFileReference; + fileEncoding = 4; + lastKnownFileType = sourcecode.c.objc; + name = PongView.m; + path = /Users/jeena/Projects/Pong/Classes/PongView.m; + sourceTree = ""; + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {900, 958}}"; + sepNavSelRange = "{527, 0}"; + sepNavVisRange = "{0, 577}"; + }; + }; + 1FBEBE911319D79C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1D3623250D0F684500981E51 /* PongAppDelegate.m */; + name = "PongAppDelegate.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 2312; + vrLoc = 0; + }; + 1FBEBE921319D79C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 15"; + rLen = 0; + rLoc = 1137; + rType = 0; + vrLen = 224; + vrLoc = 0; + }; + 1FBEBE931319D79C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 61"; + rLen = 0; + rLoc = 5614; + rType = 0; + vrLen = 1454; + vrLoc = 0; + }; + 1FBEBE941319D79C006D5497 /* PlistBookmark */ = { + isa = PlistBookmark; + fRef = 8D1107310486CEB800E47090 /* Pong-Info.plist */; + fallbackIsa = PBXBookmark; + isK = 0; + kPath = ( + ); + name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; + rLen = 0; + rLoc = 9223372036854775807; + }; + 1FBEBE951319D79C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 17"; + rLen = 0; + rLoc = 185; + rType = 0; + vrLen = 489; + vrLoc = 0; + }; + 1FBEBE961319D79C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 52"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1438; + vrLoc = 27; + }; + 1FBEBE971319D79C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 45"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1618; + vrLoc = 225; + }; + 1FBEBEAB1319D7F2006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 67"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1631; + vrLoc = 261; + }; + 1FBEBEB41319DC5A006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 37"; + rLen = 0; + rLoc = 175; + rType = 0; + vrLen = 1612; + vrLoc = 377; + }; + 1FBEBEB51319DC5A006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 15"; + rLen = 0; + rLoc = 184; + rType = 0; + vrLen = 460; + vrLoc = 0; + }; + 1FBEBEB61319DC5A006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 17"; + rLen = 0; + rLoc = 184; + rType = 0; + vrLen = 498; + vrLoc = 0; + }; + 1FBEBED01319E5FE006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 55"; + rLen = 0; + rLoc = 175; + rType = 0; + vrLen = 1422; + vrLoc = 27; + }; + 1FBEBED11319E5FE006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 17"; + rLen = 0; + rLoc = 184; + rType = 0; + vrLen = 501; + vrLoc = 0; + }; + 1FBEBED21319E5FE006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 16"; + rLen = 0; + rLoc = 184; + rType = 0; + vrLen = 532; + vrLoc = 0; + }; + 1FBEBED81319E723006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 54"; + rLen = 0; + rLoc = 175; + rType = 0; + vrLen = 1546; + vrLoc = 852; + }; + 1FBEBED91319E723006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 16"; + rLen = 0; + rLoc = 184; + rType = 0; + vrLen = 532; + vrLoc = 0; + }; + 1FBEBEDA1319E723006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 24"; + rLen = 0; + rLoc = 186; + rType = 0; + vrLen = 591; + vrLoc = 0; + }; + 1FBEBEF61319EEB6006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 24"; + rLen = 0; + rLoc = 186; + rType = 0; + vrLen = 591; + vrLoc = 0; + }; + 1FBEBEF71319EEB6006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 87"; + rLen = 0; + rLoc = 175; + rType = 0; + vrLen = 1537; + vrLoc = 1310; + }; + 1FBEBF151319F5C1006D5497 /* PlistBookmark */ = { + isa = PlistBookmark; + fRef = 8D1107310486CEB800E47090 /* Pong-Info.plist */; + fallbackIsa = PBXBookmark; + isK = 0; + kPath = ( + ); + name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; + rLen = 0; + rLoc = 9223372036854775807; + }; + 1FBEBF161319F5C1006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1D3623250D0F684500981E51 /* PongAppDelegate.m */; + name = "PongAppDelegate.m: 27"; + rLen = 0; + rLoc = 666; + rType = 0; + vrLen = 2210; + vrLoc = 0; + }; + 1FBEBF171319F5C1006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 58"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1571; + vrLoc = 894; + }; + 1FBEBF181319F5C1006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 17"; + rLen = 0; + rLoc = 1137; + rType = 0; + vrLen = 397; + vrLoc = 0; + }; + 1FBEBF191319F5C1006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 65"; + rLen = 0; + rLoc = 5613; + rType = 0; + vrLen = 1580; + vrLoc = 37; + }; + 1FBEBF1A1319F5C1006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 26"; + rLen = 0; + rLoc = 777; + rType = 0; + vrLen = 1647; + vrLoc = 0; + }; + 1FBEBF1E1319F691006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 26"; + rLen = 0; + rLoc = 777; + rType = 0; + vrLen = 1647; + vrLoc = 0; + }; + 1FBEBF1F1319F691006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 15"; + rLen = 0; + rLoc = 1137; + rType = 0; + vrLen = 224; + vrLoc = 0; + }; + 1FBEBF201319F691006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 31"; + rLen = 0; + rLoc = 187; + rType = 0; + vrLen = 768; + vrLoc = 0; + }; + 1FBEBF211319F691006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 69"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1507; + vrLoc = 744; + }; + 1FBEBF221319F691006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 69"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1700; + vrLoc = 744; + }; + 1FBEBF351319F93F006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 15"; + rLen = 0; + rLoc = 1137; + rType = 0; + vrLen = 224; + vrLoc = 0; + }; + 1FBEBF361319F93F006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 61"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1563; + vrLoc = 1106; + }; + 1FBEBF371319F93F006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 10"; + rLen = 0; + rLoc = 191; + rType = 0; + vrLen = 1593; + vrLoc = 168; + }; + 1FBEBF381319F93F006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 10"; + rLen = 0; + rLoc = 191; + rType = 0; + vrLen = 1593; + vrLoc = 168; + }; + 1FBEBF3E1319F9ED006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 60"; + rLen = 0; + rLoc = 5613; + rType = 0; + vrLen = 1502; + vrLoc = 37; + }; + 1FBEBF3F1319F9ED006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 61"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1670; + vrLoc = 999; + }; + 1FBEBF401319F9ED006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 143"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1552; + vrLoc = 2030; + }; + 1FBEBF4B1319FCDE006D5497 /* AsyncSocket.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {900, 10170}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 2324}"; + }; + }; + 1FBEBF4C1319FCDE006D5497 /* AsyncSocket.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {900, 63840}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 2997}"; + }; + }; + 1FBEBFAD1319FE92006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 143"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1548; + vrLoc = 0; + }; + 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {900, 958}}"; + sepNavSelRange = "{396, 0}"; + sepNavVisRange = "{0, 743}"; + }; + }; + 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {998, 1755}}"; + sepNavSelRange = "{1779, 0}"; + sepNavVisRange = "{1376, 2177}"; + }; + }; + 1FBEBFFD131AA714006D5497 /* XCBuildMessageTextBookmark */ = { + isa = PBXTextBookmark; + comments = "'HEIGHT' undeclared (first use in this function)"; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + fallbackIsa = XCBuildMessageTextBookmark; + rLen = 0; + rLoc = 29; + rType = 1; + }; + 1FBEBFFE131AA714006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 89"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 343; + vrLoc = 1480; + }; + 1FBEC001131AA71C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBF4B1319FCDE006D5497 /* AsyncSocket.h */; + name = "AsyncSocket.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 2324; + vrLoc = 0; + }; + 1FBEC002131AA71C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBF4C1319FCDE006D5497 /* AsyncSocket.m */; + name = "AsyncSocket.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 2997; + vrLoc = 0; + }; + 1FBEC003131AA71C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "Network.h: 18"; + rLen = 0; + rLoc = 592; + rType = 0; + vrLen = 376; + vrLoc = 0; + }; + 1FBEC004131AA71C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 143"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1577; + vrLoc = 3; + }; + 1FBEC005131AA71C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 31"; + rLen = 0; + rLoc = 903; + rType = 0; + vrLen = 1578; + vrLoc = 28; + }; + 1FBEC006131AA71C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 31"; + rLen = 0; + rLoc = 880; + rType = 0; + vrLen = 1219; + vrLoc = 0; + }; + 1FBEC007131AA71C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 28"; + rLen = 0; + rLoc = 732; + rType = 0; + vrLen = 1164; + vrLoc = 0; + }; + 1FBEC00A131AA739006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 28"; + rLen = 0; + rLoc = 783; + rType = 0; + vrLen = 1160; + vrLoc = 0; + }; + 1FBEC00D131AA74F006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 29"; + rLen = 0; + rLoc = 880; + rType = 0; + vrLen = 1189; + vrLoc = 0; + }; + 1FBEC010131AA773006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 29"; + rLen = 0; + rLoc = 880; + rType = 0; + vrLen = 1189; + vrLoc = 0; + }; + 1FBEC011131AA773006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 31"; + rLen = 0; + rLoc = 903; + rType = 0; + vrLen = 1576; + vrLoc = 28; + }; + 1FBEC012131AA773006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 32"; + rLen = 0; + rLoc = 904; + rType = 0; + vrLen = 1586; + vrLoc = 37; + }; + 1FBEC015131AA78E006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 31"; + rLen = 0; + rLoc = 904; + rType = 0; + vrLen = 1586; + vrLoc = 37; + }; + 1FBEC016131AA78E006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 29"; + rLen = 0; + rLoc = 880; + rType = 0; + vrLen = 1189; + vrLoc = 0; + }; + 1FBEC017131AA78E006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 31"; + rLen = 0; + rLoc = 881; + rType = 0; + vrLen = 1189; + vrLoc = 0; + }; + 1FBEC01A131AA799006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 29"; + rLen = 0; + rLoc = 730; + rType = 0; + vrLen = 1189; + vrLoc = 0; + }; + 1FBEC01D131AA7B8006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 37"; + rLen = 0; + rLoc = 2143; + rType = 0; + vrLen = 1235; + vrLoc = 0; + }; + 1FBEC020131AA7F1006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 32"; + rLen = 0; + rLoc = 796; + rType = 0; + vrLen = 1304; + vrLoc = 0; + }; + 1FBEC023131AA82B006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 36"; + rLen = 0; + rLoc = 830; + rType = 0; + vrLen = 1306; + vrLoc = 0; + }; + 1FBEC026131AF718006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 29"; + rLen = 0; + rLoc = 770; + rType = 0; + vrLen = 1310; + vrLoc = 0; + }; + 1FBEC029131AF724006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 36"; + rLen = 0; + rLoc = 830; + rType = 0; + vrLen = 1310; + vrLoc = 0; + }; + 1FBEC02C131AF749006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 30"; + rLen = 0; + rLoc = 830; + rType = 0; + vrLen = 1213; + vrLoc = 0; + }; + 1FBEC02F131AF752006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "Network.m: 30"; + rLen = 0; + rLoc = 830; + rType = 0; + vrLen = 1213; + vrLoc = 0; + }; + 1FBEC030131AF83B006D5497 /* GGSDelegate.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {900, 958}}"; + sepNavSelRange = "{283, 0}"; + sepNavVisRange = "{0, 459}"; + }; + }; + 1FBEC031131AFA87006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 10"; + rLen = 0; + rLoc = 207; + rType = 0; + vrLen = 262; + vrLoc = 0; + }; + 1FBEC032131AFA87006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; + name = "GGSDelegate.h: 17"; + rLen = 67; + rLoc = 386; + rType = 0; + vrLen = 382; + vrLoc = 0; + }; + 1FBEC033131AFA87006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 40"; + rLen = 0; + rLoc = 1288; + rType = 0; + vrLen = 1595; + vrLoc = 37; + }; + 1FBEC034131AFA87006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 23"; + rLen = 0; + rLoc = 592; + rType = 0; + vrLen = 600; + vrLoc = 0; + }; + 1FBEC035131AFA87006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 39"; + rLen = 0; + rLoc = 1125; + rType = 0; + vrLen = 1502; + vrLoc = 0; + }; + 1FBEC036131AFA87006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 58"; + rLen = 0; + rLoc = 2394; + rType = 0; + vrLen = 1526; + vrLoc = 26; + }; + 1FBEC037131AFC6B006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 24"; + rLen = 0; + rLoc = 497; + rType = 0; + vrLen = 2165; + vrLoc = 63; + }; + 1FBEC038131AFD26006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 45"; + rLen = 0; + rLoc = 1314; + rType = 0; + vrLen = 1617; + vrLoc = 28; + }; + 1FBEC039131AFD26006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; + name = "GGSDelegate.h: 17"; + rLen = 0; + rLoc = 404; + rType = 0; + vrLen = 396; + vrLoc = 0; + }; + 1FBEC03A131AFD26006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 27"; + rLen = 0; + rLoc = 736; + rType = 0; + vrLen = 667; + vrLoc = 0; + }; + 1FBEC03B131AFD26006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 50"; + rLen = 65; + rLoc = 1376; + rType = 0; + vrLen = 2152; + vrLoc = 254; + }; + 1FBEC03C131AFD26006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 50"; + rLen = 65; + rLoc = 1376; + rType = 0; + vrLen = 2152; + vrLoc = 254; + }; + 1FBEC03D131AFDBE006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 74"; + rLen = 0; + rLoc = 3212; + rType = 0; + vrLen = 2239; + vrLoc = 286; + }; + 1FBEC03E131AFEC7006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 55"; + rLen = 0; + rLoc = 1617; + rType = 0; + vrLen = 2232; + vrLoc = 286; + }; + 1FBEC03F131B00EA006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 25"; + rLen = 14; + rLoc = 577; + rType = 0; + vrLen = 750; + vrLoc = 0; + }; + 1FBEC040131B00EA006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 75"; + rLen = 0; + rLoc = 3212; + rType = 0; + vrLen = 2099; + vrLoc = 469; + }; + 1FBEC041131B00EA006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 75"; + rLen = 0; + rLoc = 2696; + rType = 0; + vrLen = 2191; + vrLoc = 470; + }; + 1FBEC042131B01D3006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 80"; + rLen = 0; + rLoc = 2983; + rType = 0; + vrLen = 2306; + vrLoc = 437; + }; + 1FBEC043131B0346006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 89"; + rLen = 0; + rLoc = 3373; + rType = 0; + vrLen = 2426; + vrLoc = 873; + }; + 1FBEC052131B04DE006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 22"; + rLen = 0; + rLoc = 396; + rType = 0; + vrLen = 740; + vrLoc = 0; + }; + 1FBEC053131B04DE006D5497 /* XCBuildMessageTextBookmark */ = { + isa = PBXTextBookmark; + comments = "Invalid receiver type ''"; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + fallbackIsa = XCBuildMessageTextBookmark; + rLen = 1; + rLoc = 110; + rType = 1; + }; + 1FBEC054131B04DE006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 106"; + rLen = 0; + rLoc = 3656; + rType = 0; + vrLen = 2006; + vrLoc = 1374; + }; + 1FBEC059131B085D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 106"; + rLen = 0; + rLoc = 3656; + rType = 0; + vrLen = 1963; + vrLoc = 0; + }; + 1FBEC05A131B085D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; + name = "GGSDelegate.h: 17"; + rLen = 0; + rLoc = 404; + rType = 0; + vrLen = 396; + vrLoc = 0; + }; + 1FBEC05B131B085D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 10"; + rLen = 0; + rLoc = 207; + rType = 0; + vrLen = 262; + vrLoc = 0; + }; + 1FBEC05C131B085D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1D3623240D0F684500981E51 /* PongAppDelegate.h */; + name = "PongAppDelegate.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 455; + vrLoc = 0; + }; + 1FBEC05D131B085D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1D3623250D0F684500981E51 /* PongAppDelegate.m */; + name = "PongAppDelegate.m: 27"; + rLen = 0; + rLoc = 666; + rType = 0; + vrLen = 2203; + vrLoc = 0; + }; + 1FBEC05E131B085D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 32"; + rLen = 0; + rLoc = 186; + rType = 0; + vrLen = 789; + vrLoc = 0; + }; + 1FBEC05F131B085D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 140"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1321; + vrLoc = 2304; + }; + 1FBEC060131B085D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 45"; + rLen = 0; + rLoc = 1314; + rType = 0; + vrLen = 1469; + vrLoc = 524; + }; + 1FBEC061131B085D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 81"; + rLen = 0; + rLoc = 5498; + rType = 0; + vrLen = 1580; + vrLoc = 557; + }; + 1FBEC062131B0886006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 89"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 346; + vrLoc = 1480; + }; + 1FBEC063131B0886006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 106"; + rLen = 22; + rLoc = 3656; + rType = 0; + vrLen = 128; + vrLoc = 3252; + }; + 1FBEC064131B0886006D5497 /* XCBuildMessageTextBookmark */ = { + isa = PBXTextBookmark; + comments = "Cannot find protocol declaration for 'GGSDelegate'"; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + fallbackIsa = XCBuildMessageTextBookmark; + rLen = 1; + rLoc = 16; + rType = 1; + }; + 1FBEC065131B0886006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 13"; + rLen = 0; + rLoc = 231; + rType = 0; + vrLen = 372; + vrLoc = 371; + }; + 1FBEC066131B0887006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 13"; + rLen = 0; + rLoc = 231; + rType = 0; + vrLen = 372; + vrLoc = 371; + }; + 1FBEC069131B088B006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 13"; + rLen = 0; + rLoc = 231; + rType = 0; + vrLen = 372; + vrLoc = 371; + }; + 1FBEC06A131B088B006D5497 /* XCBuildMessageTextBookmark */ = { + isa = PBXTextBookmark; + comments = "Expected ';' before ':' token"; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + fallbackIsa = XCBuildMessageTextBookmark; + rLen = 0; + rLoc = 29; + rType = 1; + }; + 1FBEC06B131B088B006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 142"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 367; + vrLoc = 3167; + }; + 1FBEC06C131B0890006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 36"; + rLen = 0; + rLoc = 1175; + rType = 0; + vrLen = 1580; + vrLoc = 557; + }; + 1FBEC06D131B0890006D5497 /* XCBuildMessageTextBookmark */ = { + isa = PBXTextBookmark; + comments = "Expected ';' before ':' token"; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + fallbackIsa = XCBuildMessageTextBookmark; + rLen = 0; + rLoc = 29; + rType = 1; + }; + 1FBEC06E131B0890006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 142"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1377; + vrLoc = 2249; + }; + 1FBEC071131B08D5006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 142"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1477; + vrLoc = 1503; + }; + 1FBEC074131B08E9006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 83"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 1523; + vrLoc = 1503; + }; + 1FBEC075131B08E9006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 32"; + rLen = 0; + rLoc = 186; + rType = 0; + vrLen = 813; + vrLoc = 0; + }; + 1FBEC078131B08F9006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 32"; + rLen = 0; + rLoc = 186; + rType = 0; + vrLen = 813; + vrLoc = 0; + }; + 1FBEC07B131B0941006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 32"; + rLen = 0; + rLoc = 186; + rType = 0; + vrLen = 813; + vrLoc = 0; + }; + 1FBEC07C131B0941006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 44"; + rLen = 0; + rLoc = 1295; + rType = 0; + vrLen = 1571; + vrLoc = 586; + }; + 1FBEC07D131B0941006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 10"; + rLen = 0; + rLoc = 207; + rType = 0; + vrLen = 262; + vrLoc = 0; + }; + 1FBEC07E131B0941006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 12"; + rLen = 0; + rLoc = 370; + rType = 0; + vrLen = 287; + vrLoc = 0; + }; + 1FBEC07F131B094B006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 28"; + rLen = 0; + rLoc = 305; + rType = 0; + vrLen = 316; + vrLoc = 387; + }; + 1FBEC080131B094B006D5497 /* XCBuildMessageTextBookmark */ = { + isa = PBXTextBookmark; + comments = "'UIView' may not respond to '-zeroPoints'"; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + fallbackIsa = XCBuildMessageTextBookmark; + rLen = 1; + rLoc = 216; + rType = 1; + }; + 1FBEC081131B094B006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 81"; + rLen = 0; + rLoc = 5481; + rType = 0; + vrLen = 236; + vrLoc = 1913; + }; + 1FBEC082131B094D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 12"; + rLen = 0; + rLoc = 370; + rType = 0; + vrLen = 287; + vrLoc = 0; + }; + 1FBEC083131B09C6006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 12"; + rLen = 0; + rLoc = 370; + rType = 0; + vrLen = 262; + vrLoc = 0; + }; + 1FBEC084131B09C6006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 34"; + rLen = 0; + rLoc = 904; + rType = 0; + vrLen = 1644; + vrLoc = 0; + }; + 1FBEC085131B09C6006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 34"; + rLen = 0; + rLoc = 904; + rType = 0; + vrLen = 1644; + vrLoc = 0; + }; + 1FBEC088131B0A14006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 80"; + rLen = 0; + rLoc = 5304; + rType = 0; + vrLen = 1630; + vrLoc = 587; + }; + 1FBEC08B131B0A29006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 34"; + rLen = 0; + rLoc = 904; + rType = 0; + vrLen = 1672; + vrLoc = 3; + }; + 1FBEC090131B0A9C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 56"; + rLen = 0; + rLoc = 1847; + rType = 0; + vrLen = 1664; + vrLoc = 721; + }; + 1FBEC091131B0C04006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 14"; + rLen = 0; + rLoc = 186; + rType = 0; + vrLen = 193; + vrLoc = 0; + }; + 1FBEC092131B0C04006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 33"; + rLen = 0; + rLoc = 1078; + rType = 0; + vrLen = 881; + vrLoc = 0; + }; + 1FBEC093131B0C04006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 18"; + rLen = 0; + rLoc = 305; + rType = 0; + vrLen = 1514; + vrLoc = 0; + }; + 1FBEC094131B0C04006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 40"; + rLen = 0; + rLoc = 903; + rType = 0; + vrLen = 1466; + vrLoc = 0; + }; + 1FBEC095131B0C04006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 69"; + rLen = 0; + rLoc = 1846; + rType = 0; + vrLen = 1647; + vrLoc = 459; + }; + 1FBEC096131B0C44006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; + name = "PongView.m: 30"; + rLen = 0; + rLoc = 527; + rType = 0; + vrLen = 577; + vrLoc = 0; + }; + 1FBEC097131B0C44006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 104"; + rLen = 0; + rLoc = 2739; + rType = 0; + vrLen = 1843; + vrLoc = 1234; + }; + 1FBEC098131B0C44006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 14"; + rLen = 0; + rLoc = 186; + rType = 0; + vrLen = 193; + vrLoc = 0; + }; + 1FBEC099131B0C44006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; + name = "PongView.h: 14"; + rLen = 0; + rLoc = 186; + rType = 0; + vrLen = 193; + vrLoc = 0; + }; + 1FBEC0A0131B0C9D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 16"; + rLen = 0; + rLoc = 494; + rType = 0; + vrLen = 881; + vrLoc = 0; + }; + 1FBEC0A1131B0C9D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 9"; + rLen = 0; + rLoc = 167; + rType = 0; + vrLen = 1516; + vrLoc = 0; + }; + 1FBEC0A2131B0C9D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 200"; + rLen = 0; + rLoc = 5266; + rType = 0; + vrLen = 1278; + vrLoc = 4097; + }; + 1FBEC0A9131B0DF1006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 36"; + rLen = 0; + rLoc = 1098; + rType = 0; + vrLen = 939; + vrLoc = 0; + }; + 1FBEC0AA131B0DF1006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 11"; + rLen = 0; + rLoc = 191; + rType = 0; + vrLen = 1528; + vrLoc = 0; + }; + 1FBEC0AB131B0DF1006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 11"; + rLen = 0; + rLoc = 191; + rType = 0; + vrLen = 1525; + vrLoc = 3; + }; + 1FBEC0B1131B0E5E006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 65"; + rLen = 0; + rLoc = 1628; + rType = 0; + vrLen = 1584; + vrLoc = 320; + }; + 1FBEC0B4131B0F17006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 70"; + rLen = 0; + rLoc = 1689; + rType = 0; + vrLen = 1865; + vrLoc = 1107; + }; + 1FBEC0B7131B0F31006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 78"; + rLen = 0; + rLoc = 1956; + rType = 0; + vrLen = 1876; + vrLoc = 1259; + }; + 1FBEC0BA131B0F8B006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 157"; + rLen = 0; + rLoc = 4192; + rType = 0; + vrLen = 1728; + vrLoc = 2623; + }; + 1FBEC0BD131B0FAD006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 71"; + rLen = 0; + rLoc = 1709; + rType = 0; + vrLen = 1724; + vrLoc = 775; + }; + 1FBEC0C5131B100A006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 71"; + rLen = 0; + rLoc = 1709; + rType = 0; + vrLen = 1701; + vrLoc = 905; + }; + 1FBEC0C8131B103C006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 71"; + rLen = 0; + rLoc = 1709; + rType = 0; + vrLen = 1725; + vrLoc = 772; + }; + 1FBEC0CB131B1081006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 36"; + rLen = 0; + rLoc = 1098; + rType = 0; + vrLen = 939; + vrLoc = 0; + }; + 1FBEC0CC131B1081006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 108"; + rLen = 0; + rLoc = 2775; + rType = 0; + vrLen = 1969; + vrLoc = 1440; + }; + 1FBEC0CD131B1081006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 111"; + rLen = 0; + rLoc = 2815; + rType = 0; + vrLen = 1983; + vrLoc = 1530; + }; + 1FBEC0D0131B10CE006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 36"; + rLen = 0; + rLoc = 1098; + rType = 0; + vrLen = 939; + vrLoc = 0; + }; + 1FBEC0D1131B10CE006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 112"; + rLen = 0; + rLoc = 2818; + rType = 0; + vrLen = 1978; + vrLoc = 1530; + }; + 1FBEC0D2131B10CE006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 71"; + rLen = 0; + rLoc = 1709; + rType = 0; + vrLen = 1588; + vrLoc = 358; + }; + 1FBEC0D9131B1173006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 157"; + rLen = 0; + rLoc = 4192; + rType = 0; + vrLen = 1791; + vrLoc = 2643; + }; + 1FBEC0DC131B117D006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 157"; + rLen = 0; + rLoc = 4192; + rType = 0; + vrLen = 1782; + vrLoc = 2662; + }; + 1FBEC0DF131B1191006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 157"; + rLen = 0; + rLoc = 4192; + rType = 0; + vrLen = 1781; + vrLoc = 2683; + }; + 1FBEC0E6131B1215006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 150"; + rLen = 0; + rLoc = 3862; + rType = 0; + vrLen = 1623; + vrLoc = 2929; + }; + 1FBEC0E9131B12CC006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 123"; + rLen = 0; + rLoc = 3345; + rType = 0; + vrLen = 1671; + vrLoc = 2605; + }; + 1FBEC0EC131B12D5006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 121"; + rLen = 0; + rLoc = 3273; + rType = 0; + vrLen = 1751; + vrLoc = 2607; + }; + 1FBEC0EF131B12ED006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 123"; + rLen = 0; + rLoc = 3345; + rType = 0; + vrLen = 1739; + vrLoc = 2642; + }; + 1FBEC0F2131B1301006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 121"; + rLen = 0; + rLoc = 3272; + rType = 0; + vrLen = 1812; + vrLoc = 2643; + }; + 1FBEC0F3131B1474006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 22"; + rLen = 0; + rLoc = 357; + rType = 0; + vrLen = 1380; + vrLoc = 0; + }; + 1FBEC0F4131B147B006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 22"; + rLen = 0; + rLoc = 357; + rType = 0; + vrLen = 1371; + vrLoc = 0; + }; + 1FBEC0F5131B149B006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 22"; + rLen = 0; + rLoc = 438; + rType = 0; + vrLen = 1439; + vrLoc = 0; + }; + 1FBEC0F6131B149B006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 16"; + rLen = 0; + rLoc = 307; + rType = 0; + vrLen = 1047; + vrLoc = 0; + }; + 1FBEC107131B21E7006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; + name = "GGSDelegate.h: 17"; + rLen = 0; + rLoc = 404; + rType = 0; + vrLen = 396; + vrLoc = 0; + }; + 1FBEC108131B21E7006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 22"; + rLen = 0; + rLoc = 396; + rType = 0; + vrLen = 743; + vrLoc = 0; + }; + 1FBEC109131B21E7006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 66"; + rLen = 0; + rLoc = 1687; + rType = 0; + vrLen = 1544; + vrLoc = 0; + }; + 1FBEC10A131B21E7006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 16"; + rLen = 0; + rLoc = 307; + rType = 0; + vrLen = 1047; + vrLoc = 0; + }; + 1FBEC10B131B21E7006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 16"; + rLen = 0; + rLoc = 306; + rType = 0; + vrLen = 1039; + vrLoc = 0; + }; + 1FBEC10E131B21FB006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 16"; + rLen = 0; + rLoc = 306; + rType = 0; + vrLen = 1039; + vrLoc = 0; + }; + 1FBEC10F131B21FB006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 155"; + rLen = 0; + rLoc = 4192; + rType = 0; + vrLen = 1644; + vrLoc = 2563; + }; + 1FBEC112131B2298006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 155"; + rLen = 0; + rLoc = 4192; + rType = 0; + vrLen = 1541; + vrLoc = 3; + }; + 1FBEC113131B2298006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 21"; + rLen = 0; + rLoc = 374; + rType = 0; + vrLen = 2049; + vrLoc = 3; + }; + 1FBEC114131B2298006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 52"; + rLen = 0; + rLoc = 1544; + rType = 0; + vrLen = 2299; + vrLoc = 315; + }; + 1FBEC117131B22BF006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 55"; + rLen = 0; + rLoc = 1609; + rType = 0; + vrLen = 2286; + vrLoc = 375; + }; + 1FBEC11A131B2423006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 57"; + rLen = 0; + rLoc = 1625; + rType = 0; + vrLen = 2345; + vrLoc = 406; + }; + 1FBEC121131B2559006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; + name = "GGSDelegate.h: 16"; + rLen = 0; + rLoc = 283; + rType = 0; + vrLen = 459; + vrLoc = 0; + }; + 1FBEC122131B2559006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 22"; + rLen = 0; + rLoc = 396; + rType = 0; + vrLen = 743; + vrLoc = 0; + }; + 1FBEC123131B2559006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 63"; + rLen = 0; + rLoc = 2143; + rType = 0; + vrLen = 2316; + vrLoc = 406; + }; + 1FBEC124131B2559006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 11"; + rLen = 0; + rLoc = 207; + rType = 0; + vrLen = 1144; + vrLoc = 0; + }; + 1FBEC125131B2559006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 46"; + rLen = 0; + rLoc = 1147; + rType = 0; + vrLen = 1526; + vrLoc = 697; + }; + 1FBEC126131B2559006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 45"; + rLen = 0; + rLoc = 1088; + rType = 0; + vrLen = 1614; + vrLoc = 275; + }; + 1FBEC127131B255B006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 16"; + rLen = 0; + rLoc = 304; + rType = 0; + vrLen = 327; + vrLoc = 137; + }; + 1FBEC128131B255B006D5497 /* XCBuildMessageTextBookmark */ = { + isa = PBXTextBookmark; + comments = "Expected ';' before ':' token"; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + fallbackIsa = XCBuildMessageTextBookmark; + rLen = 1; + rLoc = 231; + rType = 1; + }; + 1FBEC129131B255B006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 231"; + rLen = 0; + rLoc = 5700; + rType = 0; + vrLen = 196; + vrLoc = 5479; + }; + 1FBEC12C131B2581006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 45"; + rLen = 0; + rLoc = 1142; + rType = 0; + vrLen = 1613; + vrLoc = 275; + }; + 1FBEC12D131B2581006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; + name = "GGSDelegate.h: 16"; + rLen = 0; + rLoc = 283; + rType = 0; + vrLen = 459; + vrLoc = 0; + }; + 1FBEC12E131B2581006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 22"; + rLen = 0; + rLoc = 396; + rType = 0; + vrLen = 743; + vrLoc = 0; + }; + 1FBEC12F131B2581006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 74"; + rLen = 0; + rLoc = 2458; + rType = 0; + vrLen = 2367; + vrLoc = 727; + }; + 1FBEC134131B262F006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 55"; + rLen = 0; + rLoc = 1608; + rType = 0; + vrLen = 2492; + vrLoc = 796; + }; + 1FBEC135131B265A006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 42"; + rLen = 0; + rLoc = 1039; + rType = 0; + vrLen = 2411; + vrLoc = 881; + }; + 1FBEC13C131B26A1006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 45"; + rLen = 0; + rLoc = 1125; + rType = 0; + vrLen = 2427; + vrLoc = 900; + }; + 1FBEC13D131B26A1006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 45"; + rLen = 0; + rLoc = 1142; + rType = 0; + vrLen = 1612; + vrLoc = 275; + }; + 1FBEC13E131B26A1006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 45"; + rLen = 0; + rLoc = 1056; + rType = 0; + vrLen = 1684; + vrLoc = 275; + }; + 1FBEC141131B2757006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 45"; + rLen = 0; + rLoc = 1056; + rType = 0; + vrLen = 1660; + vrLoc = 298; + }; + 1FBEC142131B2757006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 103"; + rLen = 0; + rLoc = 3557; + rType = 0; + vrLen = 2399; + vrLoc = 1105; + }; + 1FBEC145131B2B2E006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 103"; + rLen = 0; + rLoc = 3602; + rType = 0; + vrLen = 2422; + vrLoc = 1128; + }; + 1FBEC148131B2B7E006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 101"; + rLen = 0; + rLoc = 3451; + rType = 0; + vrLen = 2326; + vrLoc = 1246; + }; + 1FBEC14B131B2BAA006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 59"; + rLen = 0; + rLoc = 1625; + rType = 0; + vrLen = 2422; + vrLoc = 1128; + }; + 1FBEC14E131B2BE6006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 58"; + rLen = 0; + rLoc = 1625; + rType = 0; + vrLen = 2177; + vrLoc = 1373; + }; + 1FBEC151131B2C52006D5497 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 59"; + rLen = 0; + rLoc = 1910; + rType = 0; + vrLen = 2177; + vrLoc = 1376; + }; + 28D7ACF60DDB3853001CB0EB /* PongViewController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {460, 795}}"; + sepNavSelRange = "{304, 0}"; + sepNavVisRange = "{137, 327}"; + }; + }; + 28D7ACF70DDB3853001CB0EB /* PongViewController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {900, 3630}}"; + sepNavSelRange = "{1056, 0}"; + sepNavVisRange = "{298, 1660}"; + }; + }; + 29B97313FDCFA39411CA2CEA /* Project object */ = { + activeBuildConfigurationName = Debug; + activeExecutable = 1FA0569112F0B513003F1373 /* Pong */; + activeSDKPreference = iphonesimulator4.2; + activeTarget = 1D6058900D05DD3D006BFB54 /* Pong */; + addToTargets = ( + ); + codeSenseManager = 1FA0569E12F0B528003F1373 /* Code sense */; + executables = ( + 1FA0569112F0B513003F1373 /* Pong */, + ); + perUserDictionary = { + PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = { + PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; + PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; + PBXFileTableDataSourceColumnWidthsKey = ( + 20, + 820, + 20, + 48, + 43, + 43, + 20, + ); + PBXFileTableDataSourceColumnsKey = ( + PBXFileDataSource_FiletypeID, + PBXFileDataSource_Filename_ColumnID, + PBXFileDataSource_Built_ColumnID, + PBXFileDataSource_ObjectSize_ColumnID, + PBXFileDataSource_Errors_ColumnID, + PBXFileDataSource_Warnings_ColumnID, + PBXFileDataSource_Target_ColumnID, + ); + }; + PBXPerProjectTemplateStateSaveDate = 320457762; + PBXWorkspaceStateSaveDate = 320457762; + }; + perUserProjectItems = { + 1FB25C6312F4AAD8009AC8AB = 1FB25C6312F4AAD8009AC8AB /* PBXTextBookmark */; + 1FB25C6412F4AAD8009AC8AB = 1FB25C6412F4AAD8009AC8AB /* PBXBookmark */; + 1FB25C6512F4AAD8009AC8AB = 1FB25C6512F4AAD8009AC8AB /* PlistBookmark */; + 1FBEBE4C1319CC38006D5497 /* PlistBookmark */ = 1FBEBE4C1319CC38006D5497 /* PlistBookmark */; + 1FBEBE4D1319CC38006D5497 /* PlistBookmark */ = 1FBEBE4D1319CC38006D5497 /* PlistBookmark */; + 1FBEBE911319D79C006D5497 /* PBXTextBookmark */ = 1FBEBE911319D79C006D5497 /* PBXTextBookmark */; + 1FBEBE921319D79C006D5497 /* PBXTextBookmark */ = 1FBEBE921319D79C006D5497 /* PBXTextBookmark */; + 1FBEBE931319D79C006D5497 /* PBXTextBookmark */ = 1FBEBE931319D79C006D5497 /* PBXTextBookmark */; + 1FBEBE941319D79C006D5497 /* PlistBookmark */ = 1FBEBE941319D79C006D5497 /* PlistBookmark */; + 1FBEBE951319D79C006D5497 /* PBXTextBookmark */ = 1FBEBE951319D79C006D5497 /* PBXTextBookmark */; + 1FBEBE961319D79C006D5497 /* PBXTextBookmark */ = 1FBEBE961319D79C006D5497 /* PBXTextBookmark */; + 1FBEBE971319D79C006D5497 /* PBXTextBookmark */ = 1FBEBE971319D79C006D5497 /* PBXTextBookmark */; + 1FBEBEAB1319D7F2006D5497 /* PBXTextBookmark */ = 1FBEBEAB1319D7F2006D5497 /* PBXTextBookmark */; + 1FBEBEB41319DC5A006D5497 /* PBXTextBookmark */ = 1FBEBEB41319DC5A006D5497 /* PBXTextBookmark */; + 1FBEBEB51319DC5A006D5497 /* PBXTextBookmark */ = 1FBEBEB51319DC5A006D5497 /* PBXTextBookmark */; + 1FBEBEB61319DC5A006D5497 /* PBXTextBookmark */ = 1FBEBEB61319DC5A006D5497 /* PBXTextBookmark */; + 1FBEBED01319E5FE006D5497 /* PBXTextBookmark */ = 1FBEBED01319E5FE006D5497 /* PBXTextBookmark */; + 1FBEBED11319E5FE006D5497 /* PBXTextBookmark */ = 1FBEBED11319E5FE006D5497 /* PBXTextBookmark */; + 1FBEBED21319E5FE006D5497 /* PBXTextBookmark */ = 1FBEBED21319E5FE006D5497 /* PBXTextBookmark */; + 1FBEBED81319E723006D5497 /* PBXTextBookmark */ = 1FBEBED81319E723006D5497 /* PBXTextBookmark */; + 1FBEBED91319E723006D5497 /* PBXTextBookmark */ = 1FBEBED91319E723006D5497 /* PBXTextBookmark */; + 1FBEBEDA1319E723006D5497 /* PBXTextBookmark */ = 1FBEBEDA1319E723006D5497 /* PBXTextBookmark */; + 1FBEBEF61319EEB6006D5497 /* PBXTextBookmark */ = 1FBEBEF61319EEB6006D5497 /* PBXTextBookmark */; + 1FBEBEF71319EEB6006D5497 /* PBXTextBookmark */ = 1FBEBEF71319EEB6006D5497 /* PBXTextBookmark */; + 1FBEBF151319F5C1006D5497 /* PlistBookmark */ = 1FBEBF151319F5C1006D5497 /* PlistBookmark */; + 1FBEBF161319F5C1006D5497 /* PBXTextBookmark */ = 1FBEBF161319F5C1006D5497 /* PBXTextBookmark */; + 1FBEBF171319F5C1006D5497 /* PBXTextBookmark */ = 1FBEBF171319F5C1006D5497 /* PBXTextBookmark */; + 1FBEBF181319F5C1006D5497 /* PBXTextBookmark */ = 1FBEBF181319F5C1006D5497 /* PBXTextBookmark */; + 1FBEBF191319F5C1006D5497 /* PBXTextBookmark */ = 1FBEBF191319F5C1006D5497 /* PBXTextBookmark */; + 1FBEBF1A1319F5C1006D5497 /* PBXTextBookmark */ = 1FBEBF1A1319F5C1006D5497 /* PBXTextBookmark */; + 1FBEBF1E1319F691006D5497 /* PBXTextBookmark */ = 1FBEBF1E1319F691006D5497 /* PBXTextBookmark */; + 1FBEBF1F1319F691006D5497 /* PBXTextBookmark */ = 1FBEBF1F1319F691006D5497 /* PBXTextBookmark */; + 1FBEBF201319F691006D5497 /* PBXTextBookmark */ = 1FBEBF201319F691006D5497 /* PBXTextBookmark */; + 1FBEBF211319F691006D5497 /* PBXTextBookmark */ = 1FBEBF211319F691006D5497 /* PBXTextBookmark */; + 1FBEBF221319F691006D5497 /* PBXTextBookmark */ = 1FBEBF221319F691006D5497 /* PBXTextBookmark */; + 1FBEBF351319F93F006D5497 /* PBXTextBookmark */ = 1FBEBF351319F93F006D5497 /* PBXTextBookmark */; + 1FBEBF361319F93F006D5497 /* PBXTextBookmark */ = 1FBEBF361319F93F006D5497 /* PBXTextBookmark */; + 1FBEBF371319F93F006D5497 /* PBXTextBookmark */ = 1FBEBF371319F93F006D5497 /* PBXTextBookmark */; + 1FBEBF381319F93F006D5497 /* PBXTextBookmark */ = 1FBEBF381319F93F006D5497 /* PBXTextBookmark */; + 1FBEBF3E1319F9ED006D5497 /* PBXTextBookmark */ = 1FBEBF3E1319F9ED006D5497 /* PBXTextBookmark */; + 1FBEBF3F1319F9ED006D5497 /* PBXTextBookmark */ = 1FBEBF3F1319F9ED006D5497 /* PBXTextBookmark */; + 1FBEBF401319F9ED006D5497 /* PBXTextBookmark */ = 1FBEBF401319F9ED006D5497 /* PBXTextBookmark */; + 1FBEBFAD1319FE92006D5497 /* PBXTextBookmark */ = 1FBEBFAD1319FE92006D5497 /* PBXTextBookmark */; + 1FBEBFFD131AA714006D5497 /* XCBuildMessageTextBookmark */ = 1FBEBFFD131AA714006D5497 /* XCBuildMessageTextBookmark */; + 1FBEBFFE131AA714006D5497 /* PBXTextBookmark */ = 1FBEBFFE131AA714006D5497 /* PBXTextBookmark */; + 1FBEC001131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC001131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC002131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC002131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC003131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC003131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC004131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC004131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC005131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC005131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC006131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC006131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC007131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC007131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC00A131AA739006D5497 /* PBXTextBookmark */ = 1FBEC00A131AA739006D5497 /* PBXTextBookmark */; + 1FBEC00D131AA74F006D5497 /* PBXTextBookmark */ = 1FBEC00D131AA74F006D5497 /* PBXTextBookmark */; + 1FBEC010131AA773006D5497 /* PBXTextBookmark */ = 1FBEC010131AA773006D5497 /* PBXTextBookmark */; + 1FBEC011131AA773006D5497 /* PBXTextBookmark */ = 1FBEC011131AA773006D5497 /* PBXTextBookmark */; + 1FBEC012131AA773006D5497 /* PBXTextBookmark */ = 1FBEC012131AA773006D5497 /* PBXTextBookmark */; + 1FBEC015131AA78E006D5497 /* PBXTextBookmark */ = 1FBEC015131AA78E006D5497 /* PBXTextBookmark */; + 1FBEC016131AA78E006D5497 /* PBXTextBookmark */ = 1FBEC016131AA78E006D5497 /* PBXTextBookmark */; + 1FBEC017131AA78E006D5497 /* PBXTextBookmark */ = 1FBEC017131AA78E006D5497 /* PBXTextBookmark */; + 1FBEC01A131AA799006D5497 /* PBXTextBookmark */ = 1FBEC01A131AA799006D5497 /* PBXTextBookmark */; + 1FBEC01D131AA7B8006D5497 /* PBXTextBookmark */ = 1FBEC01D131AA7B8006D5497 /* PBXTextBookmark */; + 1FBEC020131AA7F1006D5497 /* PBXTextBookmark */ = 1FBEC020131AA7F1006D5497 /* PBXTextBookmark */; + 1FBEC023131AA82B006D5497 /* PBXTextBookmark */ = 1FBEC023131AA82B006D5497 /* PBXTextBookmark */; + 1FBEC026131AF718006D5497 /* PBXTextBookmark */ = 1FBEC026131AF718006D5497 /* PBXTextBookmark */; + 1FBEC029131AF724006D5497 /* PBXTextBookmark */ = 1FBEC029131AF724006D5497 /* PBXTextBookmark */; + 1FBEC02C131AF749006D5497 /* PBXTextBookmark */ = 1FBEC02C131AF749006D5497 /* PBXTextBookmark */; + 1FBEC02F131AF752006D5497 /* PBXTextBookmark */ = 1FBEC02F131AF752006D5497 /* PBXTextBookmark */; + 1FBEC031131AFA87006D5497 /* PBXTextBookmark */ = 1FBEC031131AFA87006D5497 /* PBXTextBookmark */; + 1FBEC032131AFA87006D5497 /* PBXTextBookmark */ = 1FBEC032131AFA87006D5497 /* PBXTextBookmark */; + 1FBEC033131AFA87006D5497 /* PBXTextBookmark */ = 1FBEC033131AFA87006D5497 /* PBXTextBookmark */; + 1FBEC034131AFA87006D5497 /* PBXTextBookmark */ = 1FBEC034131AFA87006D5497 /* PBXTextBookmark */; + 1FBEC035131AFA87006D5497 /* PBXTextBookmark */ = 1FBEC035131AFA87006D5497 /* PBXTextBookmark */; + 1FBEC036131AFA87006D5497 /* PBXTextBookmark */ = 1FBEC036131AFA87006D5497 /* PBXTextBookmark */; + 1FBEC037131AFC6B006D5497 /* PBXTextBookmark */ = 1FBEC037131AFC6B006D5497 /* PBXTextBookmark */; + 1FBEC038131AFD26006D5497 /* PBXTextBookmark */ = 1FBEC038131AFD26006D5497 /* PBXTextBookmark */; + 1FBEC039131AFD26006D5497 /* PBXTextBookmark */ = 1FBEC039131AFD26006D5497 /* PBXTextBookmark */; + 1FBEC03A131AFD26006D5497 /* PBXTextBookmark */ = 1FBEC03A131AFD26006D5497 /* PBXTextBookmark */; + 1FBEC03B131AFD26006D5497 /* PBXTextBookmark */ = 1FBEC03B131AFD26006D5497 /* PBXTextBookmark */; + 1FBEC03C131AFD26006D5497 /* PBXTextBookmark */ = 1FBEC03C131AFD26006D5497 /* PBXTextBookmark */; + 1FBEC03D131AFDBE006D5497 /* PBXTextBookmark */ = 1FBEC03D131AFDBE006D5497 /* PBXTextBookmark */; + 1FBEC03E131AFEC7006D5497 /* PBXTextBookmark */ = 1FBEC03E131AFEC7006D5497 /* PBXTextBookmark */; + 1FBEC03F131B00EA006D5497 /* PBXTextBookmark */ = 1FBEC03F131B00EA006D5497 /* PBXTextBookmark */; + 1FBEC040131B00EA006D5497 /* PBXTextBookmark */ = 1FBEC040131B00EA006D5497 /* PBXTextBookmark */; + 1FBEC041131B00EA006D5497 /* PBXTextBookmark */ = 1FBEC041131B00EA006D5497 /* PBXTextBookmark */; + 1FBEC042131B01D3006D5497 /* PBXTextBookmark */ = 1FBEC042131B01D3006D5497 /* PBXTextBookmark */; + 1FBEC043131B0346006D5497 /* PBXTextBookmark */ = 1FBEC043131B0346006D5497 /* PBXTextBookmark */; + 1FBEC052131B04DE006D5497 /* PBXTextBookmark */ = 1FBEC052131B04DE006D5497 /* PBXTextBookmark */; + 1FBEC053131B04DE006D5497 /* XCBuildMessageTextBookmark */ = 1FBEC053131B04DE006D5497 /* XCBuildMessageTextBookmark */; + 1FBEC054131B04DE006D5497 /* PBXTextBookmark */ = 1FBEC054131B04DE006D5497 /* PBXTextBookmark */; + 1FBEC059131B085D006D5497 /* PBXTextBookmark */ = 1FBEC059131B085D006D5497 /* PBXTextBookmark */; + 1FBEC05A131B085D006D5497 /* PBXTextBookmark */ = 1FBEC05A131B085D006D5497 /* PBXTextBookmark */; + 1FBEC05B131B085D006D5497 /* PBXTextBookmark */ = 1FBEC05B131B085D006D5497 /* PBXTextBookmark */; + 1FBEC05C131B085D006D5497 /* PBXTextBookmark */ = 1FBEC05C131B085D006D5497 /* PBXTextBookmark */; + 1FBEC05D131B085D006D5497 /* PBXTextBookmark */ = 1FBEC05D131B085D006D5497 /* PBXTextBookmark */; + 1FBEC05E131B085D006D5497 /* PBXTextBookmark */ = 1FBEC05E131B085D006D5497 /* PBXTextBookmark */; + 1FBEC05F131B085D006D5497 /* PBXTextBookmark */ = 1FBEC05F131B085D006D5497 /* PBXTextBookmark */; + 1FBEC060131B085D006D5497 /* PBXTextBookmark */ = 1FBEC060131B085D006D5497 /* PBXTextBookmark */; + 1FBEC061131B085D006D5497 /* PBXTextBookmark */ = 1FBEC061131B085D006D5497 /* PBXTextBookmark */; + 1FBEC062131B0886006D5497 /* PBXTextBookmark */ = 1FBEC062131B0886006D5497 /* PBXTextBookmark */; + 1FBEC063131B0886006D5497 /* PBXTextBookmark */ = 1FBEC063131B0886006D5497 /* PBXTextBookmark */; + 1FBEC064131B0886006D5497 /* XCBuildMessageTextBookmark */ = 1FBEC064131B0886006D5497 /* XCBuildMessageTextBookmark */; + 1FBEC065131B0886006D5497 /* PBXTextBookmark */ = 1FBEC065131B0886006D5497 /* PBXTextBookmark */; + 1FBEC066131B0887006D5497 /* PBXTextBookmark */ = 1FBEC066131B0887006D5497 /* PBXTextBookmark */; + 1FBEC069131B088B006D5497 /* PBXTextBookmark */ = 1FBEC069131B088B006D5497 /* PBXTextBookmark */; + 1FBEC06A131B088B006D5497 /* XCBuildMessageTextBookmark */ = 1FBEC06A131B088B006D5497 /* XCBuildMessageTextBookmark */; + 1FBEC06B131B088B006D5497 /* PBXTextBookmark */ = 1FBEC06B131B088B006D5497 /* PBXTextBookmark */; + 1FBEC06C131B0890006D5497 /* PBXTextBookmark */ = 1FBEC06C131B0890006D5497 /* PBXTextBookmark */; + 1FBEC06D131B0890006D5497 /* XCBuildMessageTextBookmark */ = 1FBEC06D131B0890006D5497 /* XCBuildMessageTextBookmark */; + 1FBEC06E131B0890006D5497 /* PBXTextBookmark */ = 1FBEC06E131B0890006D5497 /* PBXTextBookmark */; + 1FBEC071131B08D5006D5497 /* PBXTextBookmark */ = 1FBEC071131B08D5006D5497 /* PBXTextBookmark */; + 1FBEC074131B08E9006D5497 /* PBXTextBookmark */ = 1FBEC074131B08E9006D5497 /* PBXTextBookmark */; + 1FBEC075131B08E9006D5497 /* PBXTextBookmark */ = 1FBEC075131B08E9006D5497 /* PBXTextBookmark */; + 1FBEC078131B08F9006D5497 /* PBXTextBookmark */ = 1FBEC078131B08F9006D5497 /* PBXTextBookmark */; + 1FBEC07B131B0941006D5497 /* PBXTextBookmark */ = 1FBEC07B131B0941006D5497 /* PBXTextBookmark */; + 1FBEC07C131B0941006D5497 /* PBXTextBookmark */ = 1FBEC07C131B0941006D5497 /* PBXTextBookmark */; + 1FBEC07D131B0941006D5497 /* PBXTextBookmark */ = 1FBEC07D131B0941006D5497 /* PBXTextBookmark */; + 1FBEC07E131B0941006D5497 /* PBXTextBookmark */ = 1FBEC07E131B0941006D5497 /* PBXTextBookmark */; + 1FBEC07F131B094B006D5497 /* PBXTextBookmark */ = 1FBEC07F131B094B006D5497 /* PBXTextBookmark */; + 1FBEC080131B094B006D5497 /* XCBuildMessageTextBookmark */ = 1FBEC080131B094B006D5497 /* XCBuildMessageTextBookmark */; + 1FBEC081131B094B006D5497 /* PBXTextBookmark */ = 1FBEC081131B094B006D5497 /* PBXTextBookmark */; + 1FBEC082131B094D006D5497 /* PBXTextBookmark */ = 1FBEC082131B094D006D5497 /* PBXTextBookmark */; + 1FBEC083131B09C6006D5497 /* PBXTextBookmark */ = 1FBEC083131B09C6006D5497 /* PBXTextBookmark */; + 1FBEC084131B09C6006D5497 /* PBXTextBookmark */ = 1FBEC084131B09C6006D5497 /* PBXTextBookmark */; + 1FBEC085131B09C6006D5497 /* PBXTextBookmark */ = 1FBEC085131B09C6006D5497 /* PBXTextBookmark */; + 1FBEC088131B0A14006D5497 /* PBXTextBookmark */ = 1FBEC088131B0A14006D5497 /* PBXTextBookmark */; + 1FBEC08B131B0A29006D5497 /* PBXTextBookmark */ = 1FBEC08B131B0A29006D5497 /* PBXTextBookmark */; + 1FBEC090131B0A9C006D5497 /* PBXTextBookmark */ = 1FBEC090131B0A9C006D5497 /* PBXTextBookmark */; + 1FBEC091131B0C04006D5497 /* PBXTextBookmark */ = 1FBEC091131B0C04006D5497 /* PBXTextBookmark */; + 1FBEC092131B0C04006D5497 /* PBXTextBookmark */ = 1FBEC092131B0C04006D5497 /* PBXTextBookmark */; + 1FBEC093131B0C04006D5497 /* PBXTextBookmark */ = 1FBEC093131B0C04006D5497 /* PBXTextBookmark */; + 1FBEC094131B0C04006D5497 /* PBXTextBookmark */ = 1FBEC094131B0C04006D5497 /* PBXTextBookmark */; + 1FBEC095131B0C04006D5497 /* PBXTextBookmark */ = 1FBEC095131B0C04006D5497 /* PBXTextBookmark */; + 1FBEC096131B0C44006D5497 /* PBXTextBookmark */ = 1FBEC096131B0C44006D5497 /* PBXTextBookmark */; + 1FBEC097131B0C44006D5497 /* PBXTextBookmark */ = 1FBEC097131B0C44006D5497 /* PBXTextBookmark */; + 1FBEC098131B0C44006D5497 /* PBXTextBookmark */ = 1FBEC098131B0C44006D5497 /* PBXTextBookmark */; + 1FBEC099131B0C44006D5497 /* PBXTextBookmark */ = 1FBEC099131B0C44006D5497 /* PBXTextBookmark */; + 1FBEC0A0131B0C9D006D5497 /* PBXTextBookmark */ = 1FBEC0A0131B0C9D006D5497 /* PBXTextBookmark */; + 1FBEC0A1131B0C9D006D5497 /* PBXTextBookmark */ = 1FBEC0A1131B0C9D006D5497 /* PBXTextBookmark */; + 1FBEC0A2131B0C9D006D5497 /* PBXTextBookmark */ = 1FBEC0A2131B0C9D006D5497 /* PBXTextBookmark */; + 1FBEC0A9131B0DF1006D5497 /* PBXTextBookmark */ = 1FBEC0A9131B0DF1006D5497 /* PBXTextBookmark */; + 1FBEC0AA131B0DF1006D5497 /* PBXTextBookmark */ = 1FBEC0AA131B0DF1006D5497 /* PBXTextBookmark */; + 1FBEC0AB131B0DF1006D5497 /* PBXTextBookmark */ = 1FBEC0AB131B0DF1006D5497 /* PBXTextBookmark */; + 1FBEC0B1131B0E5E006D5497 /* PBXTextBookmark */ = 1FBEC0B1131B0E5E006D5497 /* PBXTextBookmark */; + 1FBEC0B4131B0F17006D5497 /* PBXTextBookmark */ = 1FBEC0B4131B0F17006D5497 /* PBXTextBookmark */; + 1FBEC0B7131B0F31006D5497 /* PBXTextBookmark */ = 1FBEC0B7131B0F31006D5497 /* PBXTextBookmark */; + 1FBEC0BA131B0F8B006D5497 /* PBXTextBookmark */ = 1FBEC0BA131B0F8B006D5497 /* PBXTextBookmark */; + 1FBEC0BD131B0FAD006D5497 /* PBXTextBookmark */ = 1FBEC0BD131B0FAD006D5497 /* PBXTextBookmark */; + 1FBEC0C5131B100A006D5497 /* PBXTextBookmark */ = 1FBEC0C5131B100A006D5497 /* PBXTextBookmark */; + 1FBEC0C8131B103C006D5497 /* PBXTextBookmark */ = 1FBEC0C8131B103C006D5497 /* PBXTextBookmark */; + 1FBEC0CB131B1081006D5497 /* PBXTextBookmark */ = 1FBEC0CB131B1081006D5497 /* PBXTextBookmark */; + 1FBEC0CC131B1081006D5497 /* PBXTextBookmark */ = 1FBEC0CC131B1081006D5497 /* PBXTextBookmark */; + 1FBEC0CD131B1081006D5497 /* PBXTextBookmark */ = 1FBEC0CD131B1081006D5497 /* PBXTextBookmark */; + 1FBEC0D0131B10CE006D5497 /* PBXTextBookmark */ = 1FBEC0D0131B10CE006D5497 /* PBXTextBookmark */; + 1FBEC0D1131B10CE006D5497 /* PBXTextBookmark */ = 1FBEC0D1131B10CE006D5497 /* PBXTextBookmark */; + 1FBEC0D2131B10CE006D5497 /* PBXTextBookmark */ = 1FBEC0D2131B10CE006D5497 /* PBXTextBookmark */; + 1FBEC0D9131B1173006D5497 /* PBXTextBookmark */ = 1FBEC0D9131B1173006D5497 /* PBXTextBookmark */; + 1FBEC0DC131B117D006D5497 /* PBXTextBookmark */ = 1FBEC0DC131B117D006D5497 /* PBXTextBookmark */; + 1FBEC0DF131B1191006D5497 /* PBXTextBookmark */ = 1FBEC0DF131B1191006D5497 /* PBXTextBookmark */; + 1FBEC0E6131B1215006D5497 /* PBXTextBookmark */ = 1FBEC0E6131B1215006D5497 /* PBXTextBookmark */; + 1FBEC0E9131B12CC006D5497 /* PBXTextBookmark */ = 1FBEC0E9131B12CC006D5497 /* PBXTextBookmark */; + 1FBEC0EC131B12D5006D5497 /* PBXTextBookmark */ = 1FBEC0EC131B12D5006D5497 /* PBXTextBookmark */; + 1FBEC0EF131B12ED006D5497 /* PBXTextBookmark */ = 1FBEC0EF131B12ED006D5497 /* PBXTextBookmark */; + 1FBEC0F2131B1301006D5497 /* PBXTextBookmark */ = 1FBEC0F2131B1301006D5497 /* PBXTextBookmark */; + 1FBEC0F3131B1474006D5497 /* PBXTextBookmark */ = 1FBEC0F3131B1474006D5497 /* PBXTextBookmark */; + 1FBEC0F4131B147B006D5497 /* PBXTextBookmark */ = 1FBEC0F4131B147B006D5497 /* PBXTextBookmark */; + 1FBEC0F5131B149B006D5497 /* PBXTextBookmark */ = 1FBEC0F5131B149B006D5497 /* PBXTextBookmark */; + 1FBEC0F6131B149B006D5497 /* PBXTextBookmark */ = 1FBEC0F6131B149B006D5497 /* PBXTextBookmark */; + 1FBEC107131B21E7006D5497 /* PBXTextBookmark */ = 1FBEC107131B21E7006D5497 /* PBXTextBookmark */; + 1FBEC108131B21E7006D5497 /* PBXTextBookmark */ = 1FBEC108131B21E7006D5497 /* PBXTextBookmark */; + 1FBEC109131B21E7006D5497 /* PBXTextBookmark */ = 1FBEC109131B21E7006D5497 /* PBXTextBookmark */; + 1FBEC10A131B21E7006D5497 /* PBXTextBookmark */ = 1FBEC10A131B21E7006D5497 /* PBXTextBookmark */; + 1FBEC10B131B21E7006D5497 /* PBXTextBookmark */ = 1FBEC10B131B21E7006D5497 /* PBXTextBookmark */; + 1FBEC10E131B21FB006D5497 /* PBXTextBookmark */ = 1FBEC10E131B21FB006D5497 /* PBXTextBookmark */; + 1FBEC10F131B21FB006D5497 /* PBXTextBookmark */ = 1FBEC10F131B21FB006D5497 /* PBXTextBookmark */; + 1FBEC112131B2298006D5497 /* PBXTextBookmark */ = 1FBEC112131B2298006D5497 /* PBXTextBookmark */; + 1FBEC113131B2298006D5497 /* PBXTextBookmark */ = 1FBEC113131B2298006D5497 /* PBXTextBookmark */; + 1FBEC114131B2298006D5497 /* PBXTextBookmark */ = 1FBEC114131B2298006D5497 /* PBXTextBookmark */; + 1FBEC117131B22BF006D5497 /* PBXTextBookmark */ = 1FBEC117131B22BF006D5497 /* PBXTextBookmark */; + 1FBEC11A131B2423006D5497 /* PBXTextBookmark */ = 1FBEC11A131B2423006D5497 /* PBXTextBookmark */; + 1FBEC121131B2559006D5497 /* PBXTextBookmark */ = 1FBEC121131B2559006D5497 /* PBXTextBookmark */; + 1FBEC122131B2559006D5497 /* PBXTextBookmark */ = 1FBEC122131B2559006D5497 /* PBXTextBookmark */; + 1FBEC123131B2559006D5497 /* PBXTextBookmark */ = 1FBEC123131B2559006D5497 /* PBXTextBookmark */; + 1FBEC124131B2559006D5497 /* PBXTextBookmark */ = 1FBEC124131B2559006D5497 /* PBXTextBookmark */; + 1FBEC125131B2559006D5497 /* PBXTextBookmark */ = 1FBEC125131B2559006D5497 /* PBXTextBookmark */; + 1FBEC126131B2559006D5497 /* PBXTextBookmark */ = 1FBEC126131B2559006D5497 /* PBXTextBookmark */; + 1FBEC127131B255B006D5497 /* PBXTextBookmark */ = 1FBEC127131B255B006D5497 /* PBXTextBookmark */; + 1FBEC128131B255B006D5497 /* XCBuildMessageTextBookmark */ = 1FBEC128131B255B006D5497 /* XCBuildMessageTextBookmark */; + 1FBEC129131B255B006D5497 /* PBXTextBookmark */ = 1FBEC129131B255B006D5497 /* PBXTextBookmark */; + 1FBEC12C131B2581006D5497 /* PBXTextBookmark */ = 1FBEC12C131B2581006D5497 /* PBXTextBookmark */; + 1FBEC12D131B2581006D5497 /* PBXTextBookmark */ = 1FBEC12D131B2581006D5497 /* PBXTextBookmark */; + 1FBEC12E131B2581006D5497 /* PBXTextBookmark */ = 1FBEC12E131B2581006D5497 /* PBXTextBookmark */; + 1FBEC12F131B2581006D5497 /* PBXTextBookmark */ = 1FBEC12F131B2581006D5497 /* PBXTextBookmark */; + 1FBEC134131B262F006D5497 /* PBXTextBookmark */ = 1FBEC134131B262F006D5497 /* PBXTextBookmark */; + 1FBEC135131B265A006D5497 /* PBXTextBookmark */ = 1FBEC135131B265A006D5497 /* PBXTextBookmark */; + 1FBEC13C131B26A1006D5497 /* PBXTextBookmark */ = 1FBEC13C131B26A1006D5497 /* PBXTextBookmark */; + 1FBEC13D131B26A1006D5497 /* PBXTextBookmark */ = 1FBEC13D131B26A1006D5497 /* PBXTextBookmark */; + 1FBEC13E131B26A1006D5497 /* PBXTextBookmark */ = 1FBEC13E131B26A1006D5497 /* PBXTextBookmark */; + 1FBEC141131B2757006D5497 /* PBXTextBookmark */ = 1FBEC141131B2757006D5497 /* PBXTextBookmark */; + 1FBEC142131B2757006D5497 /* PBXTextBookmark */ = 1FBEC142131B2757006D5497 /* PBXTextBookmark */; + 1FBEC145131B2B2E006D5497 /* PBXTextBookmark */ = 1FBEC145131B2B2E006D5497 /* PBXTextBookmark */; + 1FBEC148131B2B7E006D5497 /* PBXTextBookmark */ = 1FBEC148131B2B7E006D5497 /* PBXTextBookmark */; + 1FBEC14B131B2BAA006D5497 /* PBXTextBookmark */ = 1FBEC14B131B2BAA006D5497 /* PBXTextBookmark */; + 1FBEC14E131B2BE6006D5497 /* PBXTextBookmark */ = 1FBEC14E131B2BE6006D5497 /* PBXTextBookmark */; + 1FBEC151131B2C52006D5497 /* PBXTextBookmark */ = 1FBEC151131B2C52006D5497 /* PBXTextBookmark */; + }; + sourceControlManager = 1FA0569D12F0B528003F1373 /* Source Control */; + userBuildSettings = { + }; + }; +} diff --git a/games/Pong/Pong.xcodeproj/project.pbxproj b/games/Pong/Pong.xcodeproj/project.pbxproj new file mode 100755 index 0000000..de1410d --- /dev/null +++ b/games/Pong/Pong.xcodeproj/project.pbxproj @@ -0,0 +1,286 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 45; + objects = { + +/* Begin PBXBuildFile section */ + 1D3623260D0F684500981E51 /* PongAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3623250D0F684500981E51 /* PongAppDelegate.m */; }; + 1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; }; + 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; }; + 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; }; + 1FBEBF481319FC56006D5497 /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1FBEBF471319FC56006D5497 /* CFNetwork.framework */; }; + 1FBEBF4D1319FCDE006D5497 /* AsyncSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = 1FBEBF4C1319FCDE006D5497 /* AsyncSocket.m */; }; + 1FBEBFEF131A97F8006D5497 /* GGSNetwork.m in Sources */ = {isa = PBXBuildFile; fileRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; }; + 288765A50DF7441C002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765A40DF7441C002DB57D /* CoreGraphics.framework */; }; + 2899E5220DE3E06400AC0155 /* PongViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 2899E5210DE3E06400AC0155 /* PongViewController.xib */; }; + 28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 28AD733E0D9D9553002E5188 /* MainWindow.xib */; }; + 28D7ACF80DDB3853001CB0EB /* PongViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 1D30AB110D05D00D00671497 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + 1D3623240D0F684500981E51 /* PongAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PongAppDelegate.h; sourceTree = ""; }; + 1D3623250D0F684500981E51 /* PongAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PongAppDelegate.m; sourceTree = ""; }; + 1D6058910D05DD3D006BFB54 /* Pong.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Pong.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; + 1FBEBF471319FC56006D5497 /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = System/Library/Frameworks/CFNetwork.framework; sourceTree = SDKROOT; }; + 1FBEBF4B1319FCDE006D5497 /* AsyncSocket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AsyncSocket.h; sourceTree = ""; }; + 1FBEBF4C1319FCDE006D5497 /* AsyncSocket.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AsyncSocket.m; sourceTree = ""; }; + 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GGSNetwork.h; sourceTree = ""; }; + 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GGSNetwork.m; sourceTree = ""; }; + 1FBEC030131AF83B006D5497 /* GGSDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GGSDelegate.h; sourceTree = ""; }; + 288765A40DF7441C002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; + 2899E5210DE3E06400AC0155 /* PongViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PongViewController.xib; sourceTree = ""; }; + 28AD733E0D9D9553002E5188 /* MainWindow.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MainWindow.xib; sourceTree = ""; }; + 28D7ACF60DDB3853001CB0EB /* PongViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PongViewController.h; sourceTree = ""; }; + 28D7ACF70DDB3853001CB0EB /* PongViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PongViewController.m; sourceTree = ""; }; + 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* Pong_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Pong_Prefix.pch; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Pong-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Pong-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 1D60588F0D05DD3D006BFB54 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */, + 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */, + 288765A50DF7441C002DB57D /* CoreGraphics.framework in Frameworks */, + 1FBEBF481319FC56006D5497 /* CFNetwork.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 1FBEBF4B1319FCDE006D5497 /* AsyncSocket.h */, + 1FBEBF4C1319FCDE006D5497 /* AsyncSocket.m */, + 1FA0569C12F0B528003F1373 /* Views */, + 1D3623240D0F684500981E51 /* PongAppDelegate.h */, + 1D3623250D0F684500981E51 /* PongAppDelegate.m */, + 28D7ACF60DDB3853001CB0EB /* PongViewController.h */, + 28D7ACF70DDB3853001CB0EB /* PongViewController.m */, + 1FBEC030131AF83B006D5497 /* GGSDelegate.h */, + 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */, + 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */, + ); + path = Classes; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 1D6058910D05DD3D006BFB54 /* Pong.app */, + ); + name = Products; + sourceTree = ""; + }; + 1FA0569C12F0B528003F1373 /* Views */ = { + isa = PBXGroup; + children = ( + ); + name = Views; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* CustomTemplate */ = { + isa = PBXGroup; + children = ( + 080E96DDFE201D6D7F000001 /* Classes */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = CustomTemplate; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 32CA4F630368D1EE00C91783 /* Pong_Prefix.pch */, + 29B97316FDCFA39411CA2CEA /* main.m */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 2899E5210DE3E06400AC0155 /* PongViewController.xib */, + 28AD733E0D9D9553002E5188 /* MainWindow.xib */, + 8D1107310486CEB800E47090 /* Pong-Info.plist */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */, + 1D30AB110D05D00D00671497 /* Foundation.framework */, + 288765A40DF7441C002DB57D /* CoreGraphics.framework */, + 1FBEBF471319FC56006D5497 /* CFNetwork.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 1D6058900D05DD3D006BFB54 /* Pong */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "Pong" */; + buildPhases = ( + 1D60588D0D05DD3D006BFB54 /* Resources */, + 1D60588E0D05DD3D006BFB54 /* Sources */, + 1D60588F0D05DD3D006BFB54 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Pong; + productName = Pong; + productReference = 1D6058910D05DD3D006BFB54 /* Pong.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Pong" */; + compatibilityVersion = "Xcode 3.1"; + developmentRegion = English; + hasScannedForEncodings = 1; + knownRegions = ( + English, + Japanese, + French, + German, + ); + mainGroup = 29B97314FDCFA39411CA2CEA /* CustomTemplate */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 1D6058900D05DD3D006BFB54 /* Pong */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 1D60588D0D05DD3D006BFB54 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */, + 2899E5220DE3E06400AC0155 /* PongViewController.xib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 1D60588E0D05DD3D006BFB54 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1D60589B0D05DD56006BFB54 /* main.m in Sources */, + 1D3623260D0F684500981E51 /* PongAppDelegate.m in Sources */, + 28D7ACF80DDB3853001CB0EB /* PongViewController.m in Sources */, + 1FBEBF4D1319FCDE006D5497 /* AsyncSocket.m in Sources */, + 1FBEBFEF131A97F8006D5497 /* GGSNetwork.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 1D6058940D05DD3E006BFB54 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = Pong_Prefix.pch; + INFOPLIST_FILE = "Pong-Info.plist"; + PRODUCT_NAME = Pong; + }; + name = Debug; + }; + 1D6058950D05DD3E006BFB54 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + COPY_PHASE_STRIP = YES; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = Pong_Prefix.pch; + INFOPLIST_FILE = "Pong-Info.plist"; + PRODUCT_NAME = Pong; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer: Richard Pannek (G62Q88N36M)"; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 3.0; + PREBINDING = NO; + "PROVISIONING_PROFILE[sdk=iphoneos*]" = "6A9A419F-E593-49FC-98DE-2B027A0982C3"; + SDKROOT = iphoneos; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; + PREBINDING = NO; + SDKROOT = iphoneos; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "Pong" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1D6058940D05DD3E006BFB54 /* Debug */, + 1D6058950D05DD3E006BFB54 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Pong" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/games/Pong/PongViewController.xib b/games/Pong/PongViewController.xib new file mode 100644 index 0000000..37e8d08 --- /dev/null +++ b/games/Pong/PongViewController.xib @@ -0,0 +1,635 @@ + + + + 1056 + 10J567 + 823 + 1038.35 + 462.00 + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + 132 + + + YES + + + + YES + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + YES + + YES + + + YES + + + + YES + + IBFilesOwner + IBCocoaTouchFramework + + + IBFirstResponder + IBCocoaTouchFramework + + + + 301 + + YES + + + 260 + {{20, 99}, {20, 90}} + + + 3 + MQA + + 2 + + + IBCocoaTouchFramework + + + + 256 + {{221, 135}, {20, 20}} + + + 3 + MQA + + + IBCocoaTouchFramework + + + + 260 + {{440, 99}, {20, 90}} + + + 3 + MQA + + + IBCocoaTouchFramework + + + + 301 + {{129, 227}, {203, 43}} + + NO + YES + 7 + NO + IBCocoaTouchFramework + Tap to begin + + Helvetica + 36 + 16 + + + 1 + MCAwIDAAA + + + 3 + MQA + + + 3 + MC42NjY2NjY2NjY3AA + + {2, 1} + 1 + 10 + + + + 292 + {{86, 20}, {42, 21}} + + NO + YES + 7 + NO + IBCocoaTouchFramework + 0 + + + 1 + 10 + 2 + + + + 292 + {{340, 20}, {42, 21}} + + NO + YES + 7 + NO + IBCocoaTouchFramework + 0 + + + 1 + 10 + + + {480, 300} + + + 2 + MCAwLjg5NDExNzcxMyAwLjA2Mjc0NTEwMTc1AA + + NO + YES + + 3 + + IBCocoaTouchFramework + + + + + YES + + + view + + + + 29 + + + + tapToBegin + + + + 30 + + + + pointsP2 + + + + 31 + + + + pointsP1 + + + + 32 + + + + player2View + + + + 33 + + + + player1View + + + + 34 + + + + ballView + + + + 35 + + + + + YES + + 0 + + + + + + -1 + + + File's Owner + + + -2 + + + + + 6 + + + YES + + + + + + + + + + + 8 + + + YES + + + Player1 + + + 9 + + + Player2 + + + 10 + + + Ball + + + 20 + + + + + 22 + + + + + 23 + + + + + + + YES + + YES + -1.CustomClassName + -2.CustomClassName + 10.IBPluginDependency + 10.IBViewBoundsToFrameTransform + 20.IBPluginDependency + 20.IBViewBoundsToFrameTransform + 22.IBPluginDependency + 22.IBViewBoundsToFrameTransform + 23.IBPluginDependency + 23.IBViewBoundsToFrameTransform + 6.IBEditorWindowLastContentRect + 6.IBPluginDependency + 8.IBPluginDependency + 8.IBViewBoundsToFrameTransform + 9.IBPluginDependency + 9.IBViewBoundsToFrameTransform + + + YES + PongViewController + UIResponder + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + P4AAAL+AAABDCgAAw2wAAA + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + P4AAAL+AAABDAQAAwyQAAA + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + AUKsAABBoAAAA + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + P4AAAL+AAABCtgAAwjAAAA + + {{546, 448}, {480, 300}} + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + P4AAAL+AAABBQAAAw4iAAA + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + P4AAAL+AAABDOQAAw7GAAA + + + + + YES + + + YES + + + + + YES + + + YES + + + + 35 + + + + YES + + PongViewController + UIViewController + + YES + + YES + ballView + player1View + player2View + pointsP1 + pointsP2 + tapToBegin + + + YES + UIView + UIView + UIView + UILabel + UILabel + UIView + + + + YES + + YES + ballView + player1View + player2View + pointsP1 + pointsP2 + tapToBegin + + + YES + + ballView + UIView + + + player1View + UIView + + + player2View + UIView + + + pointsP1 + UILabel + + + pointsP2 + UILabel + + + tapToBegin + UIView + + + + + IBProjectSource + Classes/PongViewController.h + + + + + YES + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + UIKit.framework/Headers/UIAccessibility.h + + + + NSObject + + IBFrameworkSource + UIKit.framework/Headers/UINibLoading.h + + + + NSObject + + IBFrameworkSource + UIKit.framework/Headers/UIResponder.h + + + + UILabel + UIView + + IBFrameworkSource + UIKit.framework/Headers/UILabel.h + + + + UIResponder + NSObject + + + + UISearchBar + UIView + + IBFrameworkSource + UIKit.framework/Headers/UISearchBar.h + + + + UISearchDisplayController + NSObject + + IBFrameworkSource + UIKit.framework/Headers/UISearchDisplayController.h + + + + UIView + + IBFrameworkSource + UIKit.framework/Headers/UIPrintFormatter.h + + + + UIView + + IBFrameworkSource + UIKit.framework/Headers/UITextField.h + + + + UIView + UIResponder + + IBFrameworkSource + UIKit.framework/Headers/UIView.h + + + + UIViewController + + IBFrameworkSource + UIKit.framework/Headers/UINavigationController.h + + + + UIViewController + + IBFrameworkSource + UIKit.framework/Headers/UIPopoverController.h + + + + UIViewController + + IBFrameworkSource + UIKit.framework/Headers/UISplitViewController.h + + + + UIViewController + + IBFrameworkSource + UIKit.framework/Headers/UITabBarController.h + + + + UIViewController + UIResponder + + IBFrameworkSource + UIKit.framework/Headers/UIViewController.h + + + + + 0 + IBCocoaTouchFramework + + com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS + + + + com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3 + + + YES + Pong.xcodeproj + 3 + 132 + + diff --git a/games/Pong/Pong_Prefix.pch b/games/Pong/Pong_Prefix.pch new file mode 100644 index 0000000..25b822d --- /dev/null +++ b/games/Pong/Pong_Prefix.pch @@ -0,0 +1,8 @@ +// +// Prefix header for all source files of the 'Pong' target in the 'Pong' project +// + +#ifdef __OBJC__ + #import + #import +#endif diff --git a/games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Info.plist b/games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Info.plist new file mode 100644 index 0000000..de6f862 --- /dev/null +++ b/games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Info.plist @@ -0,0 +1,18 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.net.jeena.apps.pong + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleVersion + 1.0 + + diff --git a/games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Resources/DWARF/Pong b/games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Resources/DWARF/Pong new file mode 100644 index 0000000000000000000000000000000000000000..8fb4e503f21f07ecb3bedd8bf237b29f45f36833 GIT binary patch literal 188683 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 + + + + files + + MainWindow.nib + + AdpjLFoatIDWilIi9PNzfvh5IU8= + + PkgInfo + + n57qDP4tZfLD1rCS43W0B4LQjzE= + + PongViewController.nib + + a2sktrUGsYaH1QDnZm8fJ+r++xo= + + embedded.mobileprovision + + AVW60ZyDGk5ugV2sUY1oGuuYkHo= + + + rules + + .* + + Info.plist + + omit + + weight + 10 + + ResourceRules.plist + + omit + + weight + 100 + + + + diff --git a/games/Pong/build/Debug-iphoneos/Pong.app/Info.plist b/games/Pong/build/Debug-iphoneos/Pong.app/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..08cae4c9fa4e8450d4d4002c37e5a414f3d30817 GIT binary patch literal 926 zcmah{%Tg0T6z%R21Vk7fDxhc(eBfi8JfJLHP{M>V5+IeC5RAxFGjo%)PI|_9p!ord zAJCN>+*oBXn*-tin3gsS>O9>YXB*42Hy zr?>A!|H*+td1!cK^wjAyW8)KN&rP1ckeIqSbLsMxtFzaxCvK|AROX>(=-SE}ZNS#j z@?yko2U?f1W^7un4W>LEr#09G$MqV(!y?p}%T0MO#x}qYMCS3DzDgNiV>`>t5w#;R zUZB=fS_7l$iR@4*r-w9*f<@}zXSNM|TQdp{4Xdu-Xpx)pL|mvxp6B`@*fAcM@?;F= zc-7UI6$)nRH#-_kc{s+iFTjdIy5m4aGnU+jCq((CEUz-o8c}0i|GOk7)P$_cTJH{d ziV(PwZ-MTCB`}M&7=@1`)tyFLovAHG%&~=#yk3N75%VF)73waBb={N`!hLKi$3yU| z)Pi-N3Ep;JVeoKl8Vfv!HV!5mDaw>jN9&W<6fbV@7;_`_NO;lN3=e#sO@rH^wHCb zDkO3Ul_vn4D%A4=#S_g%Hl9>5azG?ozp^4~5;}mLNR^Z7YATaT_r6tbnet32_b>l> z%I(0S9u!%v9-8v>f1c%`8XkCC5NAIv8MN~n%Xb-(cAJ7-{4gJFX zcnaUZ3)sLR-ovl(d;Asu#J@>586z`fmMCPN+#y-=fUFRMY!H)Jq)r^-k(cBRc}G5y dPvkTCE+MH)>XZ7V0n|POA4D|QiJc&g{sHv4A{qby literal 0 HcmV?d00001 diff --git a/games/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib b/games/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib new file mode 100644 index 0000000000000000000000000000000000000000..745066bc49ae0ea32174d7d4d945caaebb21004b GIT binary patch literal 1675 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 buk2S2D0e7#+qn_I<8j}l*?kW_l_&oPth5VG literal 0 HcmV?d00001 diff --git a/games/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist b/games/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist new file mode 100644 index 0000000..e7ec329 --- /dev/null +++ b/games/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist @@ -0,0 +1,25 @@ + + + + + rules + + .* + + Info.plist + + omit + + weight + 10 + + ResourceRules.plist + + omit + + weight + 100 + + + + diff --git a/games/Pong/build/Debug-iphoneos/Pong.app/_CodeSignature/CodeResources b/games/Pong/build/Debug-iphoneos/Pong.app/_CodeSignature/CodeResources new file mode 100644 index 0000000..a136eca --- /dev/null +++ b/games/Pong/build/Debug-iphoneos/Pong.app/_CodeSignature/CodeResources @@ -0,0 +1,44 @@ + + + + + files + + MainWindow.nib + + AdpjLFoatIDWilIi9PNzfvh5IU8= + + PkgInfo + + n57qDP4tZfLD1rCS43W0B4LQjzE= + + PongViewController.nib + + a2sktrUGsYaH1QDnZm8fJ+r++xo= + + embedded.mobileprovision + + AVW60ZyDGk5ugV2sUY1oGuuYkHo= + + + rules + + .* + + Info.plist + + omit + + weight + 10 + + ResourceRules.plist + + omit + + weight + 100 + + + + diff --git a/games/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision b/games/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision new file mode 100644 index 0000000000000000000000000000000000000000..ba032bcac88353736ea51d9810b10c525c9dc847 GIT binary patch literal 7780 zcmd5>d3+Pq+HSf4Z7HZ_heFtw(&o%eCdnXFX0oSEntfA{*|IcileB4zT%ceTh07K3 zvZz=D+!3KHf&wBcxQiF{B8Ut7;#EO51^v#n6bcvb^4IxbLKqHdEXh( zIB-g*+%ZkMrV9n4&Y8`P11+F&pfOV3WkXJC>!H~QU8P?4!fpAG32hYyzzrol}fwEtQN<^!DLEo zc2E_1rFck*L_)^nVP33^MdCFnJ|U5)>?*OjLT|H+;b0Pp+B8HwB#=tQ$4MmVbh?xl z%uCr=L@-QB%!yc>Po(NA;HV`KP|BsaA<$o&n;YVScex;&D$C0qAL8rF1iwL+PQkeK z93M>ueL+59PVl~9-FS&$0PW~Rf)*}v$0t(>IHR%(8IH;n4wn}jFS&XPnn~L2S_f7p z_|{QXbc(+=5(gV)C_s=BfR>UK?d#BE}k{EuAj+xAs-2 zl&01`2#4Kn1~VkRIxgVQ;+!s&)&*FT(N5MGReHo|XVXTzzRuNpPkrOPDk=csMr$msB|YUzuRap= zn(HgH7K*f_%WYvjV$&GZrjVz>u2Q2$m8CuK6z!y942p*#{DxqwVtz*?Tt#a&^@)r46PKh#M`*v=S~cgu_+Vs?!F$6+S%DroZ_?QSd>j{C>5W zRKb2rObM?k(rBoza7(HooV05-GDR(3QJu0HEv_hS4N<%)5DAzQ4x6StY_>S$3f}LM zl6FPfM^}>3u#U4URlcMm2H~|Nr}JV?V?%`;!F(WCTraC-)ubYk^fg4xl^Cv0rR&rF z21cbu>;OyF+7hbrh(r?5#HR5Hy~xfSY4gNSZ}O~I(;?-!fj;Ahy@wo^e1ZF-Wokxr6wA}wwOPhRMmI_8qSMR zrb=(MD(R@?BfPr0A&StJ1kf6lW(W_|(XoKcqIISTqs?ALFjT#)UQ%rhrsb>&SJ&9= zu8N?Oivn7UmRH+qQFR>=!x=B{*4iMPt!Ih}gT`y}BMeS?)jA);NTN}Rsi9n_(&`mb zR;?t{YLcWYm84Id_WN}yBMG+(;@}`$omNwlv_)wo$+SkGgcXEIi%vqpjji;1^yO&} ze0UBWnKq_%>DK-#3Nld>BOMSPRI+X*9YM8PWre)5Mn;44-zNe5-r>*^pJ{;4RxKSB8gA!3z+Y06(u zB@sa?!T}~?3hT8*jb3Ms(Qc!^_)0uDc11A(wmE?SpMP!La~F09v?1k;emZ3sb+VK#y^z~O2jf#GuE zA=+(?!+&^>h(Ner=WOuW(l-PpM8s-|BpgzRq!sFQ8=&TS;~un4`(UK?5DtTbx8eK* zuWoCYaXD)^9aL6jNUKyPwWP(Np`d_k0!WP0S<{t4MJW$Tr98^M+hITP(rw@&ZpAb6%JiosZ68BYRu)V zRd^!h4i4mdP6m0eMss@Elx5MJSB!&ZYw;!E-@XZHF0 zdN-MrrQ(=3MtS^xTxV8k;-F5hju*%Lq^3$k;bEyYYBiK=B@kZED3dC=qDECMRRwWl zgPf}H`&b2y)tB2WdaK^=aU$UW8?;3kLV~)SjKgP9>fKs{TU`a=j$~CiUl%6)>144% z1=310Dc2c-YI7FcAV5;eS}HPaDNANXSfbTC>%vn-!XmiQB~n)tOiJLE;T3S-O- zPOs-il8)Jzx-K3}{L3^6FF_T5lqQ+z$o16fY93~W(-m`kZ3pkI=@`rqYlA{|%5yNg z3c~rc&-$O!JAz{{90fcr!&xY)7%Jy6Rt~RO9Px2-29t6aPNPHzAJQ6RU%0v3@&viYPqw2%`VE2Dif-beEYBc-JT>!S&l z!-4NsSf89jrBWP`%4C>K!73OTf&m!26v*YM&&SfJkCq}Vb1N)BQJTg$lz_qFC{D-~ zESxJZSD+j!$7NDEE#qYh{FYdZlkrl35(uDua#YU9XS(cfXQ#= z7o~BG1w6ogsFcPLOb!&hg6E+>Ug3kXCzY~NxY*!USWLl7IUr-;@=9Uo3S5R`z{mOI zGL+$HmY3pk2ib?@A zBUm}~4G>x?!&tasq%xpjVIn0X7@71|elaP-0jWX;a5zODi$IOUc|^ejxq@TlIOd~e z9FHP&2kcFHVGl-ld#oZ@dwt&rqbc6cC&~!8OzqcK%Ls=gaTD!9sLVB;B2ewt_{`h25#c^%RH!XtyR@{No&njme<@^ zunsh4T>_1n-!^AuiZU}rgFwNx+EJ7Pi^=-d+A_TNd;nwV5%NgRK5(C`J}bZkL?6t+R5Xh_F}5ancK zHHx~!(pr?4*(efayglTv8~0q^df)6fuY`!bQ$F~}H1121S~hRt^L_kH5B2&p$NE5BQ}^@-ZE zFQ1&9{AB)?-?1ORRvUOKQLy=Z;<(b>ekUr%L5*K9p~aoyCvTsYZJw>_LQ z2Ki>!-NPoXSbU||(nsS}2fo*CTmX9GiELAHATc z_sNBZSRF|&LY^PK^rv9|z2BDn+;8KYH@1KNShr30Z+eINarB8_em-2i$+MqEFl)*p zZ+c{qKECa2=7{{)KfA;I$`9WAPdndVzx?HM4~FOT8d*5}>to;bJlrtYw-l29EF}N_ ztK{!}(;5NhKVaB@O8#D;2Yhsp`~_`Hw8mm7v65_Mxg7EvMdVTpRR}B>=-%G^UkcE_ zQ-Ku&xBaMnWBsz*?$)e)b?~c|O@rg3)Kl&muyc1F$3FP$<={Uq+Ap8Dds8PGVgdCVw70#pTcIGXK?P zvnKaI-@`{r9eA)Zf~0;CR-)XwjFqIht0EcI&&I)PB)Zik*L> zS!IZC8@pi)kk2jcd1}w$@FIo7xfU;WpH!_FasNMd`wWLap7Y}bcJ=6ktG9St4y;$PY1dO%Rp1FQa|!4s@Upu=d?*B>CeU4Iw+cZH$bz>!5dW6E?nwON zPlDQowYk6j9GX`;@tF%+H~-Ro#+);~CuC$k{m3KRQmzAQmOiyS zZyMN^G3JB8o>N!!FGXwm9$(s!wWsO)vGcEVE7$+BViURLi#>;&%csqHanZ{cErt<0 z?xzYz%*(R-Zks%1cFrA0amfBg^KSBW`@m!N)rA?K8g{+5?;KjNOdos6y&(sq)ymrbpJ74Iedp zS<9Q2rpuK_*4+8RYpSs#{dcJr=`X4udc1l2nUcQ!EOY+W#XyGL&V!GS`!>gQg!%Z> z?w~Pe3uw%K`YP>3H`9J*(~Z0@0{sQ*<`wp6qi*{v;IVDT|J7qXzx`Nm@9uE0^BuB) z(O{%7T2`UBqYzwwi+bI(RU2>s6951Z1tJx+p<@&LzX|l;DaGMOp3fch$o_#^^QoNg zC)dv|IVF4ARpB`OaNjuxFO`SSb$)RO$UNSs?4mjMZ_~-=7GK))p6`iaq1!)M@!H}3 zV|EUDY*|CsmD-2z-rGx#z5iBs<3~M$d*1DvI5(-=XVdR}{LJvIEspudNd-S~_|Tr^ zJv~J&3oo31V%f*$Ej!$1|NJiN#TVXxX{05x`PcP-uYC&Z!7ooQe7B@c zDH<~+@U$tuNh>=2E3LSt6#QGQXcUbW)IyxyC=$b*Z2#~guNV{ z;KZ$-;SijdjYYYj@I53cj`_qjNq+1Nj^Z(h6`VoKYf}(X@pyt}Q?RfW#!R)n(kKP0 zHesCr?gT`$ycuu8{)^SPCbN$Ar4Wg-^*{^M?QM|RMEn;6vUC#W;INu$TjCq5k=CT` z$uCPrxh2zTvo~k|t?Z*sKGrl}viG<0)rqYuhhVG z^cQ1$kJx$FsinvBv$mXQF(gi5xp%KV${q}AY1H-7twiZt5oA<-X z>D{6q?ocVm89qCNG-i4rjU4d1ANbS%Fg+5A#p_=ko1q4@bF4s=n}y_Gt0Oy$z<_Iw z+#IBP?*atYbf_EvDFHvMfuYxXvk_Ps6wD@SX659nVqNk(HSN83!aW5?<^$_>qwa_r zC_!GQE^XgJvpPdXX}`|Q%*>bp547uT(L~U>?c-?Y8}E$ySt(L zy^AJq-Y1$+F?4A559aBouMGQO)e_e;ho`>${Vyjc^emZld04u+kGqsyHmg_q(hKZw zW40uw9o)Ka-&?(AbdF_pW>$3)#U9!>cxdNo2Vd`dX8wXhqpp1OxpE;teDB4UbLdi0 z(c#s{&fPI(^%38^qgNhfvK!_t_~y~`J=X0Xw|*&dT=H6<(8xo<6|*bm(db@Vs&|{yrJf1kP_N%ck N-2+B`GUB=6{|7+cMV$Zu literal 0 HcmV?d00001 diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Info.plist b/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Info.plist new file mode 100644 index 0000000..de6f862 --- /dev/null +++ b/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Info.plist @@ -0,0 +1,18 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.net.jeena.apps.pong + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleVersion + 1.0 + + diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Resources/DWARF/Pong b/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Resources/DWARF/Pong new file mode 100644 index 0000000000000000000000000000000000000000..94c1fcba51580bd8a1986cc40bc353a8674d63b0 GIT binary patch literal 157884 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 quN#X?b5`bBv~FUl)^QPk!5iW@sF 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

hY!du_^C!38Y+%&ePq{du3 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 Z(r;0$0986}iy~{9gUg5g6uKNe{eLJ4_s#$S literal 0 HcmV?d00001 diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist b/games/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..a4462ae9365b65e6bf6709fa8a700e89c869c3f0 GIT binary patch literal 730 zcmaiy&2G~`5XX17d^CK;X@HQ@mWmcQ)d~nW01~1&Q4Jw6u|oxdSQ~rdEI8|}y#{iI z7vRRVaOMFxaNq(GC*FV?ciw4$c=2 z9X@jOSWzo2l#ib{SvhrjY30mn5KJGqWCI4V zt1Zuxd=MGTlPuyi9zTFMQD3fB%+F_;nN0m9c&ViQFw<_@9oR`(42fwCBMxob)mFQv zoeB}f5`2?OhzHbzcFfdtn$1aEt(?mnED<3cPe~W^?5sV%$)7D2^`6lHoUu>jVtLL|C~cwk@EYxYIG=2&V|cvoF? zwe_y~FHf43`-w*dbXYKyuD14{vL+1VM0IyrJr;H`RKSS+UKyAH68- zu4!1k*k9n6^-J4z9;hE|IMGA%Xan6q_t6e|h2EkM=sWs}=WrEo;On@Jdw7Un<2U#{ v{)j)}&-e@eiofAsq(YX+3aODRYitx%6uz&uEd_SEowmCzlnN^lKv+t7KijRqN?&2S?Y2DD+1=Y^=yYbCnWdDv zJiIgjuA z?mg#BGOMYU9STiiLYYUp@N#$1HnQ=ckvz;(wiOQ^;ijb;dS6g6Q-@S|x^`DdY1ypu z+2wP+329L*(xE1sQz>p)YEsoydn9b=18OE`DmJ89d-zB~s&S*bjcgk~!nMu$W^5-;F!tG}?( zl_5TU&*B3Gn2`cVydzrJ+-Y_wmjUcu2}yE*P0QZPt*oJ^xq0>8mGY|4>V2_D*wNbo zun7q+snb+5s;+27t0)y^Vpc-(b{Tr6Ih$?e8qX*;KM0vQ%Ql7z%pi8{hVgal9kT-% z9agegZWfjO%RadY_&0Cfy1LJ;fI}~4!*`BD<#VWdR6Y#lvQ0zNxCtkSMea0RZwa^F zw{zF-hDb) zW|(oXI1g4rl4FtPoDJcYdW=VN$s?e^0{?C`4Ml=Y7)s?x@%}Vrp)sNn6%Ib#Gt&kL$Y`$~QV$QpQ46C3l+K+)lN9@=SkPh+u0kE+ojF_Ma52;4?)LVSZ^l}b z`hTgetkeFnYEcKX91tX)o*Dtyb1pFE7xQ7pLD4~{WoDWd4t~DwqL6(Ek6nZb>WIQS zil>{WUVNw&RiJ9L04+t0Xe&ygJUWNoL?5D$(I@B%`V@VJen!8dn;78|JO_Jm1+K(Z zxCRGsJ>G=3;B9yh?!tXIjWalhkK5;w65v zgoMZ@vW09TJ4g%ZC5K6#oF{LS_sAFII{A^@qFyRdAC+kpt)_ljOY7)-+C;b0Hrh@5 zsX|BS2|7kk($n-=dWOD0FVI)$8}uFeKK+PZp`X)9`aQitf1|hPpNz0_R>}OVo;9$A zEXWqKrED2n#n!O3Y(3k^HnUdN#`;-`ah72!8)POMW~1zR_7;1WO|Wm+x9mIi1N({n k!fvu#><{)AyX~3nsqpwbvL}Gt55a{MU7T8{7SHm(0fe6xp8x;= literal 0 HcmV?d00001 diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo b/games/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo new file mode 100644 index 0000000..bd04210 --- /dev/null +++ b/games/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo @@ -0,0 +1 @@ +APPL???? \ No newline at end of file diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong b/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong new file mode 100755 index 0000000000000000000000000000000000000000..485eb89a6b9c4d3983feed51b84f66f8e13fed0e GIT binary patch literal 153016 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

EMqX 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 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib b/games/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib new file mode 100644 index 0000000000000000000000000000000000000000..8923a7e0306c94f9a820c7e22b992f65a1fb306f GIT binary patch literal 3576 zcma)83v?9a6~6zx|5+dt0>Q{DBvIaBv)Ld>5jNrBf+Rwo1Z15glVo7ByX?#c<978I zEfuZhSZqCNeSw0ns#Q@$YxP(U9;6;hK^q^(da52ptD?0aMcX?w2?^lwbkCWYf9Jn* zAK(4%y?;y6GHoXqJOl(d;6VTpG!i9C>PnnMvZ*A|vesyI?52`#BW0V3_{tJJ)!J#| zzr!Gb3<^+CApk@08U{Hrt++l~ZMH;OTMgSbTTIJzda4rfcC#a$(j8P_FEx5%+9*$| zE|I*%=r*hx--x%9@9i|0__1X)n(?;82LF>hZv%D3(VY5F~_*VsWjRXDPuuO-(bc&Vp?u}v{G+f*O5x3 z<84(5E0Jo#H|`(1xjtH(Zs|6S4R%Z$Q6G(@9sJTZuQd8!qi7XEVYuJaB=z-aBc=@> zB#0K4>GryqhGbfnwj48Q8Fh(tYv;naj;v}^SSeGON*Sfvbjma|lgR|96$Z1@3NztZ zxGE0@v)SfMD2(f}ieT2yUj#1R0hLe%3t%BEg2gPra@hzriWRZRZ2FrXH2uJgfF-aL zp;(4j4a{Z3*bvHwQcZBp4IeNULJPCe*vd?~YbzYiz5#Vm4-L?W&^EzJXogj&VKrRV zh#^|ZPQAW9y25B{K)ftB@{x#!3t&~E3$ui{R3VHG3NKC>M!aYq0~olm9B=LOB?c|q z;BwGW)=xn{EBasfVr|g59SmrP4z$^Td0FK;&_{_=OzPWvV-N~12J0~XE|(IBz;Md) zJh;z@Kjed5UgiQ&kv$to2NiUm0&*l}`9Gw_g|RskuIR(@JuMf03R$=ct_B9zAZ<4y zZLdY*hTuB*8KS!hevV2v!wqmF`~p|Mge`cV1;2u=a0~nzegn6{l9+})rphvtc3r|J z=o%zwr;d%OroG)Z91Oe;3676NNOdeIkMVJ5S)vWIgGF3#8>y&ESKVt|3ryQ%Axipc zJnTKPM%vb?5leUH(uC=Uh}*S2wqtlPurV4G&#wgUr?9arFE*@h!!cWRpNJ2@!`t9Nc&HER z!PIk=9>T);omV!G!ej6_tVS9)cAAdi)8EyqaV+Qb`g#(cf?ZyHJ=0euQyzM_Xdd3& zQo%<{sgah zT-@t1@p0G(uOS!r58|Sm;s|Cn?$Us=N$fm!K4rz2%@VDoC{j3(%Ryxp#vnpv+3c!J zS?~h4zhNGi2L~tb5GL=in>;qLczzjTg}>8s(CD_v>1EmXH0_MKa$`BOs@^#j$=|(5 z{sA9g93T2|P&Uo?dJ1|y_5bm@d?q#r&+C3S{Dk}yj&6s~;S2b3O?BqFHjm9XL`IO2D49=2 z!6H%s`TfMgCbGb=9W(A7u5cdKCeo=^gO%e<3Nx-L=@y!OX_@Cg8A~Q?C*#O?Qs_0N z6*wo%E~6&xSO#{D{*x6p0c`O8-oV>aK>paL1AZ36V%JYL6G!79M?wP;4pe%(7vZSJ z-Bn3T?=ezkr<;ku0#9f@&hi1FkSpZpXE7Aq!)6Qzvgsb|VAZvFP&L{jedl020vF&B zb0P%cLS#@HXUGHa0v;L&DczKUPSFXp5CQofU4%UgUGpWu^xig)=i#3zYvd#UyI*}$He2}3Gt-(o%p>3 z5+?}~l>*XGDMva_3QG~GLDHqT#H5>~Ez-@>?b036ozhO}acP(Iy!48+UwT*iP&y)g zAsv;zmWRl>a=tuT9xE5gljV>+N3N2W$PIE#?vNjqUzA^xUzT5y_sXxz`{dW;{qpPb z0r{}}rrayPEq^JWl)qQy%B(jmk~R z7UgDThw_B7M|oM2NxVj-eB1F`Y!q=uCPMT}*3e6J1BUXo9Y%HcitF zw1;MBmR?P-r?=AE=pFPujp}vkCiQyt26d}?pSnYRKz&GkM14kmRo$oVS6^2TsE5^$)Q{C8 r>SyZb>WM%gFf@=8$PMHL#s?+^CI_Ylf^O>q;5h$Dmio{Bd!X`v2_fjN literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong new file mode 100755 index 0000000000000000000000000000000000000000..cc9f7c41966c2d69e8517fb3b00562b06d9f0ca5 GIT binary patch literal 24384 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 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o new file mode 100644 index 0000000000000000000000000000000000000000..f9984a2fd156f2cd6267aef338e277af0bfc6a93 GIT binary patch literal 37916 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 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o new file mode 100644 index 0000000000000000000000000000000000000000..e5889c1f762670157f3698036d15c73e377d41e5 GIT binary patch literal 6424 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 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong new file mode 100755 index 0000000000000000000000000000000000000000..db258b9e5edaf45cd3ddc6041d2145ed42a080af GIT binary patch literal 24124 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 OmnOPmgoV!!d;S~4krg5U literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList new file mode 100644 index 0000000..437e784 --- /dev/null +++ b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList @@ -0,0 +1,4 @@ +/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o +/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o +/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o +/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o new file mode 100644 index 0000000000000000000000000000000000000000..484541303b63715a85c7909ec4de1edd3374bda3 GIT binary patch literal 50260 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 z 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≥)X+{A#>w%;5MF?>?)_n~9xkMXB)ft111xIj9M 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 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o new file mode 100644 index 0000000000000000000000000000000000000000..a0dae3d89dbc4a8d48b3d46ca448a52aed7550fe GIT binary patch literal 37888 zcmchA3w)f{Rp*_D(Xpn+NA9+p`~qF0t7aNPzswufUphF7bQS;32fK~NFlof2yCF)66pT_ z=iKixGjdb**WLM9p84)M_kHfU=XLM*jqm);zqS}-mfWsKiyti`U&)mw z%Pgv~4Cd!&UNY)${=Xvli9GpA*{$LKT#3p5cV)~M^X~b%sY=PMElgz=E29-&L&L)heG!I@f^nVhcX<{Wt*IW=^AlwkQhh5sMH-vwJn0cF_iEJ{9J8O8E+ zg$a|B^<~_K$@|nirp*q(MQ=>CIdx^^rlzXSndUOSbEh$HL5;tDx1fjrYidWXnk&yZ zZc{tbn5-`3{KtDW`*Uaq=?b5wGUjr5=}u!`ZnCtq{#}|e^nX(srDB;w+SCq~@fVjF z5@WufGKyu6NTF#wPT#M!4}74Z6^o3ATdN9EV_#Ut2hr;9rwmITP3`#hd$j&v z{gLn0j>^;>`N=t_Hp?+Z8TI^wWt>Fz#xnc?1#EKCFN0&+RK{V<=^Egz`A~g37AZrR z2(d68LlZ**{_QB^0X%L+8O-+@Xl!)=mS46V`BKhx*_p<^yo@r|0`u`VZ$}|l%h@vP z+wlg<*apbcwjHGhEk6}({m&Z@cc$u0yUl&sYU%UkhIZ8RQyEj~3rlGnk4u$-7LX0f zCp;ddBA9c-n6ivGFxd`{=~L)SM6))Pk*l$U=DuvReR-v!FDRz54A&_wJ{~M1feb8z z?RW<5;P;Z|GRmcV$z7~3J8e5&d-Han4DC(hc>Ej6n6Fl9m48b+Ft?54A!RH!x0h^G@|rWpHje9vsW(Fs7H7+u~eq#^L7BI35{0FR$A&P>lC!>=OCaI(p@( zdG+d-6_-5fPw>Y)?|y=LzW*{3wv0!S|0DQ|KmF-%wLJad7tO0b{;i96Zb4_hi%-Nv z?pf8c(sYG7m%;BiJG?6Kp~(B9@^d8y$ipH0&2VOc(~7_ERnEEZQO?Kby)lnR4jehr zb#&?uCtoX`ar%b4GW~=7>8@=<^YbOAYpk5_@0waDmI__jYp%&`@7h+V)Vc<@o7RC7 zu2Xdf?r@xPZs1t8!UEiZW0msEz%aK3M;}fWowLK0a;;h^m7Hq-oKCeT=SCx!xy2dm z>|OcUT-8J)iG^}qLUf5cTdCH%iV&Bh(WUy}<49_J3BO{KlMDFXH8=^x^)I3C(fHDO z#Ke*kTGu82NzTO5AfX;LuBgO{$Csj&(md2r$W_l4%ad;LE{7HEJB(Fc^y)%c${3$Q8B5}q_2cU&@V9ga|AVN_gk`O9D+6L=P(%fwDFdo=rgvtMQWFPMl~ej&i<(T(L=(bDZL`iQU=)*s^u8cid;op?nj2C!f5wx~Gwa z4Tz>%jr8@yfJ$Fi+QNo0PC_~+cKZZ?D{gCvO|6J)=W{c~you#M>UZBM=PLzpLK75VrRJ!qe zo6f~XJjq;inwAL1B8!BT^4~RhTDcdGnE31PwTfh!h!d8GGha)Dm7K<}mCU)4G`v!B zF%3veNW>4};W82chf3=DuDOgE*b@7kh?6Lkv<_ABId=QLpF~nL9-l5%a#%!(c%ibu z@kqqKf{d$MheszM2_JW+O?*q_OGsKXIXOH!RITRDn@DVU^zcHB<0lEkT5@Lu(oQ1& zf`>X%1m~-ib65}|{2-N?F8h^hB-2v-k1{8UbIw?~=2SsLW@*b8Q4~^#rrb(tq2>^3 zmag0b+{@!i&^7#C6Ns56a(TR1Fz-j|T1mx!V4o(w+(LgfcAj4Ch@C8`%U~OBa?_T8w#q!x_s%M)fJYApHr-{a=|%w zEQg6|UAK1iVF>@Bfh-aTKCyNM0buUv&1}w{HEZppav1GAueHP7659ab!K_`SU2Tnl zC^@|Bno~oA*Ck5fT0;F&`1<`HBz#xzC&6PVy@0<;0IPSRf70eSyrhV1# zgfkI5Tq%JCw8l5K{&^#46k-=3n^wJ12Wg9MUVS@+@+(h_?aNiiYv)VOh%=pAC_(28 zrR^)_@~2ItG3Drd?#>0LIeh|hf?Hb1vv*NQ9e&wn^Lo~g6pDgF3*cA|hKf6PN0x-M zY)QvEzPZYn_6001;i@@d$Rl7%VB7`M@lJBBc%&1f++Li6SUQJV+>vVTtc-BSq{2HI z;Kjmto?@rzxLpx8*CQORphmPie_9%oQ>0Bq!Xns*^qDI7M?r_UV@ly0r4ZMSLq}dy z+nGA$9S>y(Fc^Rk6^6cqVNDT4b)-kGmSGn6bk97Sj&Lcz(ElUR30DL@v5x<)Kqx6_vB5;|>L^Rlra=51Or1k51Qj+H{;&yvwCF(4jx? z&iKOA84!YNI!cPOhB!HoE}X+Th>9I^0=sMlVe`2fhN>J)i0LS6*5w3G7tc9`00>@3 zY|~LuoMnC!%22;+j_H_JK!O0#>JR14gYsO`r|Gy;p-TzHz&X_$i#1y&DNabGsyLSs zXATRe2%4OzEaYeRmo3S2VfmyTPE9_g$t`{| zcur-e3}#;i4d46~DF<@Dt8_h_!?H3Rw{VY(rq(SNv77yVJNK?=3X*s&hxL5xpNO2Y zY563Fe+07Jj1cE-*TZfaO?7EH7C9uHj{81HA4+Pg**H9;W7Qf-#M!e%oRXF8Z=h$J z){7lCu_V9eo4x^grE_3dN|$a=f%}iuoH^6Ev%QzaL!~L_&J@uO2zm-h|9&4K=zOhG zDNShx*K`hQ_gXi7k)`gU>>-^k7pIO;_v_4R5_*dyE1Pv*^G8w|`aGYjVp1C@zjL?W z_xvm@4)tKv`a`cs{;eETzzAX(MfZnHdEQ+*8k)Q|8u?*R}itIH@Go9D# zC_x((@G-0`5&IgLT;~n{Ank#ISkMi$5#g- zw{7|{Y}%cN|9A_ZZf_cCkvmN1v7hQ8ybvC0ultltOy^BUw-IBOOV_R4SgxEci;ys# z%R5J_MQ^Z7=lK25m7=K^f&W&?8Mat_u zp@4I`@`5hu8tgn>K|5lp3lvy?PgWjV!DnioRY}q1a$VUaZM1314Cacf?p4zNo9&}rfWjLQ4u9z<15~U zM%N*nPz1^cD(Q+9(X@_qo$6f=*2eJ%3{1Voox+koy0TxHGL|=%)0rZ~JXILFMpahF z!p71oi=N(f;J7g2-AXo)7j?e7PL2ty+-ut6$&H^xeUOAFVA9!Fsd6=uIFD55rEN|> zMDHyn=LYc?#evP9=N0}seoO8q>b$gAe z1Dyi1boOHlaMYO4lO8&n)DsNU{R8EDq43Y=Bm7hOlxlNA>?k=e!VZ(#qMgU_4?fogW4z zIaO9#*gE=g!ITfpNkYY_TEMTi3@7A;Pqvhce zn4Yr32^d?GVc9!RmQJplX#ztP7Q6E~RMMohn`(hAnAxGp=CR)rd%)kczc{?;ZeO|nETO&C>VZg!|RFamP|6I7#0 z_7XRmI*8P%U{#r9AD3G+bqMJ&dKc#w=Da~O$$r(&kHt3huq^|+)lI}UTmZ{S?o4iG z&YO|5V0#v51}2$S@NEFgeCb?r`IzJ&S5`E2du#&(SCYGQ4=ez+7E67M>1u?8Mkq1IQjbXn5eAa`wMmaNX^!eUnS=20p{CXs|f$ps2k;78Yb3|?? zJ`wbiM-}IJ;<)EsNZ$c@D#o#SDdh!}+DiI5{(gCWkvX8q=bhO~3H#5X+!VHw^=6CvV;@SzjZD zKiyiUo9Vrtk|s8+d$X?-BsN)ih(JRfEY0ytqRsgL)>Hb6u%sVzGH7j#M>3c&ew7j~9Z>Kn3bE)p;$lD-Z_s_&1xIneKo zaG>|0$96D;)vFLBv&jL;pz1oXZ#(l*#v4$SfSLIWAl@V@`p#r4Tki{apgZh_oa3#n z%I|yGs0THpEonB{%07lO(IDHsR>k^WOG~DEo$f^$nGG6GyVvVJv>PeDJnLAqU-uOX z+ykI1Dw}Rz-5WH0FVd&6rJL@yO}jY(oMlC{ORW1!Z2`AAY-c`e?`~HTJce{Ex`kZ8 z^}8)~P5=ZO%aj8P8-+^ObZ=6-0V#s|5L5T%uq-KZc5l`axxX=Ce4e3*Gp4&kGu@7K zt|u8Wo#yWC{cmBb3mnj|1alO!!v?H?v(=6Q#?N*>+ z#;r;=jM3BR0MmNxs?}5&{Ut1$d{3uNdK}HS>xXm_%GcAS3O(Hw^Q!0xCG{kAceak7 zGqA9vP0toBjxL{h1S-^KVdb5fWd_&uq^#j4C<#ui%GnXvMOC}**?Qz!j#yiO5p+?t z+MaIpH*E?~*jUJ_qG|SAr3BFhuxc)_#3(Znt4mLhYT4TeudrRTo>HEp)m-eOJ=>~c z5h7IwHVUgak5(&ljRUk@2WaPF_!Ck`csQ?CY%URmfKljZEN_Qm?2c_P`1JJZkaCd} ziiQ1Un4hh4vZs$8&1j12#5spO1%(~Sok5T7SoPBvq07dDPr%j`APgu1myey>ps7m4 zJ=e_1lpG=vzZ=BW7T?xIYXCH@#cTz~5K%(8OO&DSg>Yh?+PWwpREicuJp?rcTgtp6 zVp;snuv8WkEo!mS%(m`tg8mcn5_YFV{4DmjMEoQ8-T8YM=GN^kJM1U^_+>Lo5>iLX7>Au#`@O&95?HR57gc;4nn{shpT+ z%#H&JQh$L;?j(98d9&l7f@um6+rkcOX`!}adl6bdt%t5!{fF4Su2{O2q-7!-Xr|n8 zjWYgtY{Mwq`xc@=0svj9%wu-!R$7IN69{I<4+V@uc3-pOT2&y{ArCc^F%dj=T&JmR zu?-(&wmrHrbM^a3cC+7cy~4O|)&ICdWN%mnV;g9p-SJlCSX?f&6Ytooted+E1}o^K zQvQy&an2|_fKKR9g|}ntWiY9=!|(wEwFCP)L<+Sv(iP=fg}C>3>!^xOZnabCQ4``- ziYS_TBciWCrg{`hRCM}tFnMr!K+83$Z3+_I+>?!=f4e$>sqG3D*BU~+&Z@7XsTo%* zn)=#AR$=IeN$rsIgb)w1FO&*uJW%(aQw@38QoUM+7?s-Mo$a(gV$njk3)_K(Hx1KZ zc+wiKE{Qc-D$XDD%~!%w7A>q=acRdxh{zd7Y(R@)9m~N?hS-FKYDrBkiy@iLB&Qgy zPti8&wO-8B-WC8I61_)k-s13M5T?ZR8ML=9yJr~<8X5+pc{Df6p2ip_+JvN`VI*bm zomW4DrY?(ho?5d5RH@FZaoD$E*}Yk&B1)>-d>S%q=Pf!nLO@0Lm{X;NmRnx^P0@wA&S29$ zRDs#Nz|Az+Z;lkFOy@fkQN6hCaahkAcE?WZuvUwcs{`F>z0_hqEy9K7(um4-TJN;D zaL?vk7^O-ul~M~E<XSjtb3pLYejcVe#)wO^)&1N)f zP7_uv)?SzF7NOSa&Fi$rG+k0+>JJ9txKqnPxvKA2!F4R()r;w@Ln$*OkRCF7m z)_O*}61Wv5e8eF*I4DwUFj{q5D;f<>;*CC4ER~M4sm?IkKE*hNPHRG2NgQ$*TCfk( zGaT{}gvk@`Bx_V_K^E>I6S*mWGu+#`o<6bq4WzfLZUgB}Hf*)*(M04(`eJ8yk zVN>#_b$^mQ$Ml_27&lmfg|{!$ce4t)Dw3f!RCiaDtu3g48hP;{{A zn!ek$)!e^Du4(}16ihKY4`Xj-j#8nPI~7cafzV0nus%sZsU=0n73y^&kUb~zV)Y=w?v#iaA1Oz#ZU&7x9y10TKKc6nvi$go$7N&o#>IzifBotGs?qBy=A-P0s z1D&J&>vaf74(eLuoc3Swm>`iN%G7`mYvHQC-@k#{KAg^B&|z4aXeQ`yQ%ZtFMk{gu zl|LuNkTm=jjNshScx3@0IHte-3j$Y#45P*t`Y!qYjlUvL5(~)?ybt52vIP-c)4%EE zINKsLLnozkeyRc&$B+2Sh7mecp2zB?3p^Nheqj!RYUU3F<{K?IECz*n}hm zaA23h>)c;}?{h2$+BuL>9Fd5;GPDxEq2ut6lwhfKU=A;xHv?JCqN29-s`*(QKMHB! z8pRXosIh1X1LIi1i)RMjqL}Jgwk6tu9N4Wek%bUiOAE_LU8Qy~en{~|B3cyhlKr_> zbE?~Uu^Nyw)UE3jU4$uwflPM18-Hh2vOxqZNC=>W(M{uMD*GBV7U(rX@ZDKg<`daiL@HG$VUjd zM5sf-PKk}vlPE|tpo(}zq$9L~v0fw{tB#96M7C8dFMvYKfNJFtN<9#}WJp|086w>Z zwp&(BXY3t0f722$t$VI)`8*8eKF{|&@F>1heeZ}ck`ZwVcF4>?mqHQ}i8SC@=9W(` z%;N~CqXCcuTYeIi;)uv5^6i1GtVIHgrj;1$dw$iY1sOp`7CZt*2QC4@*bMY25Wz-; z^Ejef%r824+Y}4oR`ponlC~=j!j2ZotjHfMvt+HLyc*5RNd- zc$EUO^=T3U5#VHjE;KMe{u)golxRkS^OO}292k}K-PnkET3}gZ%cg6u0mtE?+k)A$ zS;MHIUi&ucBW)w_8j1+HNs|u7HvAPcY}Us^u?;Wqu|sY4 za2_9LYph*)Lif(8TvZ3XFSA7~`8QLn;%G06c6ZXa-%g|YzN(Wu4P6H2b{(=9xwFLJ zblZUv-s@XHAhxO%q zD=KBr`lAOe`m~43rDpUF!A?|TQ8g$<1(rVBNnxsG=WGDb-o=C`-o@F{e#OYxHV>nf zeYRh|jt7aus=a--N5a)8(NooPu|oQ6&m@r8b_ItOK`Sb7m_BQJl2BqB)^rdig?%9r z+}fQalDJ0co4PWsTi6e1-s)2WR74_*5$OvHH*EID#!R2JHc2osZGoUM)7PidEYZWT zaO6cjKPaaU#>&1u+4S`*p2QFrU7UwH%?=G{szeXFB5#}!2CBUpnr1wVKk}w;r=m+V zG5qnaI}NJ_-3+ejODjx5h)Iu1YgT)+;){k5t3`HLRGNt*yj^`(dco3#m(cg+H2O-~ zCBQ$@vvcq|kP>V^SjF7}K&%qvs-=@d5MEO_*GrAc+=NG+Dsg@ZQ~A#h9a zY9*E0-M3c|<&n0OF0$HPNRe74izRT&SQuNaEehE+)0W0X4%7H+#qkZKX-n)PdO@Iq zEDM>66Nef1q=2*~e&G-*Gc{sZvKIy+!63Og#O)XJs&RP?$E58-5b4X6P?G>=sa_;6 zb~S)lN)wZn=9+*akK=M!TWL#KB8Al#X@e+LLP}fW644B77?!Ie!o?A0>A=nfqjJmB$5mEDap+tm{?XglWZWVQ@IWq6O$a zlpYf17bOF0FP3$MSdkmc8V3-t3HX)b2#jJ_VH-<4-aapOW-wbhKqMkT+DhG6-*NwB z2t#{K+REKn)NvXpc_;^Kuc67VNslU1#`2E0dyC(1$M`IcC!aRy1B!$-j)wZqhbFXx ziiQ;*_hS06U)jZ=Rm=JxQ#`DH^a>}f15qLUHU(kXdmwRirf<}AEOswl>{%v#NC8;j z9^k~hNgvi!ENU-RysBv%wTwj^$7vh47EF8KaZexB%vjBeo#YQh{@zG_aW}n4YJBtX!=%qMP(dtrsgCee#rQshiwk#6RAaKBb6Q?w3GR+Esr` z1gk$lvu&jZ1PTlBpYBulxgdK0c-F;H%q#8w}3Tx>9u15D_tI~X^xJimAkgTjBXs8U@T`+RjVaD449pAZr$AL_t50R;tuIV9Sl{+xGpKyd<3hV&RtCeNC*qgY@R35M5d z$((T<>WQTP{pZF)x>ns;2b11pW1TiV4RJYb1Isd^OQ$|OKGQJiPBkav zKuN$;nviUq84s5TE&BPz#ck3_bx!bbiBGGlSEZ*Z1x9%oWEupIt&*$=rYo3W(=%%R z#OV!)$@GDW!~nyhXb>hntD*Ziwt*Z~l_vsdQK2}y5kMs@G<}DLgu00|B{W^iU za}B@+1wLylIleH3n6rHdZ8^vwRV@Fas~TSVjE3qyXEB8?(`U8f=aCpt&PfNGe-W0f z^f?`s7XbEXF94ob;7b64&&X+wU=s+??ozZ@LTKJL5Fp*HNUs42&X;+eG?TtZhv^L_ z3r*rgRJAtc;691;y$lSEr7lK!U~C4)OOIPs$`f*`#H8P)*&hH(Ap{;p)Ck3q`?%;3 zCfxu&R91w8CVfGh_3$MyPMY-nit&hGO!J;88smz3a>oG=!U4tfyBV4W@&S?t7=m%V zhwLDhdYoy}wIh{UaoW0%IXS?&$d!-CXy8~u(e5?A62D*%ai-s^#P$WCsz6#`9&D(LyGl6 z9TtRfU2h-OA$So`JwX`k;3oZ`lETXXdcJby;dVhjr0`b(&*gCjCYJ~Ke?;qh9f`C4 zax&?UYVsRM)`blN9<3#|vmc}C97|oG5sG|yS#)sA4L3porEO$T6;LrfwTlc)N6%cY zYCW)K(CVV1LkfcG0P4#$gH{iv5-GNoL926$)<_}8N-Oobtm-Kmq!c=yugt?#QZ<8C z>l77|qBHF$dVJmtTE$aTM;u(4f)x#3JR3KM+^!k48mQ=w5X0R42zo8R-xE5aGiWtX zQ605*@kt(6x1iTEtA&dCSm!xY1XZ7)pbc70RP;x19%!ircMMBSx?`14Dv)xtZ_sL+ z)EfhLC{bH$gXxD4h4y66VW($e2G%ATzjGUGcD-@|?|JhuT$XIhDLJW}TXNb8G{}kHIb#1a4Df z>!9^MmZWT+9Yr3M3kG-oBA8e-HBVCK`7yP1x5am@J#<)HisR%dO`^Fk{;TG}lWlK; zD5?uRjBkPmjfFnMH^CAO1{Zz2DWcic_9!NiUi3vfVp=ck>fLh`G(>MAC=45w-J>BH zYDCViP2@{*df4vm$Esi$)$=qrh>LlbbumN2vzePPtdAK2o-Jb>2g%B~(=1dm1J)MBx)~?MZKS)k6RP+_mB1@@S=Ixo{~p|zmO1$w$6?MS55krP=NXs>6shTARXMoHSdEPK z!ObVJJ~OI&sVhd87C60HA~LFK#gwbcvIA@sW?F=QY0P;>b*vR)Omgf=&WzQi#BgL2 zZHcN%#l-%DeMryVNUUT=wW*kxZEPn0bdF-YQ}mBmV2bhKG>!6PB06m{R?P~mFvlG^ z!-s(&lQJ2rZ;A1RLxmkBU#hrtDQB#{CB|jKpr()eY%61REX<3ANczN(DX zvcyhP@Qbybw_28%XzUancjmB4{FYe_ON=x)s>)5*r&LbN}3>s6`%8iGeYjp%qdKaD+SzLQZ|{gCW$G9Nu*zUP|{>73ZxN5V!Si+ zlF%Y5xgE;GPI?C$@2(+g?1ojUe{!*3KF&4%8(HLJhCQ9HPoBXgY{O?)UKHV1^O%VOpQdT)Z5CFd-)->}v>!Je(^-s;`>Nb(BZB z4R645G?_j6$laH#KwSqWbG^pzG3v%&Hy-Q;g>fTBtfO5Aj3P3bw`ysO(Xwkw)AwpR z{FU^6W`>m2aXT&w-3WU+gm@4vmwmd!ayt$I^?-0@SaWh?t~!v9#z=LL^Vzcz-N&&t zQwhxM_qJv^2bLLC5dfPqj}vANsMK*A3Mw#+vqV`yC6dfRh2aG3;~b(fEvNugPZ($< z(zhwfYzXBjG&~Hw67h`+*FB%|gk^00u9i8Z9h*l94a8tFhgGJj#Wr-XV@LGy98jU# zX-K=C#mXF2&^;_gjz82vj}Zz<8b>Oh;~3ne&vN8VZWY8L@VSpR{5TtqQ-(Yh=T~Np zJ@%AkW?XUP&}_KY2DAx9lT)+{!F>sktmyg2f;qv{f%Z79FdR~}N=BJ8lnUfHt@yJu z=kzS=BW#zYG@mIH{ji^cyiR%XDnLBJqnVewj3Rg zb1U>-g?^!K>=g7a1<6rdHlN&_1gN5N=01wb-cejCe;(J6Z8>v+H#NjkPqSded<&2e ztbzOgBgArAJ~&@qfmZ#`yqh!zZIeLA`3u#ux1`_0B^^sWi!+XG@$71b(n0L=S&MM} zVi?|wtEaKgTsaG$B3AN!#MHhv! z8C~NQL+D>rbn!w4=))BRm)0yn>86?e6~z?IGQhM==Kgt3+Qf^gLaqN*%_TxnQ!b!3 zfR9K^ADRY>$lMuPKHoqIDRQNd@EA6+`sUIt(?*3C?dQj=C`YsT~)20RNwr zEi(JGVu>DFSCT!~U}-S>n~EoDXn@y%^q&<;{Fwog3?A=xTzovfq?yFk>G==BQ-fUS z&rr=T#$=z-EE~AZ!2)9A!{3-bz z1#8rYZBuw@d|Bb@AhmFw5P)1mC!5Fz*{>*)cuTz&X~=~(-(tHrK{I4s%`cy5xU%M?^SD4BEuHuS-?zKavprLFJ{~L-g-c}Ev+!n29 zTI0W`xZ-_nz-?OK&nm8{0UoX$Qk+Xb0EyVCboA6@mHmCqA}T>c7QOYf4*L%jTl51D z+uwtziYT_p{-GjjB#Iq9AJJMgc(AD8Wq3|AsQwV52;EO)4gVKKQ4J!5GGg}?LHe(X zB$|ZRLb~06pI3(RM~WeuLa8L12k&+G2EM=PPpDL;-FCMB-zoQold)10xWNPsCXz);oQUv*9AdI2 zq7W>}I*9NN8mUb-Vo|Up6G?lpj8fkBh)~K#Z62)A`aGV?Qr%kMOE#t{8?!mEh!aUy zXHD3ausZ~Q@+>ND<+o^%V-m?4)u&);Rls757UNeMAL*j=6WM=nZ*LLXu>*` z^U;=CH1Li@lK!2B9)PYA76sgdT__infhsd~(D-E*0qi7^Wbjx0IZs*_Vq~>*}cgwsJi(elkH6EBzXvD6yakb1m*1>!dXRl zm$e%QH?){4L3Q=6)r4Y@@ z-#Dp&e?Z}{3Y@N|iOLAjYK|}2S(o~2O&Fjmll>8OxW7)Qjg9wNwqK9Qen^SujS!kA z0Yf(M5z(LzYY4-II0{r>4z5`e%dwK#gK8kUNH`7$)WIH7*aL)7G^#nir44u2&f`uO zll`b&lEkU1KZ3?R5BxC&KZq+p9*2oD`yaH(j}g7daWmN;)ue}+6k@Oqme1_NiuU6T zXxfV(Q{W>$Fql`9{kQ@jB~W&MwZ3LQp>2E2&!p^Ans2WPuoA&1bygntF~KTDvhuDJ zuy~(RyeEhk-cqc$&gQ~ITl`Ne{uhYPBRrCNZmk_D&Mt2I4Zko~Mu-ctnV zWLdyZDBx)VR5q}HM-}i4=7#3p>`$qc_RB={?T-|sLYHu5e_D~gUWcTYLDbc!o<*`K>Xc-o7^5y=%k zD87&+`-G0$OQ@4C)5v~aC;#PmY>QHz+JCbx5l1$pR|xP{xW9N;$rcw&y&i_j!d-14 zZxF(`T3xn$Er2ySwpxq}OBygF{~8OuxP(4=o;*v${|ekY5vS)f5nq6#by>833(s)3 zTefTZH7G^j)8M;)O#fDuvBY)>(LwkD0|xrL6(AN$0D>C_1ZpEvHqj{RAO5x{yzQQE z`fWstm?0aHC<<93H~ls~MXZp)L1|P3K?rNi3v2JUu_|hJEYA5-!_o4792z=5E+HrO z9WMPgYNd@$EaD~*-kwpOIaRF9de=?&ThFnW9K$gf>X@SA-WPQGZRiS(j~HW`j&Y?L zLVmm%(0Pz^fYII^_rfYIcQf_cd^8`6M%b&NEy3MPy*8Xh!hLu*Q?G`z1a~v_?$o&u zGo;QPU#fu1B}{KxL1KJVkAX)`_Uej3MG!-yBAjTv!D5%9Kmtb`1YZ(IPH7#ohz>?* z>oqHX0v)=7S8D?)Vj#8Qor60fy#9b6L`KLb@~=SKinTBeD1S#Es%@Rj&%qME<4NE~ zADZ8a6H2%|rs0C{$d3C_dGw(Y#*<^$UBN&^(h(Lsi$7d@VIps<_=Tsn@RBV&t%c8C z^>fU&i-@QSuS&wZoAS8*pGWKy%gsGVUoNd%Zn&t?m*seoCf7epbBwUz@kWWVCvh+wKvVGDztB>Q|X!Mlhq<`$%J9h zB9}*6aj8XgD_%Wy1JWQuUSVR1Ygb&if;V)>H649g4FtSmED{-88v$Tx(u}PgKuUrD zqApt-S+Roo2wsl2&e=kC;{v)BfGzQ0E$bsaEn3RTB`5_iJ-bT2R$qnIwc6^J5U^$~ zirLeGH+`{|Sb}M5*G6KApr&*$ur`gWsoa6$v02;!e{{Sb@|Prqu*OGj3=sHIO}B7*V8N{p zAcVHGP;drv)wv&hsXw3+$K`V3fkVZqDx$*%#1MA2Qa$Ys4CA!hD78_sDECkEiYh_| zRMElV_8<5_k;DFgioJBd{y+5T(v@>i4^(sWv&Fpo|7=JvUHyqMyyR$+dQJ0AjW@Vr z!RX6H`)9e{yccHTDQ3*@D6gZ%Z>&N48bo()b$6=lo#N6Ky(1tKhNvq@Buq05TS<;9B}ZKFuZ>iFg)8=!r=j1 zTj+IfUV>;T-UBZW_I~^Khk6MVslvYl@ybiJDc++Wdf_FAJm)>AXU%&OP`CzBTRo^c zv*qZum(+B-uLlU-Z|5b2MnnbyVmY-!4~$1`OgIsec>`LV{@~?Rf!(SB%_GtjRP5yo z3Tw`!w$JcjXf0@umwoX-Uk~bQ6*PS{C2GPVOK+A-50Z{-aw*^u8wHtp#<@c=o4p8}g2mXM{ zuabc8P4Jt-Xt-29^MC?S`E`$g?@jQVTX7imeOT<$6Z0tueS9-)=oQXg7p!n|nJ zR-gl z>*J1$+xK-%fjc$4#gs1<^N_LBFzQeD@s2W-;tE~7>6jgo*z3h#>n4d1umy~=?%``h0f9m9+1PmHOd zlo#@ZZ>K~T4eve-r*WS!yuId97n8iZD+CL*oDLzJ((n(i8k%2_AXXpN#1jUWI>zCj zM=>;yT?)(4f)P!PN6i7oTC9KlxTPrpVyYA4bAY{PQmu(oHmZ;O~lX;5Vl!> z??Rl@qmF&IHfQL9j}?LLG^WXsH~0{I$>V77{x(WdSvTMKZbEUwLL2@|TMRry`YPADg@9^#RWV=m5X5v#PF%t( zT8>Z)&XEN7Vg_$XFd@&25lgnbrqMaaJ9-f}?!V5g$W!nB8*mpLNc%$9ciU$MF|82D5EG+iTO0Ano=L z-UyygT0D%`XZKjVCy;g#e;AMW?e=?*{l+dP=}*&m2>4U>`vLoX(SEnu?-u+0i{Mwp z|9Sg;!IneWk?HIgzrP9@h2Qx4Y}?&PH0Com)r`SE1M6EH!X)P=e$akr@J;-k_`V$9 z*elE$d}CXa^sP3%%cf%=l63Zi_$W*8z4}QvOi$Q!=4ZWK_+ACFVt!cYT9_a5LJRXl z4v_W}kNJtm{KSjn8)-~7FaXLo@tMwcGTr-TI-k*&meu&?-zIc!RfMG(^LG22eSX0H zp2hFS?eBB={Z;-(Lr9C?w!cYVU66~JPP+OU@M8Gm=L7ibM8%{ppv!O4;^X+uXMV22 zpZ9wx^t%xHeKzzv0py6y@pqwgGkJ91+lD6(@1GbNJ~T8wKDl*rk>$~h~epvjXIQ|}2((&6mIR$^(~5kbs1Q1g%txKq^ut5aI!qO7Or_RiK3;aS6AoP(k^=Gqc|H zu6qgeNOR8om-C(fKbQafGtd6(kN?REAvWPr@Mw67B#JTpJp=C>l-+$o+y*_iy^!-M zCVHkB+2^8!Kx3Mx?mTmy;1hCx?v~A z^T61Sp2J()yUX{DFrw9ZH^x7KaTQ%|c^epx#~G=1&ByO^@%VeNFFHz>9bptml}=xX zk%HvyU?kh4%Z@)KcIqi;>L7RL6Xva~Fmc5uw|cYrqI?cjI*-2DZDP9rWcua&EEj zI_>b>io2mN1BoxQZ|w^(VsAR<;~FsPfgkxB&FLFqV2^eBA~7~v+iSoG8+ALl7K{zn z)>*P@HiPm;^TAYrbJ~8+Ho!pmaJ(9hPAA5WWL?g@>AJX<8Q-^N9dT$Q4B9~q+Hn{5 z2V3SJO}p5FEf!EQUVR;H6)n&9ES~m)>rURa$#vZ>T6;f({u{|JJS84~=n3T!acS$( z2d1_!3{MZrHa~scw75Fxc18qas}=+AuRrR*~gzaXwY_R?b=^dq2oc3wwOg!0M0Y);71NC<8#VIRlephamO&B@!aXk`;VV4o+zKSE0MEo-!xeq9~~QgcX8iDz3$q@ z8Lu*0EH@mtTD;}p!SNf4`>K9a9J@i}OQ%CS2uo*e+p|iuflq+2H0yh{(vszPqf7As zw17obdP1j$d#YGjumX@q!&}EtQ{jRiL`4V5pQ`r8#F~!e>M1swX*ST_JZ3_1@L6K( zz3UZ?lnXnGvXVWG-WFrMsvfISOV@j0r8Ey?RIOme@yyWqgw27Dya)RR14*295G~ym z_NDUir(ji!A2d9PF?S3YDZOV1&1doS4zfbxNXDkT_QB`TrcHCn@q~7=3PK%`v~^Bs zb1|(`Zqw0;i6v1ic{-6uq*&63B|oBM*$N!1?82Ot z2RQ8`KW*olu8mD`PHwD`=P2>G+bWzzB<0$JvE&z&tP_0d)6$J!4#jJc0wvdCr^qUt zi=ANPWK{%}+Yb^8zXwepx22&|X6WpfRXE6Lyye(4$32{ry~u+S8HRokL=QIrr%I0X zy69mCT9VL)&P@?-tz&-0qTA;m220iTdDpjahzz~zH#i@g^?0v*AKmjZKa*YyWwY*7 z#m~U)mt0hcK|=2pe+4h?gqG0vd<(DGnK0|sweCnopy&re*>Zd?4t*l8rzZE~>L{>V z>PXT}70{SyKo?!C(4O^uSL6qJa#x@_V4woFQZOTb5zEuFi3^95qZQ1+MtEGdt2c|D zbj&r{xMQLx6LYg|T+x$_nR!hxG~k}f$SLP*Gmt8;W7MryP^&;H5AP+He~W4x(DCGN?)uVVKV4y56OHFZ_evXb8>o;pU##S&B@zb&iP4u-VSj7 zY>|SVqA0`Wls#`X+=wxuxo{6%#JGymZ_0H+037HQzrrmemmq#+aFE$bymU>bo~~Gx z1sg#ynWOY_B+o#v_%{F$%$lHq58Qpd;^)Mjcdc58PSPJBJJRrqJr`L)w8qz4d<5|| zwvl#l)Q(xJeuKK)vlu5WzdM>_KA(I{;Df}knlkxS(q-&`yCsK%Z{i&~GLScACRg!Y zsRk=!MO=xI4=z!Y$>mi4z~{Y~^AK5^s& zljh{HiMcs*x7mFXlzxt)AoJ)~_85hXX1sJh)30n%xU1CNB9l1;9?tnzp&9SZye~6@ zk2pQ%<0jk;1#Ck_nJFj`^zITfg%UUh1ytQsP%;_zqd1M*BLTS;pZXcdQcYQQP`N%E zqvTRRLGaouo6UsM407@X^uG<+Qh!0wj27+|lD|ElX>kheBaOkJfgJ$5HO<$-QRQ$} z>*K&2k65nZ=47cn}Lw zuwY4Po_~`27$`*swW7S%m*c@?xWJ>laatxyQ}(j$a_f|4T`QXRgQc+K%r5wzePV93 zp0L`q=BAFe6qpu<)x}aH3`&kyaT`^;WCcs_JnB1-SmO2Y4#Cc?hLOEgI_8uED_AW} z^9SFGA1sEYX}{s&$ARN}qw=>Oxuv^otBN#Ph$JV*62K9`AJ_t|b3OE*}T&g3iX@!I$@fUI3j>=mF4G z(EOi+av32(+=B;(+eeaiG-(+W$VYpnnCO27JoLGed}m)i2bvKCbE-cHPuV`6v}Y6k zeA3cp%7-w;Y%v8_9-{%UqxnA;{4BReKjau&wp3`+;K?3r0VDsnHe2)+JC%5I;YQ&Y zvfP0hH->zlYkR+5zDqV1LoR^%7WYqe)vcQRNpF@NkDmzUg6%R*H&4&-`_;j(9-PO! Pxr^8S4$j$Lm81L@=kc5? literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap new file mode 100644 index 0000000000000000000000000000000000000000..5d74c43a95f00b611e8c37c40fb62cc2fe185bed GIT binary patch literal 793 ecmXR&%*|kAU|^771`*xvUIDC2k1s!N*Q8jhT4{-pvO0X5nQ<)5I=lgQbPD`i@)~^ z0N5-6R?3}vtNxVrYqjyB4igo#%d%TG<6pn=0tdZ@{i$&_xtzkjlp{q7zEaZzo`hI% tBuX9~=aIT9Xmi*`FG7M~-Fcvgj=#$`r^-1-;_2|}m~O+fDc#qd@B&N=GZz2= literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.dep b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.dep new file mode 100644 index 0000000..c774d7e --- /dev/null +++ b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.dep @@ -0,0 +1,22 @@ +00000000000000000000000000000000 0f42de934b02be27425d80e94e2ce9bb ffffffffffffffffffffffffffffffff 102 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM +89a4e5a739f57aa8e8ea3e15cc5b761f 1f9a1189ae3fb17ac84e38d4d647347e ffffffffffffffffffffffffffffffff 374 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +5e4188bca1209e6907167ccba41fdc53 6efcb0abef93d98698d1747a9433770b ffffffffffffffffffffffffffffffff 52796 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong +9346fa5540614c5ec02d34effc152973 f723bf13552213eb405433fcc7271848 ffffffffffffffffffffffffffffffff 24124 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong +79447062259a391fff3ea9691d9fe04e 4360bd9891f9f8c37851d2b182b20d26 ffffffffffffffffffffffffffffffff 24384 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong +4ac30befb750e7aed0b410d6ddc14710 aab16e6b23eea33c6901c5fc0bc388f5 ffffffffffffffffffffffffffffffff 51000 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o +44fb34f96cc33184f223910d4ab9e6a0 addb2d5a42443237eff1bee352eac250 ffffffffffffffffffffffffffffffff 52200 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o +4ac30befb6f84004d0b410d6ddc14557 648d61647e0fcfcc9a4dac32389c7728 ffffffffffffffffffffffffffffffff 37888 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o +44fb34f96d6b962ef223910d4ab9e4e7 145a4966e13c87e79092957e658e06ee ffffffffffffffffffffffffffffffff 37916 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o +4ac30befb6d1fbe4d0b410d6ddc14b13 28f66a099b5c55692c60ad1fd78da8ce ffffffffffffffffffffffffffffffff 50260 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o +44fb34f96d422dcef223910d4ab9eaa3 31730fa90d486574857302c05f33f12a ffffffffffffffffffffffffffffffff 50340 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o +4ac30beffa10e689d0b410d6ddc14b75 758c9f53cbb309591f01f03e180b3931 ffffffffffffffffffffffffffffffff 6408 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o +44fb34f9218330a3f223910d4ab9eac5 f1b61bf7c6c59525052e80347504928b ffffffffffffffffffffffffffffffff 6424 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o +718f52da0df5d541d35bd6a744b504ec 55231c5c1fffc0f90abe72c737fda42a ffffffffffffffffffffffffffffffff 412 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent +00000000000000000000000000000000 ecb4bdc7df410459212fbfa97152a083 ffffffffffffffffffffffffffffffff 7780 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision +000000004d4068690000000000001e76 4ac30befb6d1e995d0b410d6ddc15ec2 ffffffffffffffffffffffffffffffff 10467032 /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch +000000004d4068690000000000001e76 44fb34f96d423fbff223910d4ab9ff72 ffffffffffffffffffffffffffffffff 10000088 /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch +000000004d69bf230000000000006f2d dc1646b51af74616a28f6d262501014e ffffffffffffffffffffffffffffffff 3735 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib +000000004d407d930000000000004e05 3d22fc710bec9fbd91c7fb5d1545cb92 ffffffffffffffffffffffffffffffff 1675 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib +00000000000000000000000000000000 718f52da0df5d541d35bd6a744b504ec ffffffffffffffffffffffffffffffff 8 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PkgInfo +00000000000000000000000000000000 718f52da0df5d541d35bd6a744b504ec ffffffffffffffffffffffffffffffff 926 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist +00000000000000000000000000000000 b499dab3b9352205654a1f76bd619630 ffffffffffffffffffffffffffffffff 485 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.hmap b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.hmap new file mode 100644 index 0000000000000000000000000000000000000000..c4f4adc22d462624f7d947201d0b5c05fbf4ae62 GIT binary patch literal 1691 zcmXR&%*|kAU|^77V_;wb(hWdt4#c=XI8Y)Th(YvV03f#u12Kpm1;Zl*oPgc{#VLp$ z3;>iLK<>epF9w4 + + + + application-identifier + L65268UWZ3.net.jeena.apps.pong + get-task-allow + + keychain-access-groups + + L65268UWZ3.net.jeena.apps.pong + + + diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong~.dep b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong~.dep new file mode 100644 index 0000000..4023882 --- /dev/null +++ b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong~.dep @@ -0,0 +1,22 @@ +718f52da0df5d541d35bd6a744b504ec 55231c5c1fffc0f90abe72c737fda42a ffffffffffffffffffffffffffffffff 412 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent +89a4e5a739f558cbe8ea3e15cc5b4da3 1f9a1189ae3fb17ac84e38d4d647347e ffffffffffffffffffffffffffffffff 374 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +00000000000000000000000000000000 ecb4bdc7df410459212fbfa97152a083 ffffffffffffffffffffffffffffffff 7780 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision +000000004d699d400000000000005491 dc1646b51af74616a28f6d262501014e ffffffffffffffffffffffffffffffff 1966 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib +000000004d407d930000000000004e05 3d22fc710bec9fbd91c7fb5d1545cb92 ffffffffffffffffffffffffffffffff 1675 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib +00000000000000000000000000000000 718f52da0df5d541d35bd6a744b504ec ffffffffffffffffffffffffffffffff 8 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PkgInfo +00000000000000000000000000000000 718f52da0df5d541d35bd6a744b504ec ffffffffffffffffffffffffffffffff 926 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist +00000000000000000000000000000000 b499dab3b9352205654a1f76bd619630 ffffffffffffffffffffffffffffffff 485 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist +00000000000000000000000000000000 0f42de934b02be27425d80e94e2ce9bb ffffffffffffffffffffffffffffffff 102 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM +5e4188bca1209e6907167ccba41fdc53 6efcb0abef93d98698d1747a9433770b ffffffffffffffffffffffffffffffff 52068 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong +9346fa5541e0082dc02d34effc1528a9 f723bf13552213eb405433fcc7271848 ffffffffffffffffffffffffffffffff 23396 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong +79447062241b7d6cff3ea9691d9fe194 4360bd9891f9f8c37851d2b182b20d26 ffffffffffffffffffffffffffffffff 23464 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong +4ac30befb750984fd0b410d6ddc14cc6 aab16e6b23eea33c6901c5fc0bc388f5 ffffffffffffffffffffffffffffffff 45424 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o +44fb34f96cc34e65f223910d4ab9ed76 addb2d5a42443237eff1bee352eac250 ffffffffffffffffffffffffffffffff 45924 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o +4ac30befb7509b0dd0b410d6ddc14f5b 648d61647e0fcfcc9a4dac32389c7728 ffffffffffffffffffffffffffffffff 37388 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o +44fb34f96cc34d27f223910d4ab9eeeb 145a4966e13c87e79092957e658e06ee ffffffffffffffffffffffffffffffff 37408 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o +4ac30befb6f81b7fd0b410d6ddc14b13 28f66a099b5c55692c60ad1fd78da8ce ffffffffffffffffffffffffffffffff 50260 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o +44fb34f96d6bcd55f223910d4ab9eaa3 31730fa90d486574857302c05f33f12a ffffffffffffffffffffffffffffffff 50340 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o +4ac30beffa10e689d0b410d6ddc14b75 758c9f53cbb309591f01f03e180b3931 ffffffffffffffffffffffffffffffff 6408 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o +44fb34f9218330a3f223910d4ab9eac5 f1b61bf7c6c59525052e80347504928b ffffffffffffffffffffffffffffffff 6424 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o +000000004d4068690000000000001e76 4ac30befb6d1e995d0b410d6ddc15ec2 ffffffffffffffffffffffffffffffff 10467032 /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch +000000004d4068690000000000001e76 44fb34f96d423fbff223910d4ab9ff72 ffffffffffffffffffffffffffffffff 10000088 /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state.dat b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state.dat new file mode 100644 index 0000000..d0b88b3 --- /dev/null +++ b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state.dat @@ -0,0 +1,502 @@ +TPong +v7 +r0 +t320469393.017794 +cCheck dependencies +cCpResource build/Debug-iphoneos/Pong.app/ResourceRules.plist /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist +cProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist Pong-Info.plist +cCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib +cCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib +cProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv6 objective-c com.apple.compilers.gcc.4_2 +cProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv7 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o /Users/jeena/Projects/Pong/main.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o /Users/jeena/Projects/Pong/main.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +cLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong normal armv7 +cLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong normal armv6 +cCreateUniversalBinary /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong normal "armv6 armv7" +cGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong +cProcessProductPackaging "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision +cTouch /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +cProcessProductPackaging /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent +cCodeSign /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk +c000000004CC7DC9E0000000000000110 +t1288166558 +s272 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist +c000000004CB3DFCF00000000000001A7 +t1286856655 +s423 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist +c000000004CB3DFCF00000000000001E5 +t1286856655 +s485 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics +c000000004CC10EF500000000003532B0 +t1287720693 +s3486384 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/Foundation.framework/Foundation +c000000004CC10F4700000000003E1F20 +t1287720775 +s4071200 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h +c000000004CC10F1C0000000000001466 +t1287720732 +s5222 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h +c000000004CC11AE60000000000000AA1 +t1287723750 +s2721 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/UIKit.framework/UIKit +c000000004CC11B750000000000C769F0 +t1287723893 +s13068784 + +N/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision +c000000004D699FBB0000000000001E64 +t1298767803 +s7780 + +N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.h +c000000004D407D9300000000000001C7 +t1296072083 +s455 +i + +N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m +c000000004D69B93F0000000000000A80 +t1298774335 +s2688 +i"PongAppDelegate.h" +i"PongViewController.h" + +N/Users/jeena/Projects/Pong/Classes/PongView.h +c000000004D69BEBA0000000000000300 +t1298775738 +s768 +i + +N/Users/jeena/Projects/Pong/Classes/PongView.m +c000000004D69C20E0000000000000E05 +t1298776590 +s3589 +i"PongView.h" + +N/Users/jeena/Projects/Pong/Classes/PongViewController.h +c000000004D69BEB400000000000000E0 +t1298775732 +s224 +i + +N/Users/jeena/Projects/Pong/Classes/PongViewController.m +c000000004D69C1F60000000000000603 +t1298776566 +s1539 +i"PongViewController.h" +i"PongView.h" + +N/Users/jeena/Projects/Pong/MainWindow.xib +c000000004D407D930000000000004E05 +t1296072083 +s19973 + +N/Users/jeena/Projects/Pong/PongViewController.xib +c000000004D69BF230000000000006F2D +t1298775843 +s28461 + +N/Users/jeena/Projects/Pong/Pong_Prefix.pch +c000000004D407D9300000000000000B1 +t1296072083 +s177 +i +i + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +t1298776593 +s374 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM +t1298776592 +s102 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist +t1298767847 +s926 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib +t1298767847 +s1675 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PkgInfo +t1298767847 +s8 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong +t1298776592 +s52796 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib +t1298775897 +s3735 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist +t1298767847 +s485 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision +t1298767848 +s7780 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong +t1298776592 +s24384 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong.LinkFileList +c000000004D699FE700000000000001A5 +t1298767847 +s421 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o +t1298775813 +s50340 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o +t1298776592 +s52200 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o +t1298776592 +s37916 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o +t1298767848 +s6424 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong +t1298776592 +s24124 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList +c000000004D699FE700000000000001A5 +t1298767847 +s421 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o +t1298775813 +s50260 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o +t1298776592 +s51000 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o +t1298776592 +s37888 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o +t1298767848 +s6408 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent +t1298767848 +s412 + +N/Users/jeena/Projects/Pong/main.m +c000000004D407D930000000000000160 +t1296072083 +s352 +i + +N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch +t1298767847 +s10467032 + +N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch +t1298767847 +s10000088 + +NPong-Info.plist +c000000004D699B7F0000000000000445 +t1298766719 +s1093 + +CCheck dependencies +r0 +lSLF07#2@18"Check dependencies320469392#320469392#0(0"0(0#1#0"8700022464#0"0# + +CCodeSign /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +s320469392.857553 +e320469393.017707 +r1 +xCodeSign +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +lSLF07#2@38"CodeSign build/Debug-iphoneos/Pong.app320469392#320469393#0(0"0(0#0#56"/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app8697824480#664" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" setenv _CODESIGN_ALLOCATE_ /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate /usr/bin/codesign -f -s "iPhone Developer: Richard Pannek (G62Q88N36M)" --resource-rules=/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist --entitlements /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +s320468613.562330 +e320468613.612767 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o +x/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m +xnormal +xarmv6 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m320468613#320468613#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8687287424#1639" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +s320469392.687280 +e320469392.816000 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o +x/Users/jeena/Projects/Pong/Classes/PongView.m +xnormal +xarmv6 +xobjective-c +xcom.apple.compilers.gcc.4_2 +o/Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView initWithCoder:]': +o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: 'PongView' may not respond to '-startPositions' +o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: (Messages without a matching method signature +o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: will be assumed to return 'id' and accept +o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: '...' as arguments.) +o/Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView moveBall]': +o/Users/jeena/Projects/Pong/Classes/PongView.m:71: warning: 'PongView' may not respond to '-startPositions' +o/Users/jeena/Projects/Pong/Classes/PongView.m: At top level: +o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires method '-pointsP1' to be defined - use @synthesize, @dynamic or provide a method implementation +o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires the method 'setPointsP1:' to be defined - use @synthesize, @dynamic or provide a method implementation +o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires method '-pointsP2' to be defined - use @synthesize, @dynamic or provide a method implementation +o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires the method 'setPointsP2:' to be defined - use @synthesize, @dynamic or provide a method implementation +lSLF07#2@53"Compile /Users/jeena/Projects/Pong/Classes/PongView.m320469392#320469392#0(1487"/Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView initWithCoder:]': /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: 'PongView' may not respond to '-startPositions' /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: (Messages without a matching method signature /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: will be assumed to return 'id' and accept /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: '...' as arguments.) /Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView moveBall]': /Users/jeena/Projects/Pong/Classes/PongView.m:71: warning: 'PongView' may not respond to '-startPositions' /Users/jeena/Projects/Pong/Classes/PongView.m: At top level: /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires method '-pointsP1' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires the method 'setPointsP1:' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires method '-pointsP2' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires the method 'setPointsP2:' to be defined - use @synthesize, @dynamic or provide a method implementation 8(22@47"'PongView' may not respond to '-startPositions'320469392#89#107#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#28#0#28#0#26"'*' may not respond to '*'0(13@108"(Messages without a matching method signature will be assumed to return 'id' and accept '...' as arguments.)320469392#196#105#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#28#0#28#0#0"0(22@47"'PongView' may not respond to '-startPositions'320469392#565#107#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#71#0#71#0#26"'*' may not respond to '*'0(23@13"At top level:320469392#672#61#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#0#0#0#0#0"0(22@124"Property 'pointsP1' requires method '-pointsP1' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#733#185#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(22@131"Property 'pointsP1' requires the method 'setPointsP1:' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#918#192#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(22@124"Property 'pointsP2' requires method '-pointsP2' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#1110#185#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(22@131"Property 'pointsP2' requires the method 'setPointsP2:' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#1295#192#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(0#0#45"/Users/jeena/Projects/Pong/Classes/PongView.m8700203072#1625" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongView.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +s320469392.651677 +e320469392.740891 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o +x/Users/jeena/Projects/Pong/Classes/PongViewController.m +xnormal +xarmv6 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m320469392#320469392#0(0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8699045408#1645" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o /Users/jeena/Projects/Pong/main.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +s320460647.962908 +e320460648.107719 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o +x/Users/jeena/Projects/Pong/main.m +xnormal +xarmv6 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m320460647#320460648#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8626145920#1609" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +s320468613.603601 +e320468613.663325 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o +x/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m +xnormal +xarmv7 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m320468613#320468613#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8689049920#1639" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +s320469392.739737 +e320469392.807440 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o +x/Users/jeena/Projects/Pong/Classes/PongView.m +xnormal +xarmv7 +xobjective-c +xcom.apple.compilers.gcc.4_2 +o/Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView initWithCoder:]': +o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: 'PongView' may not respond to '-startPositions' +o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: (Messages without a matching method signature +o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: will be assumed to return 'id' and accept +o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: '...' as arguments.) +o/Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView moveBall]': +o/Users/jeena/Projects/Pong/Classes/PongView.m:71: warning: 'PongView' may not respond to '-startPositions' +o/Users/jeena/Projects/Pong/Classes/PongView.m: At top level: +o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires method '-pointsP1' to be defined - use @synthesize, @dynamic or provide a method implementation +o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires the method 'setPointsP1:' to be defined - use @synthesize, @dynamic or provide a method implementation +o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires method '-pointsP2' to be defined - use @synthesize, @dynamic or provide a method implementation +o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires the method 'setPointsP2:' to be defined - use @synthesize, @dynamic or provide a method implementation +lSLF07#2@53"Compile /Users/jeena/Projects/Pong/Classes/PongView.m320469392#320469392#0(1487"/Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView initWithCoder:]': /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: 'PongView' may not respond to '-startPositions' /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: (Messages without a matching method signature /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: will be assumed to return 'id' and accept /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: '...' as arguments.) /Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView moveBall]': /Users/jeena/Projects/Pong/Classes/PongView.m:71: warning: 'PongView' may not respond to '-startPositions' /Users/jeena/Projects/Pong/Classes/PongView.m: At top level: /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires method '-pointsP1' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires the method 'setPointsP1:' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires method '-pointsP2' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires the method 'setPointsP2:' to be defined - use @synthesize, @dynamic or provide a method implementation 8(22@47"'PongView' may not respond to '-startPositions'320469392#89#107#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#28#0#28#0#26"'*' may not respond to '*'0(13@108"(Messages without a matching method signature will be assumed to return 'id' and accept '...' as arguments.)320469392#196#105#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#28#0#28#0#0"0(22@47"'PongView' may not respond to '-startPositions'320469392#565#107#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#71#0#71#0#26"'*' may not respond to '*'0(23@13"At top level:320469392#672#61#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#0#0#0#0#0"0(22@124"Property 'pointsP1' requires method '-pointsP1' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#733#185#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(22@131"Property 'pointsP1' requires the method 'setPointsP1:' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#918#192#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(22@124"Property 'pointsP2' requires method '-pointsP2' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#1110#185#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(22@131"Property 'pointsP2' requires the method 'setPointsP2:' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#1295#192#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(0#0#45"/Users/jeena/Projects/Pong/Classes/PongView.m8700118784#1625" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongView.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +s320469392.738647 +e320469392.788396 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o +x/Users/jeena/Projects/Pong/Classes/PongViewController.m +xnormal +xarmv7 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m320469392#320469392#0(0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8699403520#1645" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o /Users/jeena/Projects/Pong/main.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +s320460647.965463 +e320460648.108976 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o +x/Users/jeena/Projects/Pong/main.m +xnormal +xarmv7 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m320460647#320460648#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8615296512#1609" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o 0# + +CCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib +s320460647.108356 +e320460647.417594 +r1 +xCompileXIB +x/Users/jeena/Projects/Pong/MainWindow.xib +lSLF07#2@25"CompileXIB MainWindow.xib320460647#320460647#0(0"0(0#0#41"/Users/jeena/Projects/Pong/MainWindow.xib8630338784#580" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib /Users/jeena/Projects/Pong/MainWindow.xib --sdk /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk 0# + +CCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib +s320468697.485707 +e320468697.823419 +r1 +xCompileXIB +x/Users/jeena/Projects/Pong/PongViewController.xib +lSLF07#2@33"CompileXIB PongViewController.xib320468697#320468697#0(0"0(0#0#49"/Users/jeena/Projects/Pong/PongViewController.xib8687603392#596" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib /Users/jeena/Projects/Pong/PongViewController.xib --sdk /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk 0# + +CCpResource build/Debug-iphoneos/Pong.app/ResourceRules.plist /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist +s320460647.084951 +e320460647.108263 +r1 +xCpResource +xbuild/Debug-iphoneos/Pong.app/ResourceRules.plist +x/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist +lSLF07#2@94"Copy /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist320460647#320460647#0(0"0(0#0#89"/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist8027754748485782528#544" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -exclude .git -resolve-src-symlinks /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app 0# + +CCreateUniversalBinary /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong normal "armv6 armv7" +s320469392.834881 +e320469392.837074 +r1 +xCreateUniversalBinary +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong +xnormal +xarmv6 armv7 +lSLF07#2@77"CreateUniversalBinary build/Debug-iphoneos/Pong.app/Pong normal "armv6 armv7"320469392#320469392#0(0"0(0#0#38"/Users/jeena/Projects/Pong/armv6 armv78699147296#523" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/lipo -create /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong -output /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong 0# + +CGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong +s320469392.837125 +e320469392.855507 +r1 +xGenerateDSYMFile +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong +lSLF07#2@86"GenerateDSYMFile build/Debug-iphoneos/Pong.app.dSYM build/Debug-iphoneos/Pong.app/Pong320469392#320469392#0(0"0(0#0#61"/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong8699904896#394" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/dsymutil /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -o /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM 0# + +CLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong normal armv6 +s320469392.816061 +e320469392.834819 +r1 +xLd +x/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong +xnormal +xarmv6 +lSLF07#2@100"Link /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong320469392#320469392#0(0"0(0#0#0"8698714656#858" cd /Users/jeena/Projects/Pong setenv IPHONEOS_DEPLOYMENT_TARGET 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv6 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphoneos -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong.LinkFileList -dead_strip -miphoneos-version-min=3.0 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong 0# + +CLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong normal armv7 +s320469392.807515 +e320469392.827241 +r1 +xLd +x/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong +xnormal +xarmv7 +lSLF07#2@100"Link /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong320469392#320469392#0(0"0(0#0#0"8699873280#858" cd /Users/jeena/Projects/Pong setenv IPHONEOS_DEPLOYMENT_TARGET 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphoneos -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList -dead_strip -miphoneos-version-min=3.0 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong 0# + +CProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist Pong-Info.plist +s320460647.085574 +e320460647.098968 +r1 +xProcessInfoPlistFile +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist +xPong-Info.plist +lSLF07#2@23"Process Pong-Info.plist320460647#320460647#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong-Info.plist8624183552#579" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" builtin-infoPlistUtility Pong-Info.plist -genpkginfo /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PkgInfo -expandbuildsettings -format binary -platform iphoneos -resourcerulesfile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist -o /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist 0# + +CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv7 objective-c com.apple.compilers.gcc.4_2 +s320460647.421477 +e320460647.962835 +r1 +xProcessPCH +x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch +xPong_Prefix.pch +xnormal +xarmv7 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@26"Precompile Pong_Prefix.pch320460647#320460647#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8622066880#1522" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch 0# + +CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv6 objective-c com.apple.compilers.gcc.4_2 +s320460647.420828 +e320460647.936346 +r1 +xProcessPCH +x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch +xPong_Prefix.pch +xnormal +xarmv6 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@26"Precompile Pong_Prefix.pch320460647#320460647#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8623672672#1522" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch 0# + +CProcessProductPackaging "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision +s320460648.664649 +e320460648.665784 +r1 +xProcessProductPackaging +x/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision +lSLF07#2@189"ProcessProductPackaging "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" build/Debug-iphoneos/Pong.app/embedded.mobileprovision320460648#320460648#0(0"0(0#0#81"/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision8617274624#473" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" -o /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision 0# + +CProcessProductPackaging /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent +s320460648.667702 +e320460648.765541 +r1 +xProcessProductPackaging +x/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist +x/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent +lSLF07#2@166"ProcessProductPackaging /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent320460648#320460648#0(0"0(0#0#80"/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent8613426272#476" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist -entitlements -format xml -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent 0# + +CTouch /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +s320469392.855635 +e320469392.857447 +r1 +xTouch +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +lSLF07#2@62"Touch /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app320469392#320469392#0(0"0(0#0#0"8700259808#314" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/touch -c /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app 0# + diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state~.dat b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state~.dat new file mode 100644 index 0000000..fd1b197 --- /dev/null +++ b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state~.dat @@ -0,0 +1,477 @@ +TPong +v7 +r0 +t320460648.969474 +cCheck dependencies +cCpResource build/Debug-iphoneos/Pong.app/ResourceRules.plist /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist +cProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist Pong-Info.plist +cCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib +cCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib +cProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv6 objective-c com.apple.compilers.gcc.4_2 +cProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv7 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o /Users/jeena/Projects/Pong/main.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o /Users/jeena/Projects/Pong/main.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +cLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong normal armv7 +cLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong normal armv6 +cCreateUniversalBinary /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong normal "armv6 armv7" +cGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong +cProcessProductPackaging "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision +cTouch /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +cProcessProductPackaging /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent +cCodeSign /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk +c000000004CC7DC9E0000000000000110 +t1288166558 +s272 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist +c000000004CB3DFCF00000000000001A7 +t1286856655 +s423 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist +c000000004CB3DFCF00000000000001E5 +t1286856655 +s485 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics +c000000004CC10EF500000000003532B0 +t1287720693 +s3486384 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/Foundation.framework/Foundation +c000000004CC10F4700000000003E1F20 +t1287720775 +s4071200 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h +c000000004CC10F1C0000000000001466 +t1287720732 +s5222 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h +c000000004CC11AE60000000000000AA1 +t1287723750 +s2721 + +N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/UIKit.framework/UIKit +c000000004CC11B750000000000C769F0 +t1287723893 +s13068784 + +N/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision +c000000004D699FBB0000000000001E64 +t1298767803 +s7780 + +N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.h +c000000004D407D9300000000000001C7 +t1296072083 +s455 +i + +N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m +c000000004D407D930000000000000A80 +t1296072083 +s2688 +i"PongAppDelegate.h" +i"PongViewController.h" + +N/Users/jeena/Projects/Pong/Classes/PongView.h +c000000004D699C1900000000000001E9 +t1298766873 +s489 +i + +N/Users/jeena/Projects/Pong/Classes/PongView.m +c000000004D699F4C000000000000073A +t1298767692 +s1850 +i"PongView.h" + +N/Users/jeena/Projects/Pong/Classes/PongViewController.h +c000000004D699A8300000000000000E0 +t1298766467 +s224 +i + +N/Users/jeena/Projects/Pong/Classes/PongViewController.m +c000000004D699A9400000000000005AE +t1298766484 +s1454 +i"PongViewController.h" + +N/Users/jeena/Projects/Pong/MainWindow.xib +c000000004D407D930000000000004E05 +t1296072083 +s19973 + +N/Users/jeena/Projects/Pong/PongViewController.xib +c000000004D699D400000000000005491 +t1298767168 +s21649 + +N/Users/jeena/Projects/Pong/Pong_Prefix.pch +c000000004D407D9300000000000000B1 +t1296072083 +s177 +i +i + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +t1298767848 +s374 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM +t1298767848 +s102 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist +t1298767847 +s926 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib +t1298767847 +s1675 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PkgInfo +t1298767847 +s8 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong +t1298767848 +s52068 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib +t1298767847 +s1966 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist +t1298767847 +s485 + +N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision +t1298767848 +s7780 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong +t1298767848 +s23464 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong.LinkFileList +c000000004D699FE700000000000001A5 +t1298767847 +s421 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o +t1298767848 +s50340 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o +t1298767848 +s45924 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o +t1298767848 +s37408 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o +t1298767848 +s6424 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong +t1298767848 +s23396 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList +c000000004D699FE700000000000001A5 +t1298767847 +s421 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o +t1298767848 +s50260 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o +t1298767848 +s45424 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o +t1298767848 +s37388 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o +t1298767848 +s6408 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent +t1298767848 +s412 + +N/Users/jeena/Projects/Pong/main.m +c000000004D407D930000000000000160 +t1296072083 +s352 +i + +N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch +t1298767847 +s10467032 + +N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch +t1298767847 +s10000088 + +NPong-Info.plist +c000000004D699B7F0000000000000445 +t1298766719 +s1093 + +CCheck dependencies +r0 +lSLF07#2@18"Check dependencies320460647#320460647#0(0"0(0#1#0"8630472128#0"0# + +CCodeSign /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +s320460648.765593 +e320460648.969446 +r1 +xCodeSign +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +lSLF07#2@38"CodeSign build/Debug-iphoneos/Pong.app320460648#320460648#0(0"0(0#0#56"/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app8624671040#664" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" setenv _CODESIGN_ALLOCATE_ /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate /usr/bin/codesign -f -s "iPhone Developer: Richard Pannek (G62Q88N36M)" --resource-rules=/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist --entitlements /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +s320460647.963641 +e320460648.119205 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o +x/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m +xnormal +xarmv6 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m320460647#320460648#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8624388736#1639" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +s320460647.964859 +e320460648.125278 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o +x/Users/jeena/Projects/Pong/Classes/PongView.m +xnormal +xarmv6 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@53"Compile /Users/jeena/Projects/Pong/Classes/PongView.m320460647#320460648#0(0"0(0#0#45"/Users/jeena/Projects/Pong/Classes/PongView.m8617038528#1625" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongView.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +s320460647.964244 +e320460648.113556 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o +x/Users/jeena/Projects/Pong/Classes/PongViewController.m +xnormal +xarmv6 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m320460647#320460648#0(0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8621772064#1645" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o /Users/jeena/Projects/Pong/main.m normal armv6 objective-c com.apple.compilers.gcc.4_2 +s320460647.962908 +e320460648.107719 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o +x/Users/jeena/Projects/Pong/main.m +xnormal +xarmv6 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m320460647#320460648#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8626145920#1609" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +s320460647.966073 +e320460648.120333 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o +x/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m +xnormal +xarmv7 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m320460647#320460648#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8614640832#1639" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +s320460647.967790 +e320460648.124518 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o +x/Users/jeena/Projects/Pong/Classes/PongView.m +xnormal +xarmv7 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@53"Compile /Users/jeena/Projects/Pong/Classes/PongView.m320460647#320460648#0(0"0(0#0#45"/Users/jeena/Projects/Pong/Classes/PongView.m8613627648#1625" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongView.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +s320460647.966920 +e320460648.111460 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o +x/Users/jeena/Projects/Pong/Classes/PongViewController.m +xnormal +xarmv7 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m320460647#320460648#0(0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8614028928#1645" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o 0# + +CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o /Users/jeena/Projects/Pong/main.m normal armv7 objective-c com.apple.compilers.gcc.4_2 +s320460647.965463 +e320460648.108976 +r1 +xCompileC +xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o +x/Users/jeena/Projects/Pong/main.m +xnormal +xarmv7 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m320460647#320460648#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8615296512#1609" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o 0# + +CCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib +s320460647.108356 +e320460647.417594 +r1 +xCompileXIB +x/Users/jeena/Projects/Pong/MainWindow.xib +lSLF07#2@25"CompileXIB MainWindow.xib320460647#320460647#0(0"0(0#0#41"/Users/jeena/Projects/Pong/MainWindow.xib8630338784#580" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib /Users/jeena/Projects/Pong/MainWindow.xib --sdk /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk 0# + +CCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib +s320460647.108934 +e320460647.420748 +r1 +xCompileXIB +x/Users/jeena/Projects/Pong/PongViewController.xib +lSLF07#2@33"CompileXIB PongViewController.xib320460647#320460647#0(0"0(0#0#49"/Users/jeena/Projects/Pong/PongViewController.xib8626761312#596" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib /Users/jeena/Projects/Pong/PongViewController.xib --sdk /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk 0# + +CCpResource build/Debug-iphoneos/Pong.app/ResourceRules.plist /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist +s320460647.084951 +e320460647.108263 +r1 +xCpResource +xbuild/Debug-iphoneos/Pong.app/ResourceRules.plist +x/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist +lSLF07#2@94"Copy /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist320460647#320460647#0(0"0(0#0#89"/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist8027754748485782528#544" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -exclude .git -resolve-src-symlinks /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app 0# + +CCreateUniversalBinary /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong normal "armv6 armv7" +s320460648.437664 +e320460648.645956 +r1 +xCreateUniversalBinary +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong +xnormal +xarmv6 armv7 +lSLF07#2@77"CreateUniversalBinary build/Debug-iphoneos/Pong.app/Pong normal "armv6 armv7"320460648#320460648#0(0"0(0#0#38"/Users/jeena/Projects/Pong/armv6 armv78627110816#523" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/lipo -create /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong -output /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong 0# + +CGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong +s320460648.646093 +e320460648.664574 +r1 +xGenerateDSYMFile +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong +lSLF07#2@86"GenerateDSYMFile build/Debug-iphoneos/Pong.app.dSYM build/Debug-iphoneos/Pong.app/Pong320460648#320460648#0(0"0(0#0#61"/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong8623600384#394" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/dsymutil /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -o /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM 0# + +CLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong normal armv6 +s320460648.125338 +e320460648.431083 +r1 +xLd +x/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong +xnormal +xarmv6 +lSLF07#2@100"Link /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong320460648#320460648#0(0"0(0#0#0"8605251296#858" cd /Users/jeena/Projects/Pong setenv IPHONEOS_DEPLOYMENT_TARGET 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv6 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphoneos -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong.LinkFileList -dead_strip -miphoneos-version-min=3.0 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong 0# + +CLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong normal armv7 +s320460648.124583 +e320460648.437609 +r1 +xLd +x/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong +xnormal +xarmv7 +lSLF07#2@100"Link /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong320460648#320460648#0(0"0(0#0#0"8612763040#858" cd /Users/jeena/Projects/Pong setenv IPHONEOS_DEPLOYMENT_TARGET 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphoneos -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList -dead_strip -miphoneos-version-min=3.0 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong 0# + +CProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist Pong-Info.plist +s320460647.085574 +e320460647.098968 +r1 +xProcessInfoPlistFile +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist +xPong-Info.plist +lSLF07#2@23"Process Pong-Info.plist320460647#320460647#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong-Info.plist8624183552#579" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" builtin-infoPlistUtility Pong-Info.plist -genpkginfo /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PkgInfo -expandbuildsettings -format binary -platform iphoneos -resourcerulesfile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist -o /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist 0# + +CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv7 objective-c com.apple.compilers.gcc.4_2 +s320460647.421477 +e320460647.962835 +r1 +xProcessPCH +x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch +xPong_Prefix.pch +xnormal +xarmv7 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@26"Precompile Pong_Prefix.pch320460647#320460647#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8622066880#1522" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch 0# + +CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv6 objective-c com.apple.compilers.gcc.4_2 +s320460647.420828 +e320460647.936346 +r1 +xProcessPCH +x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch +xPong_Prefix.pch +xnormal +xarmv6 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@26"Precompile Pong_Prefix.pch320460647#320460647#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8623672672#1522" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch 0# + +CProcessProductPackaging "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision +s320460648.664649 +e320460648.665784 +r1 +xProcessProductPackaging +x/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision +lSLF07#2@189"ProcessProductPackaging "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" build/Debug-iphoneos/Pong.app/embedded.mobileprovision320460648#320460648#0(0"0(0#0#81"/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision8617274624#473" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" -o /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision 0# + +CProcessProductPackaging /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent +s320460648.667702 +e320460648.765541 +r1 +xProcessProductPackaging +x/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist +x/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent +lSLF07#2@166"ProcessProductPackaging /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent320460648#320460648#0(0"0(0#0#80"/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent8613426272#476" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist -entitlements -format xml -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent 0# + +CTouch /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +s320460648.665825 +e320460648.667651 +r1 +xTouch +x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app +lSLF07#2@62"Touch /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app320460648#320460648#0(0"0(0#0#0"8614781120#314" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/touch -c /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app 0# + diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o new file mode 100644 index 0000000000000000000000000000000000000000..3e880e9b30bb12d145f4c97ac140d3467bb43444 GIT binary patch literal 220036 zcmbq+31AdO)_+eJAc4pP41$UfO;ixnh-fVHEPtvprW$ss-OIS?^RWIRd-Jq_wV;@n5lOk_3G@N zH-7%=x2~3Db;ADw^56V!_>d#MZ_U7GpZ|vROtZ!VkNzck`d^;JD=dtZEQ~lrg@seY z7fyA))2G)zvY4JeFFZKSI%j`;2wF?%JN;K!IK5�h=!a|eBik~g(%TmkQ86?Z`-*ai!7viIb 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 T+zZqstIBvKirl7D*6I8ocDTUj literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o new file mode 100644 index 0000000000000000000000000000000000000000..bf0426d029b3eddd82b1e3130f1d90cef8d72306 GIT binary patch literal 22364 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 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~> b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~> new file mode 100644 index 0000000..e69de29 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~? b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~? new file mode 100644 index 0000000000000000000000000000000000000000..50a163522009039ccdfd646a0ca08882c7ff6809 GIT binary patch literal 36 scmZQzU|`Vsnd|TnlhV&G4bYsg?C|9Xlb7xOm%Gbr0rUY6F#rGn literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o new file mode 100644 index 0000000000000000000000000000000000000000..c1f147f79ff64f6a87001b758b8479223bd841f7 GIT binary patch literal 14792 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 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~> b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~> new file mode 100644 index 0000000..35dd9fe --- /dev/null +++ b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~> @@ -0,0 +1,18 @@ +/Users/jeena/Projects/Pong/Classes/Network.m:9:23: error: GGSNetwork.h: No such file or directory +/Users/jeena/Projects/Pong/Classes/Network.m:22: warning: cannot find interface declaration for 'GGSNetwork' +/Users/jeena/Projects/Pong/Classes/Network.m:22: error: no declaration of property 'asyncSocket' found in the interface +/Users/jeena/Projects/Pong/Classes/Network.m:22: error: no declaration of property 'delegate' found in the interface +/Users/jeena/Projects/Pong/Classes/Network.m: In function '-[GGSNetwork initWithDelegate:]': +/Users/jeena/Projects/Pong/Classes/Network.m:25: error: no super class declared in @interface for 'GGSNetwork' +/Users/jeena/Projects/Pong/Classes/Network.m:26: error: request for member 'delegate' in something not a structure or union +/Users/jeena/Projects/Pong/Classes/Network.m:27: error: 'asyncSocket' undeclared (first use in this function) +/Users/jeena/Projects/Pong/Classes/Network.m:27: error: (Each undeclared identifier is reported only once +/Users/jeena/Projects/Pong/Classes/Network.m:27: error: for each function it appears in.) +/Users/jeena/Projects/Pong/Classes/Network.m:27: error: 'AsyncSocket' undeclared (first use in this function) +/Users/jeena/Projects/Pong/Classes/Network.m: At top level: +/Users/jeena/Projects/Pong/Classes/Network.m:36: error: expected ')' before 'AsyncSocket' +/Users/jeena/Projects/Pong/Classes/Network.m:40: error: expected ')' before 'AsyncSocket' +/Users/jeena/Projects/Pong/Classes/Network.m: In function '-[GGSNetwork dealloc]': +/Users/jeena/Projects/Pong/Classes/Network.m:50: error: 'asyncSocket' undeclared (first use in this function) +/Users/jeena/Projects/Pong/Classes/Network.m:51: error: 'delegate' undeclared (first use in this function) +/Users/jeena/Projects/Pong/Classes/Network.m:53: error: no super class declared in @interface for 'GGSNetwork' diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~? b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~? new file mode 100644 index 0000000000000000000000000000000000000000..f554754c76aa4cf2ec87818f686c0c4f2091d398 GIT binary patch literal 36 scmZQzU|{@bf4+HTteiJ+`ehlz+hr*4-_AJG;va0TeP1?*IS* literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList new file mode 100644 index 0000000..13f0268 --- /dev/null +++ b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList @@ -0,0 +1,5 @@ +/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o +/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o +/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o +/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o +/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o new file mode 100644 index 0000000000000000000000000000000000000000..5012e153df0facde2acc5b300f088fbb4434e65c GIT binary patch literal 52648 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 Cq%4F0 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o new file mode 100644 index 0000000000000000000000000000000000000000..2c62a7e6ce13db48bc25b22b9afa7ec31a651723 GIT binary patch literal 55136 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 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~> b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~> new file mode 100644 index 0000000..e69de29 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~? b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~? new file mode 100644 index 0000000000000000000000000000000000000000..5792443351a73ab4c0ade497cdce03a2096cee70 GIT binary patch literal 36 scmZQzU|>kSySRGM+OD?Z)~ZRtmzksLcHf9`*k{G`<*L_(?L8j*02>q$8UO$Q literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o new file mode 100644 index 0000000000000000000000000000000000000000..be9ffc6b50cff4991c429cc56f411672974faf6d GIT binary patch literal 64988 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 A$p8QV literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o new file mode 100644 index 0000000000000000000000000000000000000000..87737434a5e1e63744ff30a55d0a8614bf5fd03a GIT binary patch literal 6280 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 Gi2nh(@1Y(5 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap new file mode 100644 index 0000000000000000000000000000000000000000..5d74c43a95f00b611e8c37c40fb62cc2fe185bed GIT binary patch literal 793 ecmXR&%*|kAU|^771`EJ7JnAoc-$5G|sSqVTpw6@w_OsYIq_2p9x#lsdOTjg^c@w>WcXu+OZC g-fE4Wl6hXfl~A<9*jwMd>Q9Bob8}0a`uHk50V!NRG5`Po literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong.dep b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong.dep new file mode 100644 index 0000000..b512d64 --- /dev/null +++ b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong.dep @@ -0,0 +1,16 @@ +8917e67a6283fb71cf595fb62d4d3406 56cc2bc71f47b6e8bb506948dc74b267 ffffffffffffffffffffffffffffffff 238 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app +00000000000000000000000000000000 5c0c6e8a12a675624381db4536989f8d ffffffffffffffffffffffffffffffff 102 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM +e0f14fe68c96c84d1b85c8f21fb334b4 153335991f675b11ea8e3e23b361bdeb ffffffffffffffffffffffffffffffff 153016 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong +c084bed5202717a84f2b8831ee27e0a3 a550299f2340f4c4024a3dbfe9bb777d ffffffffffffffffffffffffffffffff 22364 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o +c084bed526d662b74f2b8831ee2633c5 fd9755552148c4fe07644e32f677df88 ffffffffffffffffffffffffffffffff 220036 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o +c084bed520270c284f2b8831ee27fe4d 5ac6c2ad0bacad5fea32d550c54bcf29 ffffffffffffffffffffffffffffffff 64988 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o +c084bed56ccceb584f2b8831ee279f0e 8908036c9e542c5abf46de63f3508cd9 ffffffffffffffffffffffffffffffff 52648 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o +c084bed521a552364f2b8831ee27909a ab7c4c383c189b5204f4387dd82a702e ffffffffffffffffffffffffffffffff 6280 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o +000000004d4077d30000000000001e76 c084bed56d6470694f2b8831ee27852d ffffffffffffffffffffffffffffffff 15477968 /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch.gch +000000004d6ada3e0000000000006d7e cf06479b1d4e98bd5cd78cc97babf282 ffffffffffffffffffffffffffffffff 3576 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib +000000004d407d930000000000004e05 b3d3db9eec16573d628525aefa346ca0 ffffffffffffffffffffffffffffffff 1675 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib +00000000000000000000000000000000 97b9600ea8317fca98d360b45605f5c4 ffffffffffffffffffffffffffffffff 8 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo +00000000000000000000000000000000 97b9600ea8317fca98d360b45605f5c4 ffffffffffffffffffffffffffffffff 730 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist +ffffffffffffffffffffffffffffffff 7ebbd85c40be3a02f4d54ad0b78c48be ffffffffffffffffffffffffffffffff 55136 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o +ffffffffffffffffffffffffffffffff 05c6b675550fa0a805bb848eb98b7631 ffffffffffffffffffffffffffffffff 14792 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o +000000004d4077d30000000000001e76 2d9f861d7b2324b0485028c3b87499c9 ffffffffffffffffffffffffffffffff 15453392 /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong.hmap b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong.hmap new file mode 100644 index 0000000000000000000000000000000000000000..b2f016651de897c355005de6eaa225c5b925e790 GIT binary patch literal 1721 zcmeHFJqyAx5Iq-HSARt_I5?LI-K0=-)ez2p#Uvz=>gMAA_6{6e>LRE}A9*}3cb7XJ zaq?JC0AM}^paWOpk~oADC2mC4U%;A{m=RgO1@@13U>)(k1ABUc{bU_6I`Byc7Br0i z9_tWNN^lM9-y#hcqe`nfj7be*6VM0IA{r?QZ(CF`h{BpmWLk!RK|r3DE7VxYh}1#R m8e?yLM*$b6&ON31X4_z&Srfh08vUbeS9m-$=ftU(Q{fI+Yd=K* literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong~.dep b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong~.dep new file mode 100644 index 0000000..c41e18b --- /dev/null +++ b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong~.dep @@ -0,0 +1,11 @@ +258d0ccd568806565e1149141b3abb9f 56cc2bc71f47b6e8bb506948dc74b267 ffffffffffffffffffffffffffffffff 238 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app +000000004d407d930000000000001a39 70076419e653eee641bcc3138cd5995c ffffffffffffffffffffffffffffffff 795 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib +000000004d407d930000000000004e05 2e5999a1dd734e5eaf4aa76a3c1e7710 ffffffffffffffffffffffffffffffff 1117 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib +00000000000000000000000000000000 5d5a2b56116497b6be4496d1c5827fd8 ffffffffffffffffffffffffffffffff 8 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo +00000000000000000000000000000000 5d5a2b56116497b6be4496d1c5827fd8 ffffffffffffffffffffffffffffffff 606 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist +00000000000000000000000000000000 5c0c6e8a12a675624381db4536989f8d ffffffffffffffffffffffffffffffff 102 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM +591454b99e25cf03eb7b42dc0975d0a9 22c7a5ccf38d69ed5b9c6fb1a284d146 ffffffffffffffffffffffffffffffff 16840 /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong +2d9f861d7aa27b7c485028c3b874886e 939e2dceb687f95b565a22232d83c813 ffffffffffffffffffffffffffffffff 37412 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o +2d9f861d7b232ef0485028c3b8748c27 a859c35f5bfe73ad9e3b284a673e505c ffffffffffffffffffffffffffffffff 50700 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o +2d9f861d37e206ef485028c3b8748c7e 4f4c3c35453f16ab6b4a6076fbc870b1 ffffffffffffffffffffffffffffffff 6280 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o +000000004d4077d30000000000001e76 2d9f861d7b2324b0485028c3b87499c9 ffffffffffffffffffffffffffffffff 15453392 /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state.dat b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state.dat new file mode 100644 index 0000000..a977da1 --- /dev/null +++ b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state.dat @@ -0,0 +1,445 @@ +TPong +v7 +r0 +t320547922.149869 +cCheck dependencies +cProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist Pong-Info.plist +cCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib +cCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib +cProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch.gch Pong_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o /Users/jeena/Projects/Pong/main.m normal i386 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal i386 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal i386 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o /Users/jeena/Projects/Pong/Classes/AsyncSocket.m normal i386 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o /Users/jeena/Projects/Pong/Classes/GGSNetwork.m normal i386 objective-c com.apple.compilers.gcc.4_2 +cLd /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong normal i386 +cGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong +cTouch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk +c000000004CC128950000000000000110 +t1287727253 +s272 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/CFNetwork.framework/CFNetwork +c000000004CC1224400000000001C3D40 +t1287725636 +s1850688 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/CFNetwork.framework/Headers/CFNetwork.h +c000000004CC1221800000000000004CF +t1287725592 +s1231 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics +c000000004CC12246000000000029B310 +t1287725638 +s2732816 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/Foundation.framework/Foundation +c000000004CC1226D000000000029D5D0 +t1287725677 +s2741712 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h +c000000004CC1225F0000000000001466 +t1287725663 +s5222 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h +c000000004CC1281F0000000000000AA1 +t1287727135 +s2721 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/UIKit.framework/UIKit +c000000004CC12883000000000074D7B0 +t1287727235 +s7657392 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/usr/include/arpa/inet.h +c000000004CB3E46D0000000000001533 +t1286857837 +s5427 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/usr/include/netdb.h +c000000004A4181220000000000003057 +t1245806882 +s12375 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/usr/include/netinet/in.h +c000000004CBFACA90000000000005462 +t1287629993 +s21602 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/usr/include/sys/socket.h +c000000004CBFACAC0000000000005A69 +t1287629996 +s23145 + +N/Users/jeena/Projects/Pong/Classes/AsyncSocket.h +c000000004D69C48E0000000000007535 +t1298777230 +s30005 +i + +N/Users/jeena/Projects/Pong/Classes/AsyncSocket.m +c000000004D69C48E000000000001E66D +t1298777230 +s124525 +i"AsyncSocket.h" +i +i +i +i +i + +N/Users/jeena/Projects/Pong/Classes/GGSDelegate.h +c000000004D6AED0D00000000000001CB +t1298853133 +s459 +i +i"GGSNetwork.h" + +N/Users/jeena/Projects/Pong/Classes/GGSNetwork.h +c000000004D6ACD5E00000000000002E7 +t1298845022 +s743 +i +i"AsyncSocket.h" +i"GGSDelegate.h" + +N/Users/jeena/Projects/Pong/Classes/GGSNetwork.m +c000000004D6AF4CF0000000000000DE1 +t1298855119 +s3553 +i"GGSNetwork.h" + +N/Users/jeena/Projects/Pong/Classes/Network.h +c000000004D6ABFF4000000000000017B +t1298841588 +s379 +i +i"AsyncSocket.h" + +N/Users/jeena/Projects/Pong/Classes/Network.m +c000000004D6ABFED00000000000004C3 +t1298841581 +s1219 +i"GGSNetwork.h" + +N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.h +c000000004D407D9300000000000001C7 +t1296072083 +s455 +i + +N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m +c000000004D69B93F0000000000000A80 +t1298774335 +s2688 +i"PongAppDelegate.h" +i"PongViewController.h" + +N/Users/jeena/Projects/Pong/Classes/PongView.h +c000000004D6AD42600000000000000C1 +t1298846758 +s193 +i + +N/Users/jeena/Projects/Pong/Classes/PongView.m +c000000004D6AD4990000000000000241 +t1298846873 +s577 +i"PongView.h" + +N/Users/jeena/Projects/Pong/Classes/PongViewController.h +c000000004D6AED5C0000000000000478 +t1298853212 +s1144 +i +i"GGSDelegate.h" +i"GGSNetwork.h" + +N/Users/jeena/Projects/Pong/Classes/PongViewController.m +c000000004D6AEF1E00000000000016BC +t1298853662 +s5820 +i"PongViewController.h" +i"GGSNetwork.h" + +N/Users/jeena/Projects/Pong/MainWindow.xib +c000000004D407D930000000000004E05 +t1296072083 +s19973 + +N/Users/jeena/Projects/Pong/PongViewController.xib +c000000004D6ADA3E0000000000006D7E +t1298848318 +s28030 + +N/Users/jeena/Projects/Pong/Pong_Prefix.pch +c000000004D407D9300000000000000B1 +t1296072083 +s177 +i +i + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app +t1298855122 +s238 + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM +t1298855122 +s102 + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist +t1298767882 +s730 + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib +t1298767883 +s1675 + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo +t1298767882 +s8 + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong +t1298855122 +s153016 + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib +t1298848322 +s3576 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o +t1298813363 +s220036 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o +t1298855122 +s22364 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o +t1298841554 +s14792 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList +c000000004D6AD4F6000000000000022E +t1298846966 +s558 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o +t1298853311 +s52648 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o +t1298846057 +s55136 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o +t1298853665 +s64988 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o +t1298767883 +s6280 + +N/Users/jeena/Projects/Pong/main.m +c000000004D407D930000000000000160 +t1296072083 +s352 +i + +N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch +t1296319395 +s15453392 + +N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch.gch +t1298767883 +s15477968 + +NPong-Info.plist +c000000004D699B7F0000000000000445 +t1298766719 +s1093 + +CCheck dependencies +r0 +lSLF07#2@18"Check dependencies320547922#320547922#0(0"0(0#1#0"8620273120#0"0# + +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o /Users/jeena/Projects/Pong/Classes/AsyncSocket.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s320506163.448783 +e320506163.895998 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o +x/Users/jeena/Projects/Pong/Classes/AsyncSocket.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@56"Compile /Users/jeena/Projects/Pong/Classes/AsyncSocket.m320506163#320506163#0(0"0(0#0#48"/Users/jeena/Projects/Pong/Classes/AsyncSocket.m8701333952#1821" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/AsyncSocket.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o 0# + +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o /Users/jeena/Projects/Pong/Classes/GGSNetwork.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s320547922.019677 +e320547922.108375 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o +x/Users/jeena/Projects/Pong/Classes/GGSNetwork.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@55"Compile /Users/jeena/Projects/Pong/Classes/GGSNetwork.m320547922#320547922#0(0"0(0#0#47"/Users/jeena/Projects/Pong/Classes/GGSNetwork.m8697032064#1819" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/GGSNetwork.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o 0# + +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o /Users/jeena/Projects/Pong/Classes/Network.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s320534354.402493 +e320534354.480753 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o +x/Users/jeena/Projects/Pong/Classes/Network.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@52"Compile /Users/jeena/Projects/Pong/Classes/Network.m320534354#320534354#0(0"0(0#0#44"/Users/jeena/Projects/Pong/Classes/Network.m8713127104#1813" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/Network.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o 0# + +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s320546111.577589 +e320546111.695174 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o +x/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m320546111#320546111#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8615280160#1829" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o 0# + +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s320538857.214200 +e320538857.289112 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o +x/Users/jeena/Projects/Pong/Classes/PongView.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@53"Compile /Users/jeena/Projects/Pong/Classes/PongView.m320538857#320538857#0(0"0(0#0#45"/Users/jeena/Projects/Pong/Classes/PongView.m8702108160#1815" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongView.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o 0# + +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s320546465.378969 +e320546465.494968 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o +x/Users/jeena/Projects/Pong/Classes/PongViewController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +o/Users/jeena/Projects/Pong/Classes/PongViewController.m: In function '-[PongViewController GGSNetwork:ready:]': +o/Users/jeena/Projects/Pong/Classes/PongViewController.m:45: warning: local declaration of 'ggsNetwork' hides instance variable +o/Users/jeena/Projects/Pong/Classes/PongViewController.m:46: warning: local declaration of 'ggsNetwork' hides instance variable +o/Users/jeena/Projects/Pong/Classes/PongViewController.m: At top level: +o/Users/jeena/Projects/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation +o/Users/jeena/Projects/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation +lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m320546465#320546465#0(842"/Users/jeena/Projects/Pong/Classes/PongViewController.m: In function '-[PongViewController GGSNetwork:ready:]': /Users/jeena/Projects/Pong/Classes/PongViewController.m:45: warning: local declaration of 'ggsNetwork' hides instance variable /Users/jeena/Projects/Pong/Classes/PongViewController.m:46: warning: local declaration of 'ggsNetwork' hides instance variable /Users/jeena/Projects/Pong/Classes/PongViewController.m: At top level: /Users/jeena/Projects/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation 5(22@57"Local declaration of 'ggsNetwork' hides instance variable320546465#112#127#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#45#0#45#0#0"0(22@57"Local declaration of 'ggsNetwork' hides instance variable320546465#239#127#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#46#0#46#0#0"0(23@13"At top level:320546465#366#71#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#0#0#0#0#0"0(22@128"Property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation320546465#437#199#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#241#0#241#0#0"0(22@135"Property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation320546465#636#206#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#241#0#241#0#0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8702176672#1835" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o 0# + +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o /Users/jeena/Projects/Pong/main.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s320460683.547115 +e320460683.605167 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o +x/Users/jeena/Projects/Pong/main.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m320460683#320460683#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8627558368#1799" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o 0# + +CCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib +s320460682.803946 +e320460683.114061 +r1 +xCompileXIB +x/Users/jeena/Projects/Pong/MainWindow.xib +lSLF07#2@25"CompileXIB MainWindow.xib320460682#320460683#0(0"0(0#0#41"/Users/jeena/Projects/Pong/MainWindow.xib8626087712#608" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib /Users/jeena/Projects/Pong/MainWindow.xib --sdk /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk 0# + +CCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib +s320541122.647972 +e320541122.987901 +r1 +xCompileXIB +x/Users/jeena/Projects/Pong/PongViewController.xib +lSLF07#2@33"CompileXIB PongViewController.xib320541122#320541122#0(0"0(0#0#49"/Users/jeena/Projects/Pong/PongViewController.xib8638250336#624" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib /Users/jeena/Projects/Pong/PongViewController.xib --sdk /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk 0# + +CGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong +s320547922.133159 +e320547922.147945 +r1 +xGenerateDSYMFile +x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM +x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong +lSLF07#2@100"GenerateDSYMFile build/Debug-iphonesimulator/Pong.app.dSYM build/Debug-iphonesimulator/Pong.app/Pong320547922#320547922#0(0"0(0#0#68"/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong8715120192#415" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/dsymutil /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM 0# + +CLd /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong normal i386 +s320547922.108442 +e320547922.133084 +r1 +xLd +x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong +xnormal +xi386 +lSLF07#2@73"Link /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong320547922#320547922#0(0"0(0#0#0"8715172544#923" cd /Users/jeena/Projects/Pong setenv MACOSX_DEPLOYMENT_TARGET 10.6 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -framework Foundation -framework UIKit -framework CoreGraphics -framework CFNetwork -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong 0# + +CProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist Pong-Info.plist +s320460682.801056 +e320460682.803887 +r1 +xProcessInfoPlistFile +x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist +xPong-Info.plist +lSLF07#2@23"Process Pong-Info.plist320460682#320460682#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong-Info.plist8626925824#511" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" builtin-infoPlistUtility Pong-Info.plist -genpkginfo /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo -expandbuildsettings -format binary -platform iphonesimulator -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist 0# + +CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch Pong_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 +s318012194.697806 +e318012195.224785 +r1 +xProcessPCH +x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch +xPong_Prefix.pch +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@26"Precompile Pong_Prefix.pch318012194#318012195#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8609309824#1706" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40200 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch 0# + +CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch.gch Pong_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 +s320460683.117455 +e320460683.547046 +r1 +xProcessPCH +x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch.gch +xPong_Prefix.pch +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@26"Precompile Pong_Prefix.pch320460683#320460683#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8630404672#1706" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch.gch 0# + +CTouch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app +s320547922.148144 +e320547922.149847 +r1 +xTouch +x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app +lSLF07#2@69"Touch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app320547922#320547922#0(0"0(0#0#0"8715020768#328" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/touch -c /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app 0# + diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state~.dat b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state~.dat new file mode 100644 index 0000000..62f3970 --- /dev/null +++ b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state~.dat @@ -0,0 +1,256 @@ +TPong +v7 +r0 +t318012195.634308 +cCheck dependencies +cProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist Pong-Info.plist +cCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib +cCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib +cProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch Pong_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o /Users/jeena/Projects/Pong/main.m normal i386 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal i386 objective-c com.apple.compilers.gcc.4_2 +cCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal i386 objective-c com.apple.compilers.gcc.4_2 +cLd /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong normal i386 +cGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong +cTouch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk +c000000004CC128950000000000000110 +t1287727253 +s272 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics +c000000004CC12246000000000029B310 +t1287725638 +s2732816 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/Foundation.framework/Foundation +c000000004CC1226D000000000029D5D0 +t1287725677 +s2741712 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h +c000000004CC1225F0000000000001466 +t1287725663 +s5222 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h +c000000004CC1281F0000000000000AA1 +t1287727135 +s2721 + +N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/UIKit.framework/UIKit +c000000004CC12883000000000074D7B0 +t1287727235 +s7657392 + +N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.h +c000000004D407D9300000000000001C7 +t1296072083 +s455 +i + +N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m +c000000004D407D930000000000000A80 +t1296072083 +s2688 +i"PongAppDelegate.h" +i"PongViewController.h" + +N/Users/jeena/Projects/Pong/Classes/PongViewController.h +c000000004D407D9300000000000000DF +t1296072083 +s223 +i + +N/Users/jeena/Projects/Pong/Classes/PongViewController.m +c000000004D407D9300000000000005AF +t1296072083 +s1455 +i"PongViewController.h" + +N/Users/jeena/Projects/Pong/MainWindow.xib +c000000004D407D930000000000004E05 +t1296072083 +s19973 + +N/Users/jeena/Projects/Pong/PongViewController.xib +c000000004D407D930000000000001A39 +t1296072083 +s6713 + +N/Users/jeena/Projects/Pong/Pong_Prefix.pch +c000000004D407D9300000000000000B1 +t1296072083 +s177 +i +i + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app +t1296319395 +s238 + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM +t1296319395 +s102 + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist +t1296319394 +s606 + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib +t1296319394 +s1117 + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo +t1296319394 +s8 + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong +t1296319395 +s16840 + +N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib +t1296319394 +s795 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList +c000000004D4443A20000000000000151 +t1296319394 +s337 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o +t1296319395 +s50700 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o +t1296319395 +s37412 + +N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o +t1296319395 +s6280 + +N/Users/jeena/Projects/Pong/main.m +c000000004D407D930000000000000160 +t1296072083 +s352 +i + +N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch +t1296319395 +s15453392 + +NPong-Info.plist +c000000004D4443A000000000000003B4 +t1296319392 +s948 + +CCheck dependencies +r0 +lSLF07#2@18"Check dependencies318012194#318012194#0(0"0(0#1#0"8247620834010738688#0"0# + +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s318012195.225562 +e318012195.372367 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o +x/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m318012195#318012195#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8603119168#1829" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40200 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o 0# + +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s318012195.226156 +e318012195.370994 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o +x/Users/jeena/Projects/Pong/Classes/PongViewController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m318012195#318012195#0(0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8605157632#1835" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40200 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o 0# + +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o /Users/jeena/Projects/Pong/main.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s318012195.224858 +e318012195.362933 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o +x/Users/jeena/Projects/Pong/main.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m318012195#318012195#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8607991040#1799" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40200 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o 0# + +CCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib +s318012194.391821 +e318012194.640624 +r1 +xCompileXIB +x/Users/jeena/Projects/Pong/MainWindow.xib +lSLF07#2@25"CompileXIB MainWindow.xib318012194#318012194#0(0"0(0#0#41"/Users/jeena/Projects/Pong/MainWindow.xib8608631360#608" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 4.2 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib /Users/jeena/Projects/Pong/MainWindow.xib --sdk /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk 0# + +CCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib +s318012194.398208 +e318012194.697582 +r1 +xCompileXIB +x/Users/jeena/Projects/Pong/PongViewController.xib +lSLF07#2@33"CompileXIB PongViewController.xib318012194#318012194#0(0"0(0#0#49"/Users/jeena/Projects/Pong/PongViewController.xib8608550432#624" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 4.2 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib /Users/jeena/Projects/Pong/PongViewController.xib --sdk /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk 0# + +CGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong +s318012195.600080 +e318012195.632457 +r1 +xGenerateDSYMFile +x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM +x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong +lSLF07#2@100"GenerateDSYMFile build/Debug-iphonesimulator/Pong.app.dSYM build/Debug-iphonesimulator/Pong.app/Pong318012195#318012195#0(0"0(0#0#68"/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong8610862496#415" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/dsymutil /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM 0# + +CLd /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong normal i386 +s318012195.372421 +e318012195.600018 +r1 +xLd +x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong +xnormal +xi386 +lSLF07#2@73"Link /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong318012195#318012195#0(0"0(0#0#0"8610720896#902" cd /Users/jeena/Projects/Pong setenv MACOSX_DEPLOYMENT_TARGET 10.6 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong 0# + +CProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist Pong-Info.plist +s318012194.377033 +e318012194.391760 +r1 +xProcessInfoPlistFile +x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist +xPong-Info.plist +lSLF07#2@23"Process Pong-Info.plist318012194#318012194#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong-Info.plist31525678434287664#511" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" builtin-infoPlistUtility Pong-Info.plist -genpkginfo /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo -expandbuildsettings -format binary -platform iphonesimulator -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist 0# + +CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch Pong_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 +s318012194.697806 +e318012195.224785 +r1 +xProcessPCH +x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch +xPong_Prefix.pch +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@26"Precompile Pong_Prefix.pch318012194#318012195#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8609309824#1706" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40200 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch 0# + +CTouch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app +s318012195.632505 +e318012195.634223 +r1 +xTouch +x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app +lSLF07#2@69"Touch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app318012195#318012195#0(0"0(0#0#0"8609101664#328" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/touch -c /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app 0# + diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/categories.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/categories.pbxbtree new file mode 100644 index 0000000000000000000000000000000000000000..313a9af7179188fb6d9f1f71184f60d73937aba0 GIT binary patch literal 1364 zcmbu8ZD`J66vnT6o?%!mY^6Q))J5dKOA%&C9~prtHNge9+8n z+L|$xvKERDLrP8Z0nIneX7e(uvH2bU{rAk8B6nRod+u|cbFOpl^PeJVh=b9b2~rsL zB$#Cv!)G$K0JQFwa`s6@;29T{4N~kUsbasBJ1BKzNWD9xh++QrLTRu}x>7F1Uy|Nj zlU^Q{+Kx!wC!}cZ=N^zI!MEB8*rnT~RZiMU+*54LX>#M6-6Nd~NP9D-WO%9Ys_|D6 z-@)%QNAdCd^>KdC#NzW(64uwgD_5#VZzJ(JJMp8Z3q5P6J2eE+NuA8go|b#W6~ccA znwq5id}@I>^!_;H)kvoQG7wHVjDl&>4Y2x{w7D29ze z(qnIBdi;K>=DCsDfoAC&x{_*nm$SU{1+QP@Z(_cE7o`p4Ypq5<|1ZFAoZwYy%}wgu z3h~>i{R;SV{>-e$JEq_AkInO(T#a|wArN&}y4@ySZ}IZm?xYcuz+OhVKktI+D~D%! z>WQ)V7uf7B_9P&szn7L{S59@x!b1IZ3iun9?dh`EetiFX{CD!-BOWb9Z}~Ppdb_@? zM_Ld3y)nMk9o_$ZW{~&D>!TU_?y=ND4(r3``}Y-{(#8+c0I+_Imk-alb-?z_@^|7( z?Uwd@UT8O5)Pb}Cuul(8tpvwX&x wHq$93)@faw8~LvMIi&EN`m-2s_P+k{az(CiGK@YpAKRP1*#qmj?H}I!C%H@y-~a#s literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/cdecls.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/cdecls.pbxbtree new file mode 100644 index 0000000000000000000000000000000000000000..c9a2307efee4e3d437b09d67bd2a2f075c9884c3 GIT binary patch literal 157052 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 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/decls.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/decls.pbxbtree new file mode 100644 index 0000000000000000000000000000000000000000..6ce485926750879324e8882dc11332cf10f09c7a GIT binary patch literal 155688 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 z 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 HVqjnd(f~6N0+s*( literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/protocols.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/protocols.pbxbtree new file mode 100644 index 0000000000000000000000000000000000000000..1edef7dfbd6a74f2f9d1f5ebc7e9644ff0b6e1b1 GIT binary patch literal 1888 zcmbW1No-AV6vn^5YBf3_L8`5xPt(>c5(%-v1~DYU!dMkU%+b)OC}O6fv1rvo2SW@+ zgoV@))5cUHHi)Sb5s4Urny25n&&_+iFE(y+-v7RPzw@2%4EMB_^qY%AnQ>AJ&U!4% z9{j!HIX7Zg^QE0Lr1s^~80`BVX@9k}?SM3w=ObrIH)ctO-^$NT?hh}KrY)C3MN-NN z>C$Sc1nelV4ZN>eD76A_v9mdi?=bg?4bq^N(wxuIZq9@xr#v`IyErXPkdE|o>W^bJ z{%xJq4J|tn|LG9E;0uW{5kAv$iRarFUf%Lvu>VTFW*e&!Jej|2t z5wY+&gwIrbve2K5Un+hLCDKLmxVJ9CKb-sfSnYagL8;V;jol%gE0;1VBe9I%Y7^wC z!EZi3Pq5MWoy9L5Kf|{tUtix9;*R6}?X}V{;=QPlK4YDCNyS(qc+2-GJY&G^IxaO` zkF7Z{@ACPBJk@Y5tC9*%NPFIr*9R%>TUd|j59;i*JKTd!^dX~$I@eOieUbY3b?6H& z3(RIL6I?#H4dDD%N~^5h;2_qKw3O3;*hQgUa){5CsxoOFzyHR6An8V%*Y)xUsR zSe#-otMI$e`S7JQj~O}doW5{c|7*cpJq6zKzQ%K)-evP(y*FJpzgA!4u)h57WqBHp zpMM_tH8H!DH~9-bTh2I z)hp)vO>=(BFIeBI3(|OEe8e{y-|lkSn(Dl{G(8r#AM-H+%V0)UHHE*~2VY|KSiStX zW$&cD;IrYgJ`9d?x{F26f$l|Bc&n^>ZrfO`bz!_*%IB_05#WJKf>E)!AF@0a2#K`fBy+nB%k}*J%{} z2=#W}PVY3Jc^z5to_1g30eEY`PX_1DN^}T9d-#ljPRYcmqyJODwxsvg|2nKY&t_vk j`#Nu5T5W75g6}pAa(X-gebXZS^7Wg}UjePrI{f=T`kF{> literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/refs.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/refs.pbxbtree new file mode 100644 index 0000000000000000000000000000000000000000..f5b6b05f805cc265e9e7fb4e88774741dd7dbdc0 GIT binary patch literal 120664 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 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/strings.pbxstrings/strings b/games/Pong/build/Pong.build/Pong.pbxindex/strings.pbxstrings/strings new file mode 100644 index 0000000000000000000000000000000000000000..a211cbb002987874e57b68e93a3b075b6f4129e6 GIT binary patch literal 329124 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 +jRhu| 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 literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/subclasses.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/subclasses.pbxbtree new file mode 100644 index 0000000000000000000000000000000000000000..6400fc990eab5e81dd81732d1b233a7bed3b00c3 GIT binary patch literal 1896 zcmc(fdu)zp7{-5ht?l$v$|x;TY=r5wjI1K4!=i*~nvhN;BON2%#G=I(hpmnkMU_rO zQOv{~X6w)_X-Op07U2&f4zc|qDui}p4S%rf`40WQWb!8d+LK(l-@|?1&vjkT{k{pn zODzQ^$3T?gSs~Fq2ri#um5{gyMijuXt?)q^EG&l2pFscFFhQuxgR;+5FC1I|GnBh* zE_|&haC-w>R=ipc-6Uq_UO1%K_#-qa{#6ATZD43Ee4}{c9^}3OecBq0ijMDk)w_LW zDZgevoL62+6C~(;VNWAH8oEA*y}A!+%KR3t3A>A6`YI?Fj;xlqYha!@IbO9JVNwZH zmO}M5_-8xx5YHt-TWL6>zVlZG{AyNo+83xMQh&}d_;81O-vsxC*a}!7tP}R_4)gKa zt3vxZf0Dj~9O0&rs-7vkV71UYqK{Wj@}7XdrIk>$4?dMwe;j~*2VwLN@I-L_I9*wDG(-Jf_x#=$15jI zGwSB_iEyJ4TJFowXYlZa<`$zY+FE_~^04?(aE_bd!BaTZ0x=H)v%KeT&F#woA9r2} z5jl_A8EfN>g$YJMlCeD5{NF)IiZQ2yQP;`%va@ka?_%`K^>n&iA1}^hV$J{Et!r;| za(#q>+9SK85v`ts-!kHYeXg`I-i|X;-Zd%)8d2{VSu+jC`!_Rv)8eNZr=ikkOiVP2 zgq=c5pRhk(d;KmAce)riR5Q1$v89_aT$-AMkEHoZKciickJEl#T+XE%xkHSx@4woM zQR3jA Pa%{9QWO_*bs}=tXtO{rV literal 0 HcmV?d00001 diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/symbols0.pbxsymbols b/games/Pong/build/Pong.build/Pong.pbxindex/symbols0.pbxsymbols new file mode 100644 index 0000000000000000000000000000000000000000..6a882d5af02c00865f55d1c12535bc14411a3126 GIT binary patch literal 753376 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 XJD!%MZ={avqW2GCT1))mzB+%QT*IqIh(E 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

esEVSNN`Jtk=@*!AoPkp6cM!W4)Q`;MK9- zN_B8&thZAg{EJvmQXPCrtXqE?f4{vV)+?zFHe$V&>fr8Juctcr##nErI(S>Gw^AK^ zd#txp9lSHvlT-)qj`Te?GvEAS>Dhd<%?aas@H5hj<9l@dvh#B9d{>|2`&;AMuX;Z1 z{b-zn9>(Ew>_gwsI7DowJ?i`H%AxPG-(Qv=J&fz}`IS%Yr3-pH3eAY|*o^M&s6_X6 zRHA!3D$%_imFV7%N_1~WCAznx65ZQTiSF&FME7=7qI)|k(Y+m&=-!S>bZ1gIuYn%gMZqq* z+EW+Y==nl>?Afi)OXHnqheqi=yQGKqI^E8G9*zW>2odxgtW7p(79KNkFE?J7R6-phHnI6tHB zjKATD;k^27(zEmGaFu6>#K8wCh~{VFd0_G4ca47jm6`Ld(jSV>!{YmXnonO!+{>`7 z`JRS_`;-U47peTc>yuQk_1oXZdNb9*kH>mD)xmGZI_DQ3e}g}cbiGIMm*U0yiRc&p zLgSa&w(6DY2gGL157TYFA1=L^58d;DrTLQCc4Ekv$X@UGMi2c)VO|J5w42#>k;hT! zH=61B5xmUP3->Y6^?TI$k@Jz_)cNhXo-dSdCZ3t|TW%hJ?a!PF=eL)8KCzj4QU7_S z?1HZi>0WO=yXam&U|IcW-sUaJSC!SMe$YK180XV>hBPAWg7>(;Fh0%NfA&2e|2|NZ z-is$m?Sir0UjFuc)0dVy;Ju!|@ZBYJ-#=jK{;3Uw{NRDI{OFz^jPq+=#mftp#novK z*os%Fo|1e$p?f<5bNdY*;$+@O`6fdVlP zq+jm&)as*lQc360!7Iz`qPtx%7cboF1&r$@`z}Zq{mNs>!iHy7J$wOye<)^{B~>bh^<+rE*6xb%I7 z&%6CXyGHl8z+7B#j|SG^C~x}T#0Yr z%ZDE7tvsK;103#)F#n?b#p@>0^~>5v=C6?iyB+ZHo-gc=o?rBEo?4RcU(mz-Y|!(C z`)abM{n7<*a9vE}l70y>0Z#=2Y9(t&U zg1tyDv)8Dn_f^0f++SfoqlY*La&czmYt$B`?Qem-&GQ%A-^_Q!a`j0*w+rUVAL$>7 z$}d0J_MeLMUK|z9zxS#?9kefdx>&Sd(KSNTIN-lLJ&f1l@j)&QwsU`AE{;eqi=)%# zJ&UqmY**-R56smA+}jnHYgf_sxws-d7gwa0##LWvkCerQuA1tCEB{LEE!0~B?)3$3 zay_jtxR(RW#TDtfxFWqQE`4W9Ev^F|?S2aF4?Wad!C$23{6%`Hzt*BK?gr0|%C%38 zg;K3c8llH_bxWO<;meZ+V`6Ld9?kya2>Dp>Y7*INP2Zes8?O*|G9P8J2?+N zmhGp(GnH@60nub{YoQyMV8337Fp(^@X9$h&kb%1^i#)wi3*RN125&&m?o;efl|mZi{_A;1rm?mrDx*ZBK=Y;iqx#hqQe8d$D~-m@KwQp)IjL3M)%&)oa1#5<3pu-45e0jeElV`XzQAdUjuYZ`~h% zWc#J|4CQMrwbu)|pY(BIvebSctSqyECRkr)o50=8aDQo<`$dm~7sti={*UTk-~Sm_ z`lOh~Wy{>Z^zdA!q6xaMk3{$S@O9txCvabnnXXe8FI#WD|LpXBRXzQl5SU*VU-+I7 z-v=uFj%2I+J3mu<|HSu%+U46flJt8*d>^RvJCdZAuZs^2ecD#o#j3aLK1D744iNZE zug}6f47z^R^n8&WhmGb6-wz$|MbUof^;76R-Uf5m^Kf5J4|+Qf&79|FXLN7pCAzos zNcZ&^y2?dpw_*`stbP7vl>wJIeB-d;DNo{!V3;y}GR2=$;RZ^EKe!PC#!b zp&OXF&a18R+QiiJ%3@nJ$mRDSLOQ=^st}ub{ptE zKLM7lw{Ik?{5a`=pL2hqAMEXabhitZ#oMvf_MNi&L-%}OoUZ}*;}VR&%a)bDQ(0{X z%Iu-LJuqhv?)Jd=IPcl3t+u}1CG8sB?SVOaaJL7R*=w{{hvOYwC%eVt65Z{BIlFK_ zF2US!8R@y_JJ9`j1s6YmG$<3{1neO z=r?H{3Fz;yofMmy2W`|sdIy|+la9ZTzE2zR>!RzI+0FblTI)TYgW$2sm(6RoQym}40v$?!^)}`V4^!ud$ zxq04)qIq3ipRViV??V^wOBb(S{rZ@}%ohGB|5#*iZ!LX}pgzk!PyBjL_}_$F-##pC z&$8bOlUcU%b)faz(L&~TYr-1O--5gA{l32%&Gfkf@LKfj`gU(Sr0aR48)zj^&QfJ!f)NZ~zSoXYfvwZvPdCjT2xIgXrd}4H>=ciSk zZ_nOPj_LLsJ3-}3ugiAYT)O~14PG8}(PU?3u02;e_==#5CVKAbuf+@Zk#t{M`Mcm< zN}m+t`UI}}lpd~^#W?=p_h`F9eM~p!+811(P&M`HuYs;Ox?r#`rt7WLKA5u)FSD=p zM}FT2{7?BQ-uFS*?@|3iC4KG-{8?E(^wNAum=`|?&bb+XS%1R(wrWW8;)hC4>nq!j zn*a9k8<<9AdMNimq1-e2 zJ3ODZnmLXd$v~)2@E%WB?MCefJ(Qzh7d@=kU_F56E3DV3EC}&}-zbY0-R*+8{RDTr zV42-ceSsa2y=thKUVWp7@)zu(t3+MU{yJ+f)HhsvO!}bfVnO%)fWF4{!hWzY4}TCm zO6ggWl4nW&Y7ay%+qW`}hRh_y*OxnA-7TdkZaI_uIqx zLoDbX7kVx(xW@&S#?@YIhsu7jUeG-*Fjp_)suwUGM>gQ@AI$lOyMM6Ee}nl}oliU9 z#a>Ra==ec*yI|bEXZ6}>r}@Ea%JQQJ|5<*q==iNIwJ$%c`?pK&)t+B0@{jKR!BYRt zG(UK2S$=f)560(@Ui{7U`|{xXJbz(+0^R+CrT*J9->3g{S$@*pKUn6!(_C&}Q@-N< zM-P6Nm-_9rm)iqn`Ot&EET33Z-}Usl1@LEO@uIt5u(Z6b^!wf5!Z+%;2>r`G?KFP+ z?zQI!g#QPnLqSU zj?AB!`t#HunDYmBe_*LU+Zf6R{=Uo~x|a{k?GJdE_u6PH-lY8`MjYrGcXz>x>taFI zcwYLEu8T$OxR%BNp6cm^dPethgSq_&5A$1vIM6jd?}8x?G2(!G9AH@-oz_NsqWo7? zn&>z{_j&+x^#FhJ@%RB>1c;Bt;W%mo4fp@@XxgVuQ?FQZJ8I0?>cf7aL{NVLv`O&@p zz_|Xh{PFzCKQMn%y#N29x!nK1EX=Qbg!Df*zfye9+C%r{=U06GrZ3E&>`nNC--Pl0 zG~%A9%(C|iYqP8a?yiUVltyz_n6ChT=H*NKiOOuB|LlN^->m(k+0dxo(8D;pu#O(x z=l#IrJf9fH8{GQ=@D$f){CImpzrb~|sNb>hz97A?=_!%DeKN{V>)<>NFn6C5?(?_c zi#=b6Kie;jN?3oU_y07a^qyVxP`<+Z1k!w6Ft#gup?vdl<;(o-ZO!v|C))Gu9r&9_ zc#nb5=G*od$p9afR`a)~TzH({IdMK~*$xau1 z%mW$^iACeLBz;c{c!cK*{(AL*?)3=f$_w{)5611j0e633>`%JyXRvfXvmQl$v~KB~ zDE?j?=;8WhVSYcO`|%6L$FJ5wg>lY8yCy1^bl*?lDPF&6JA`}O;7r^J?@ygsFI5)z z-g;OMGtpdRFUHRV*QvJ(+dNkm#`vLB8gSq_xSEOCAG;Uk!emdX@9(SP~qkB6BbL|-J?HJ6p zW4Olw&cvbqhVQk~PPmd4jw>iuE|JkR3`{bH|uqkFxAxq5|r++Z$lxW@

  • T)oSk}oN`UzIn$-5OlOcDK&b@F7a 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�#teEC)7YI^(RmvenNe;Dd+{wLbC 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 Y(EVn`GxJ{j()7t`$%W#Xwf$}Wf8-gQ2LJ#7 literal 0 HcmV?d00001 diff --git a/games/Pong/main.m b/games/Pong/main.m new file mode 100644 index 0000000..0fd4b5f --- /dev/null +++ b/games/Pong/main.m @@ -0,0 +1,17 @@ +// +// main.m +// Pong +// +// Created by Jeena on 26.01.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import + +int main(int argc, char *argv[]) { + + NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; + int retVal = UIApplicationMain(argc, argv, nil, nil); + [pool release]; + return retVal; +} From d7e2eb43f51454b78b5e16e1f5c18c0ec2d463b1 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 28 Feb 2011 20:50:37 +0100 Subject: [PATCH 101/192] changed parser --- erlang_js | 2 +- games/Pong/Classes/GGSDelegate.h | 3 +- games/Pong/Classes/GGSNetwork.h | 7 +- games/Pong/Classes/GGSNetwork.m | 125 +++-- games/Pong/Classes/PongViewController.m | 12 +- games/Pong/Pong.xcodeproj/jeena.pbxuser | 479 +++++++++--------- .../Contents/Resources/DWARF/Pong | Bin 157884 -> 158651 bytes .../build/Debug-iphonesimulator/Pong.app/Pong | Bin 153016 -> 153464 bytes .../Objects-normal/i386/AsyncSocket.o | Bin 220036 -> 220068 bytes .../Objects-normal/i386/GGSNetwork.o | Bin 22364 -> 25104 bytes .../Objects-normal/i386/Pong.LinkFileList | 10 +- .../Objects-normal/i386/PongAppDelegate.o | Bin 52648 -> 52664 bytes .../Objects-normal/i386/PongViewController.o | Bin 64988 -> 65260 bytes .../Pong.build/Objects-normal/i386/main.o | Bin 6280 -> 6296 bytes .../Pong.build/Pong-project-headers.hmap | Bin 953 -> 971 bytes .../Debug-iphonesimulator/Pong.build/Pong.dep | 13 + .../Pong.build/Pong.hmap | Bin 1721 -> 1739 bytes .../Pong.build/build-state.dat | 294 ++++++++++- .../Pong.pbxindex/categories.pbxbtree | Bin 1364 -> 1364 bytes .../Pong.build/Pong.pbxindex/cdecls.pbxbtree | Bin 157052 -> 161940 bytes .../Pong.build/Pong.pbxindex/decls.pbxbtree | Bin 155688 -> 161128 bytes .../Pong.build/Pong.pbxindex/files.pbxbtree | Bin 3104 -> 3104 bytes .../Pong.build/Pong.pbxindex/imports.pbxbtree | Bin 8632 -> 8892 bytes .../Pong.build/Pong.pbxindex/pbxindex.header | Bin 24 -> 24 bytes .../Pong.pbxindex/protocols.pbxbtree | Bin 1888 -> 1888 bytes .../Pong.build/Pong.pbxindex/refs.pbxbtree | Bin 120664 -> 123264 bytes .../Pong.pbxindex/strings.pbxstrings/control | Bin 262164 -> 262164 bytes .../Pong.pbxindex/strings.pbxstrings/strings | Bin 329124 -> 345248 bytes .../Pong.pbxindex/subclasses.pbxbtree | Bin 1896 -> 1896 bytes .../Pong.pbxindex/symbols0.pbxsymbols | Bin 753376 -> 752024 bytes 30 files changed, 615 insertions(+), 330 deletions(-) diff --git a/erlang_js b/erlang_js index 2f2785f..709b568 160000 --- a/erlang_js +++ b/erlang_js @@ -1 +1 @@ -Subproject commit 2f2785fafb0da6db75810eb6fa97d09c58257588 +Subproject commit 709b568efbc99c954507d1593bc5633f900bc5dc diff --git a/games/Pong/Classes/GGSDelegate.h b/games/Pong/Classes/GGSDelegate.h index 66fcb49..da7d71a 100644 --- a/games/Pong/Classes/GGSDelegate.h +++ b/games/Pong/Classes/GGSDelegate.h @@ -14,7 +14,8 @@ @protocol GGSDelegate - (void)GGSNetwork:(GGSNetwork *)ggsNetwork ready:(BOOL)ready; -- (void)GGSNetwork:(GGSNetwork *)ggsNetwork gotCommand:(NSString *)command withArgs:(NSString *)args; +- (void)GGSNetwork:(GGSNetwork *)ggsNetwork defined:(BOOL)defined; +- (void)GGSNetwork:(GGSNetwork *)ggsNetwork receivedCommand:(NSString *)command withArgs:(NSString *)args; - (void)GGSNetwork:(GGSNetwork *)ggsNetwork defined:(BOOL)defined; @end diff --git a/games/Pong/Classes/GGSNetwork.h b/games/Pong/Classes/GGSNetwork.h index ccd066d..664fc19 100644 --- a/games/Pong/Classes/GGSNetwork.h +++ b/games/Pong/Classes/GGSNetwork.h @@ -16,15 +16,18 @@ AsyncSocket *asyncSocket; id delegate; NSString *gameToken; - NSString *currentCommand; + NSDictionary *currentHeaders; } @property (nonatomic, retain) AsyncSocket *asyncSocket; @property (nonatomic, retain) id delegate; +@property (nonatomic, retain) NSDictionary *currentHeaders; @property (nonatomic, retain) NSString *gameToken; -@property (nonatomic, retain) NSString *currentCommand; - (id)initWithDelegate:(id)delegate; +- (NSData *)makeMessageWithCommand:(NSString *)command andArgs:(NSString *)args; +- (void)parseHeader:(NSData *)headerData; + - (void)define:(NSString *)sourceCode; - (void)sendCommand:(NSString *)command withArgs:(NSString *)args; diff --git a/games/Pong/Classes/GGSNetwork.m b/games/Pong/Classes/GGSNetwork.m index 24488af..1003c48 100644 --- a/games/Pong/Classes/GGSNetwork.m +++ b/games/Pong/Classes/GGSNetwork.m @@ -11,53 +11,51 @@ @implementation GGSNetwork -#define GGS_HOST @"jeena.net"; +#define GGS_HOST @"localhost" #define GGS_PORT 9000 #define NO_TIMEOUT -1 -#define CONNECT_RESPONSE_TAG 9 -#define HELLO_REQUEST_TAG 10 -#define HELLO_RESPONSE_TAG 11 -#define DEFINE_REQUEST_TAG 12 -#define DEFINE_RESPONSE_TAG 13 -#define COMMAND_REQUEST_TAG 14 -#define COMMAND_RESPONSE_TAG 15 -#define ARGS_RESPONSE_TAG 16 +#define HEADER_DELIMITER [@"\n\n" dataUsingEncoding:NSUTF8StringEncoding] -@synthesize asyncSocket, delegate, gameToken, currentCommand; +#define CONNECT_HEAD 8 +#define CONNECT_BODY 9 +#define HELLO_HEAD 10 +#define HELLO_BODY 11 +#define DEFINE_HEAD 12 +#define DEFINE_BODY 13 +#define COMMAND_HEAD 14 +#define COMMAND_BODY 15 + +@synthesize asyncSocket, delegate, gameToken, currentHeaders; - (id)initWithDelegate:(id)_delegate { if (self = [super init]) { delegate = _delegate; asyncSocket = [[AsyncSocket alloc] initWithDelegate:self]; - [asyncSocket connectToHost:@"jeena.net" onPort:9000 error:nil]; - [asyncSocket readDataToLength:36 withTimeout:NO_TIMEOUT tag:CONNECT_RESPONSE_TAG]; + [asyncSocket connectToHost:GGS_HOST onPort:GGS_PORT error:nil]; + [asyncSocket readDataToData:HEADER_DELIMITER withTimeout:NO_TIMEOUT tag:CONNECT_HEAD]; } return self; } +- (NSData *)makeMessageWithCommand:(NSString *)command andArgs:(NSString *)args { + return [[NSString stringWithFormat:@"Token: %@\nServer-Command: %@\nContent-Length: %i\n\n%@", + self.gameToken, + command, + [args length], + args] dataUsingEncoding:NSUTF8StringEncoding]; +} + - (void)define:(NSString *)sourceCode { - NSString *body = [NSString stringWithFormat:@"Token: %@\nServer-Command: define\nContent-Length: %i\n\n%@", - self.gameToken, - [sourceCode length], - sourceCode]; - - [asyncSocket writeData:[body dataUsingEncoding:NSUTF8StringEncoding] withTimeout:NO_TIMEOUT tag:DEFINE_REQUEST_TAG]; - [asyncSocket readDataToData:[@"\n\n" dataUsingEncoding:NSUTF8StringEncoding] withTimeout:NO_TIMEOUT tag:DEFINE_RESPONSE_TAG]; + [asyncSocket writeData:[self makeMessageWithCommand:@"define" andArgs:sourceCode] withTimeout:NO_TIMEOUT tag:DEFINE_HEAD]; + [asyncSocket readDataToData:HEADER_DELIMITER withTimeout:NO_TIMEOUT tag:DEFINE_BODY]; } - (void)sendCommand:(NSString *)command withArgs:(NSString *)args { - NSString *body = [NSString stringWithFormat:@"Token: %@\nGame-Command: %@\nContent-Length: %i\n\n%@", - self.gameToken, - command, - [args length]+1, - args]; - - [asyncSocket writeData:[body dataUsingEncoding:NSUTF8StringEncoding] withTimeout:NO_TIMEOUT tag:COMMAND_REQUEST_TAG]; - // [asyncSocket readDataToData:[@"\n\n" dataUsingEncoding:NSUTF8StringEncoding] withTimeout:NO_TIMEOUT tag:COMMAND_RESPONSE_TAG]; - [asyncSocket readDataToData:[@"\n" dataUsingEncoding:NSUTF8StringEncoding] withTimeout:NO_TIMEOUT tag:ARGS_RESPONSE_TAG]; // FIXME change to \n\n abd COMMAND_RESPONSE_TAG + [asyncSocket writeData:[self makeMessageWithCommand:command andArgs:args] withTimeout:NO_TIMEOUT tag:COMMAND_HEAD]; + [asyncSocket readDataToData:HEADER_DELIMITER withTimeout:NO_TIMEOUT tag:COMMAND_BODY]; } - (void)onSocket:(AsyncSocket *)sock didConnectToHost:(NSString *)host port:(UInt16)port { @@ -66,50 +64,75 @@ - (void)onSocket:(AsyncSocket *)sender didReadData:(NSData *)data withTag:(long)tag { - if (tag == CONNECT_RESPONSE_TAG) { + if (tag == CONNECT_HEAD) { + [self parseHeader:data]; + + if ([self.currentHeaders objectForKey:@"Size"] != nil) { + [asyncSocket readDataToLength:[[self.currentHeaders objectForKey:@"Size"] intValue] withTimeout:NO_TIMEOUT tag:CONNECT_BODY]; + } + + + } else if (tag == CONNECT_BODY) { + NSString *response = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; self.gameToken = response; [response release]; - [delegate GGSNetwork:self ready:YES]; - } else if (tag == DEFINE_RESPONSE_TAG) { + } else if (tag == DEFINE_HEAD) { [self.delegate GGSNetwork:self defined:YES]; - } else if (tag == COMMAND_RESPONSE_TAG) { + } else if (tag == DEFINE_BODY) { - NSString *response = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; - NSArray *headers = [response componentsSeparatedByString:@"\n"]; - [response release]; - - for (NSInteger i = 0; i < [headers count]; i++) { - NSString *header = [headers objectAtIndex:i]; - - if ([header rangeOfString:@"Client-Command: "].location == 0) { - self.currentCommand = [header substringFromIndex:16]; - } else if ([header rangeOfString:@"Size: "].location == 0) { - [asyncSocket readDataToLength:[[header substringFromIndex:6] intValue] withTimeout:NO_TIMEOUT tag:ARGS_RESPONSE_TAG]; - } + // nothing to do + + } else if (tag == COMMAND_HEAD) { + + [self parseHeader:data]; + + if ([self.currentHeaders objectForKey:@"Size"] != nil) { + [asyncSocket readDataToLength:[[self.currentHeaders objectForKey:@"Size"] intValue] withTimeout:NO_TIMEOUT tag:COMMAND_BODY]; } - } else if (tag == ARGS_RESPONSE_TAG) { + } else if (tag == COMMAND_BODY) { NSString *response = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; - [delegate GGSNetwork:self gotCommand:self.currentCommand withArgs:response]; + if ([self.currentHeaders objectForKey:@"Client-Command"] != nil) { + [delegate GGSNetwork:self receivedCommand:[self.currentHeaders objectForKey:@"Client-Command"] withArgs:response]; + [asyncSocket readDataToData:HEADER_DELIMITER withTimeout:NO_TIMEOUT tag:COMMAND_BODY]; + } [response release]; - //self.currentCommand = nil; - - [asyncSocket readDataToData:[@"\n" dataUsingEncoding:NSUTF8StringEncoding] withTimeout:NO_TIMEOUT tag:ARGS_RESPONSE_TAG]; - } } +- (void)parseHeader:(NSData *)headerData { + NSString *headerString = [[NSString alloc] initWithData:headerData encoding:NSUTF8StringEncoding]; + NSArray *headers = [headerString componentsSeparatedByString:@"\n"]; + + NSMutableDictionary *dict = [[NSMutableDictionary alloc] initWithCapacity:[headers count]]; + + for (NSInteger i=0; i<[headers count]; i++) { + NSString *header = [headers objectAtIndex:i]; + + if ([header rangeOfString:@"Client-Command: "].location == 0) { + [dict setValue:[header substringFromIndex:16] forKey:@"Client-Command"]; + } else if ([header rangeOfString:@"Size: "].location == 0) { + [dict setValue:[header substringFromIndex:6] forKey:@"Size"]; + } + } + + self.currentHeaders = dict; + [headerString release]; + [dict release]; +} + - (void)dealloc { [asyncSocket release]; + [gameToken release]; - [currentCommand release]; + [currentHeaders release]; [super dealloc]; } diff --git a/games/Pong/Classes/PongViewController.m b/games/Pong/Classes/PongViewController.m index b9166f4..8a9b1de 100644 --- a/games/Pong/Classes/PongViewController.m +++ b/games/Pong/Classes/PongViewController.m @@ -41,21 +41,21 @@ #pragma mark - #pragma mark GGSNetwork Delegate -- (void)GGSNetwork:(GGSNetwork *)ggsNetwork ready:(BOOL)ready { - [ggsNetwork sendCommand:@"nick" withArgs:@"jeena"]; - [ggsNetwork sendCommand:@"chat" withArgs:@"Hi everybody I'm pong."]; +- (void)GGSNetwork:(GGSNetwork *)_ggsNetwork ready:(BOOL)ready { + [ggsNetwork define:@"function playerCommand(user, command, args) { user.sendCommand(command, args); }"]; } -- (void)GGSNetwork:(GGSNetwork *)ggsNetwork defined:(BOOL)defined { +- (void)GGSNetwork:(GGSNetwork *)_ggsNetwork defined:(BOOL)defined { if (defined) { - NSLog(@"Defined"); + [ggsNetwork sendCommand:@"nick" withArgs:@"jeena"]; + [ggsNetwork sendCommand:@"chat" withArgs:@"Hi everybody I'm pong."]; } else { NSLog(@"Not defined"); } } -- (void)GGSNetwork:(GGSNetwork *)ggsNetwork gotCommand:(NSString *)command withArgs:(NSString *)args { +- (void)GGSNetwork:(GGSNetwork *)ggsNetwork receivedCommand:(NSString *)command withArgs:(NSString *)args { NSLog(@"Command: %@; Args: %@", command, args); } diff --git a/games/Pong/Pong.xcodeproj/jeena.pbxuser b/games/Pong/Pong.xcodeproj/jeena.pbxuser index 322ef53..3ec1a00 100644 --- a/games/Pong/Pong.xcodeproj/jeena.pbxuser +++ b/games/Pong/Pong.xcodeproj/jeena.pbxuser @@ -100,7 +100,7 @@ ); name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; rLen = 0; - rLoc = 9223372036854775807; + rLoc = 9223372036854775808; }; 1FBEBE4D1319CC38006D5497 /* PlistBookmark */ = { isa = PlistBookmark; @@ -111,7 +111,7 @@ ); name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; rLen = 0; - rLoc = 9223372036854775807; + rLoc = 9223372036854775808; }; 1FBEBE641319D1E5006D5497 /* PongView.h */ = { isa = PBXFileReference; @@ -120,11 +120,6 @@ name = PongView.h; path = /Users/jeena/Projects/Pong/Classes/PongView.h; sourceTree = ""; - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {900, 958}}"; - sepNavSelRange = "{186, 0}"; - sepNavVisRange = "{0, 193}"; - }; }; 1FBEBE651319D1E5006D5497 /* PongView.m */ = { isa = PBXFileReference; @@ -133,11 +128,6 @@ name = PongView.m; path = /Users/jeena/Projects/Pong/Classes/PongView.m; sourceTree = ""; - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {900, 958}}"; - sepNavSelRange = "{527, 0}"; - sepNavVisRange = "{0, 577}"; - }; }; 1FBEBE911319D79C006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; @@ -178,7 +168,7 @@ ); name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; rLen = 0; - rLoc = 9223372036854775807; + rLoc = 9223372036854775808; }; 1FBEBE951319D79C006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; @@ -339,7 +329,7 @@ ); name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; rLen = 0; - rLoc = 9223372036854775807; + rLoc = 9223372036854775808; }; 1FBEBF161319F5C1006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; @@ -549,11 +539,10 @@ sepNavVisRange = "{1376, 2177}"; }; }; - 1FBEBFFD131AA714006D5497 /* XCBuildMessageTextBookmark */ = { + 1FBEBFFD131AA714006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; comments = "'HEIGHT' undeclared (first use in this function)"; fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - fallbackIsa = XCBuildMessageTextBookmark; rLen = 0; rLoc = 29; rType = 1; @@ -733,7 +722,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "Network.m: 37"; rLen = 0; - rLoc = 2143; + rLoc = 2142; rType = 0; vrLen = 1235; vrLoc = 0; @@ -860,7 +849,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 58"; rLen = 0; - rLoc = 2394; + rLoc = 2393; rType = 0; vrLen = 1526; vrLoc = 26; @@ -930,7 +919,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 74"; rLen = 0; - rLoc = 3212; + rLoc = 3211; rType = 0; vrLen = 2239; vrLoc = 286; @@ -960,7 +949,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 75"; rLen = 0; - rLoc = 3212; + rLoc = 3211; rType = 0; vrLen = 2099; vrLoc = 469; @@ -970,7 +959,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 75"; rLen = 0; - rLoc = 2696; + rLoc = 2695; rType = 0; vrLen = 2191; vrLoc = 470; @@ -980,7 +969,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 80"; rLen = 0; - rLoc = 2983; + rLoc = 2982; rType = 0; vrLen = 2306; vrLoc = 437; @@ -990,7 +979,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 89"; rLen = 0; - rLoc = 3373; + rLoc = 3372; rType = 0; vrLen = 2426; vrLoc = 873; @@ -1005,11 +994,10 @@ vrLen = 740; vrLoc = 0; }; - 1FBEC053131B04DE006D5497 /* XCBuildMessageTextBookmark */ = { + 1FBEC053131B04DE006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; comments = "Invalid receiver type ''"; fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - fallbackIsa = XCBuildMessageTextBookmark; rLen = 1; rLoc = 110; rType = 1; @@ -1019,7 +1007,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 106"; rLen = 0; - rLoc = 3656; + rLoc = 3655; rType = 0; vrLen = 2006; vrLoc = 1374; @@ -1029,7 +1017,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 106"; rLen = 0; - rLoc = 3656; + rLoc = 3655; rType = 0; vrLen = 1963; vrLoc = 0; @@ -1129,16 +1117,15 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 106"; rLen = 22; - rLoc = 3656; + rLoc = 3655; rType = 0; vrLen = 128; vrLoc = 3252; }; - 1FBEC064131B0886006D5497 /* XCBuildMessageTextBookmark */ = { + 1FBEC064131B0886006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; comments = "Cannot find protocol declaration for 'GGSDelegate'"; fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - fallbackIsa = XCBuildMessageTextBookmark; rLen = 1; rLoc = 16; rType = 1; @@ -1173,11 +1160,10 @@ vrLen = 372; vrLoc = 371; }; - 1FBEC06A131B088B006D5497 /* XCBuildMessageTextBookmark */ = { + 1FBEC06A131B088B006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; comments = "Expected ';' before ':' token"; fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - fallbackIsa = XCBuildMessageTextBookmark; rLen = 0; rLoc = 29; rType = 1; @@ -1202,11 +1188,10 @@ vrLen = 1580; vrLoc = 557; }; - 1FBEC06D131B0890006D5497 /* XCBuildMessageTextBookmark */ = { + 1FBEC06D131B0890006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; comments = "Expected ';' before ':' token"; fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - fallbackIsa = XCBuildMessageTextBookmark; rLen = 0; rLoc = 29; rType = 1; @@ -1311,11 +1296,10 @@ vrLen = 316; vrLoc = 387; }; - 1FBEC080131B094B006D5497 /* XCBuildMessageTextBookmark */ = { + 1FBEC080131B094B006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; comments = "'UIView' may not respond to '-zeroPoints'"; fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - fallbackIsa = XCBuildMessageTextBookmark; rLen = 1; rLoc = 216; rType = 1; @@ -1945,7 +1929,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 63"; rLen = 0; - rLoc = 2143; + rLoc = 2142; rType = 0; vrLen = 2316; vrLoc = 406; @@ -1990,11 +1974,10 @@ vrLen = 327; vrLoc = 137; }; - 1FBEC128131B255B006D5497 /* XCBuildMessageTextBookmark */ = { + 1FBEC128131B255B006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; comments = "Expected ';' before ':' token"; fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - fallbackIsa = XCBuildMessageTextBookmark; rLen = 1; rLoc = 231; rType = 1; @@ -2044,7 +2027,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 74"; rLen = 0; - rLoc = 2458; + rLoc = 2457; rType = 0; vrLen = 2367; vrLoc = 727; @@ -2114,7 +2097,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 103"; rLen = 0; - rLoc = 3557; + rLoc = 3556; rType = 0; vrLen = 2399; vrLoc = 1105; @@ -2124,7 +2107,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 103"; rLen = 0; - rLoc = 3602; + rLoc = 3601; rType = 0; vrLen = 2422; vrLoc = 1128; @@ -2134,7 +2117,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 101"; rLen = 0; - rLoc = 3451; + rLoc = 3450; rType = 0; vrLen = 2326; vrLoc = 1246; @@ -2164,7 +2147,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 59"; rLen = 0; - rLoc = 1910; + rLoc = 1909; rType = 0; vrLen = 2177; vrLoc = 1376; @@ -2217,215 +2200,215 @@ PBXFileDataSource_Target_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 320457762; - PBXWorkspaceStateSaveDate = 320457762; + PBXPerProjectTemplateStateSaveDate = 320608425; + PBXWorkspaceStateSaveDate = 320608425; }; perUserProjectItems = { 1FB25C6312F4AAD8009AC8AB = 1FB25C6312F4AAD8009AC8AB /* PBXTextBookmark */; 1FB25C6412F4AAD8009AC8AB = 1FB25C6412F4AAD8009AC8AB /* PBXBookmark */; 1FB25C6512F4AAD8009AC8AB = 1FB25C6512F4AAD8009AC8AB /* PlistBookmark */; - 1FBEBE4C1319CC38006D5497 /* PlistBookmark */ = 1FBEBE4C1319CC38006D5497 /* PlistBookmark */; - 1FBEBE4D1319CC38006D5497 /* PlistBookmark */ = 1FBEBE4D1319CC38006D5497 /* PlistBookmark */; - 1FBEBE911319D79C006D5497 /* PBXTextBookmark */ = 1FBEBE911319D79C006D5497 /* PBXTextBookmark */; - 1FBEBE921319D79C006D5497 /* PBXTextBookmark */ = 1FBEBE921319D79C006D5497 /* PBXTextBookmark */; - 1FBEBE931319D79C006D5497 /* PBXTextBookmark */ = 1FBEBE931319D79C006D5497 /* PBXTextBookmark */; - 1FBEBE941319D79C006D5497 /* PlistBookmark */ = 1FBEBE941319D79C006D5497 /* PlistBookmark */; - 1FBEBE951319D79C006D5497 /* PBXTextBookmark */ = 1FBEBE951319D79C006D5497 /* PBXTextBookmark */; - 1FBEBE961319D79C006D5497 /* PBXTextBookmark */ = 1FBEBE961319D79C006D5497 /* PBXTextBookmark */; - 1FBEBE971319D79C006D5497 /* PBXTextBookmark */ = 1FBEBE971319D79C006D5497 /* PBXTextBookmark */; - 1FBEBEAB1319D7F2006D5497 /* PBXTextBookmark */ = 1FBEBEAB1319D7F2006D5497 /* PBXTextBookmark */; - 1FBEBEB41319DC5A006D5497 /* PBXTextBookmark */ = 1FBEBEB41319DC5A006D5497 /* PBXTextBookmark */; - 1FBEBEB51319DC5A006D5497 /* PBXTextBookmark */ = 1FBEBEB51319DC5A006D5497 /* PBXTextBookmark */; - 1FBEBEB61319DC5A006D5497 /* PBXTextBookmark */ = 1FBEBEB61319DC5A006D5497 /* PBXTextBookmark */; - 1FBEBED01319E5FE006D5497 /* PBXTextBookmark */ = 1FBEBED01319E5FE006D5497 /* PBXTextBookmark */; - 1FBEBED11319E5FE006D5497 /* PBXTextBookmark */ = 1FBEBED11319E5FE006D5497 /* PBXTextBookmark */; - 1FBEBED21319E5FE006D5497 /* PBXTextBookmark */ = 1FBEBED21319E5FE006D5497 /* PBXTextBookmark */; - 1FBEBED81319E723006D5497 /* PBXTextBookmark */ = 1FBEBED81319E723006D5497 /* PBXTextBookmark */; - 1FBEBED91319E723006D5497 /* PBXTextBookmark */ = 1FBEBED91319E723006D5497 /* PBXTextBookmark */; - 1FBEBEDA1319E723006D5497 /* PBXTextBookmark */ = 1FBEBEDA1319E723006D5497 /* PBXTextBookmark */; - 1FBEBEF61319EEB6006D5497 /* PBXTextBookmark */ = 1FBEBEF61319EEB6006D5497 /* PBXTextBookmark */; - 1FBEBEF71319EEB6006D5497 /* PBXTextBookmark */ = 1FBEBEF71319EEB6006D5497 /* PBXTextBookmark */; - 1FBEBF151319F5C1006D5497 /* PlistBookmark */ = 1FBEBF151319F5C1006D5497 /* PlistBookmark */; - 1FBEBF161319F5C1006D5497 /* PBXTextBookmark */ = 1FBEBF161319F5C1006D5497 /* PBXTextBookmark */; - 1FBEBF171319F5C1006D5497 /* PBXTextBookmark */ = 1FBEBF171319F5C1006D5497 /* PBXTextBookmark */; - 1FBEBF181319F5C1006D5497 /* PBXTextBookmark */ = 1FBEBF181319F5C1006D5497 /* PBXTextBookmark */; - 1FBEBF191319F5C1006D5497 /* PBXTextBookmark */ = 1FBEBF191319F5C1006D5497 /* PBXTextBookmark */; - 1FBEBF1A1319F5C1006D5497 /* PBXTextBookmark */ = 1FBEBF1A1319F5C1006D5497 /* PBXTextBookmark */; - 1FBEBF1E1319F691006D5497 /* PBXTextBookmark */ = 1FBEBF1E1319F691006D5497 /* PBXTextBookmark */; - 1FBEBF1F1319F691006D5497 /* PBXTextBookmark */ = 1FBEBF1F1319F691006D5497 /* PBXTextBookmark */; - 1FBEBF201319F691006D5497 /* PBXTextBookmark */ = 1FBEBF201319F691006D5497 /* PBXTextBookmark */; - 1FBEBF211319F691006D5497 /* PBXTextBookmark */ = 1FBEBF211319F691006D5497 /* PBXTextBookmark */; - 1FBEBF221319F691006D5497 /* PBXTextBookmark */ = 1FBEBF221319F691006D5497 /* PBXTextBookmark */; - 1FBEBF351319F93F006D5497 /* PBXTextBookmark */ = 1FBEBF351319F93F006D5497 /* PBXTextBookmark */; - 1FBEBF361319F93F006D5497 /* PBXTextBookmark */ = 1FBEBF361319F93F006D5497 /* PBXTextBookmark */; - 1FBEBF371319F93F006D5497 /* PBXTextBookmark */ = 1FBEBF371319F93F006D5497 /* PBXTextBookmark */; - 1FBEBF381319F93F006D5497 /* PBXTextBookmark */ = 1FBEBF381319F93F006D5497 /* PBXTextBookmark */; - 1FBEBF3E1319F9ED006D5497 /* PBXTextBookmark */ = 1FBEBF3E1319F9ED006D5497 /* PBXTextBookmark */; - 1FBEBF3F1319F9ED006D5497 /* PBXTextBookmark */ = 1FBEBF3F1319F9ED006D5497 /* PBXTextBookmark */; - 1FBEBF401319F9ED006D5497 /* PBXTextBookmark */ = 1FBEBF401319F9ED006D5497 /* PBXTextBookmark */; - 1FBEBFAD1319FE92006D5497 /* PBXTextBookmark */ = 1FBEBFAD1319FE92006D5497 /* PBXTextBookmark */; - 1FBEBFFD131AA714006D5497 /* XCBuildMessageTextBookmark */ = 1FBEBFFD131AA714006D5497 /* XCBuildMessageTextBookmark */; - 1FBEBFFE131AA714006D5497 /* PBXTextBookmark */ = 1FBEBFFE131AA714006D5497 /* PBXTextBookmark */; - 1FBEC001131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC001131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC002131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC002131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC003131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC003131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC004131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC004131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC005131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC005131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC006131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC006131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC007131AA71C006D5497 /* PBXTextBookmark */ = 1FBEC007131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC00A131AA739006D5497 /* PBXTextBookmark */ = 1FBEC00A131AA739006D5497 /* PBXTextBookmark */; - 1FBEC00D131AA74F006D5497 /* PBXTextBookmark */ = 1FBEC00D131AA74F006D5497 /* PBXTextBookmark */; - 1FBEC010131AA773006D5497 /* PBXTextBookmark */ = 1FBEC010131AA773006D5497 /* PBXTextBookmark */; - 1FBEC011131AA773006D5497 /* PBXTextBookmark */ = 1FBEC011131AA773006D5497 /* PBXTextBookmark */; - 1FBEC012131AA773006D5497 /* PBXTextBookmark */ = 1FBEC012131AA773006D5497 /* PBXTextBookmark */; - 1FBEC015131AA78E006D5497 /* PBXTextBookmark */ = 1FBEC015131AA78E006D5497 /* PBXTextBookmark */; - 1FBEC016131AA78E006D5497 /* PBXTextBookmark */ = 1FBEC016131AA78E006D5497 /* PBXTextBookmark */; - 1FBEC017131AA78E006D5497 /* PBXTextBookmark */ = 1FBEC017131AA78E006D5497 /* PBXTextBookmark */; - 1FBEC01A131AA799006D5497 /* PBXTextBookmark */ = 1FBEC01A131AA799006D5497 /* PBXTextBookmark */; - 1FBEC01D131AA7B8006D5497 /* PBXTextBookmark */ = 1FBEC01D131AA7B8006D5497 /* PBXTextBookmark */; - 1FBEC020131AA7F1006D5497 /* PBXTextBookmark */ = 1FBEC020131AA7F1006D5497 /* PBXTextBookmark */; - 1FBEC023131AA82B006D5497 /* PBXTextBookmark */ = 1FBEC023131AA82B006D5497 /* PBXTextBookmark */; - 1FBEC026131AF718006D5497 /* PBXTextBookmark */ = 1FBEC026131AF718006D5497 /* PBXTextBookmark */; - 1FBEC029131AF724006D5497 /* PBXTextBookmark */ = 1FBEC029131AF724006D5497 /* PBXTextBookmark */; - 1FBEC02C131AF749006D5497 /* PBXTextBookmark */ = 1FBEC02C131AF749006D5497 /* PBXTextBookmark */; - 1FBEC02F131AF752006D5497 /* PBXTextBookmark */ = 1FBEC02F131AF752006D5497 /* PBXTextBookmark */; - 1FBEC031131AFA87006D5497 /* PBXTextBookmark */ = 1FBEC031131AFA87006D5497 /* PBXTextBookmark */; - 1FBEC032131AFA87006D5497 /* PBXTextBookmark */ = 1FBEC032131AFA87006D5497 /* PBXTextBookmark */; - 1FBEC033131AFA87006D5497 /* PBXTextBookmark */ = 1FBEC033131AFA87006D5497 /* PBXTextBookmark */; - 1FBEC034131AFA87006D5497 /* PBXTextBookmark */ = 1FBEC034131AFA87006D5497 /* PBXTextBookmark */; - 1FBEC035131AFA87006D5497 /* PBXTextBookmark */ = 1FBEC035131AFA87006D5497 /* PBXTextBookmark */; - 1FBEC036131AFA87006D5497 /* PBXTextBookmark */ = 1FBEC036131AFA87006D5497 /* PBXTextBookmark */; - 1FBEC037131AFC6B006D5497 /* PBXTextBookmark */ = 1FBEC037131AFC6B006D5497 /* PBXTextBookmark */; - 1FBEC038131AFD26006D5497 /* PBXTextBookmark */ = 1FBEC038131AFD26006D5497 /* PBXTextBookmark */; - 1FBEC039131AFD26006D5497 /* PBXTextBookmark */ = 1FBEC039131AFD26006D5497 /* PBXTextBookmark */; - 1FBEC03A131AFD26006D5497 /* PBXTextBookmark */ = 1FBEC03A131AFD26006D5497 /* PBXTextBookmark */; - 1FBEC03B131AFD26006D5497 /* PBXTextBookmark */ = 1FBEC03B131AFD26006D5497 /* PBXTextBookmark */; - 1FBEC03C131AFD26006D5497 /* PBXTextBookmark */ = 1FBEC03C131AFD26006D5497 /* PBXTextBookmark */; - 1FBEC03D131AFDBE006D5497 /* PBXTextBookmark */ = 1FBEC03D131AFDBE006D5497 /* PBXTextBookmark */; - 1FBEC03E131AFEC7006D5497 /* PBXTextBookmark */ = 1FBEC03E131AFEC7006D5497 /* PBXTextBookmark */; - 1FBEC03F131B00EA006D5497 /* PBXTextBookmark */ = 1FBEC03F131B00EA006D5497 /* PBXTextBookmark */; - 1FBEC040131B00EA006D5497 /* PBXTextBookmark */ = 1FBEC040131B00EA006D5497 /* PBXTextBookmark */; - 1FBEC041131B00EA006D5497 /* PBXTextBookmark */ = 1FBEC041131B00EA006D5497 /* PBXTextBookmark */; - 1FBEC042131B01D3006D5497 /* PBXTextBookmark */ = 1FBEC042131B01D3006D5497 /* PBXTextBookmark */; - 1FBEC043131B0346006D5497 /* PBXTextBookmark */ = 1FBEC043131B0346006D5497 /* PBXTextBookmark */; - 1FBEC052131B04DE006D5497 /* PBXTextBookmark */ = 1FBEC052131B04DE006D5497 /* PBXTextBookmark */; - 1FBEC053131B04DE006D5497 /* XCBuildMessageTextBookmark */ = 1FBEC053131B04DE006D5497 /* XCBuildMessageTextBookmark */; - 1FBEC054131B04DE006D5497 /* PBXTextBookmark */ = 1FBEC054131B04DE006D5497 /* PBXTextBookmark */; - 1FBEC059131B085D006D5497 /* PBXTextBookmark */ = 1FBEC059131B085D006D5497 /* PBXTextBookmark */; - 1FBEC05A131B085D006D5497 /* PBXTextBookmark */ = 1FBEC05A131B085D006D5497 /* PBXTextBookmark */; - 1FBEC05B131B085D006D5497 /* PBXTextBookmark */ = 1FBEC05B131B085D006D5497 /* PBXTextBookmark */; - 1FBEC05C131B085D006D5497 /* PBXTextBookmark */ = 1FBEC05C131B085D006D5497 /* PBXTextBookmark */; - 1FBEC05D131B085D006D5497 /* PBXTextBookmark */ = 1FBEC05D131B085D006D5497 /* PBXTextBookmark */; - 1FBEC05E131B085D006D5497 /* PBXTextBookmark */ = 1FBEC05E131B085D006D5497 /* PBXTextBookmark */; - 1FBEC05F131B085D006D5497 /* PBXTextBookmark */ = 1FBEC05F131B085D006D5497 /* PBXTextBookmark */; - 1FBEC060131B085D006D5497 /* PBXTextBookmark */ = 1FBEC060131B085D006D5497 /* PBXTextBookmark */; - 1FBEC061131B085D006D5497 /* PBXTextBookmark */ = 1FBEC061131B085D006D5497 /* PBXTextBookmark */; - 1FBEC062131B0886006D5497 /* PBXTextBookmark */ = 1FBEC062131B0886006D5497 /* PBXTextBookmark */; - 1FBEC063131B0886006D5497 /* PBXTextBookmark */ = 1FBEC063131B0886006D5497 /* PBXTextBookmark */; - 1FBEC064131B0886006D5497 /* XCBuildMessageTextBookmark */ = 1FBEC064131B0886006D5497 /* XCBuildMessageTextBookmark */; - 1FBEC065131B0886006D5497 /* PBXTextBookmark */ = 1FBEC065131B0886006D5497 /* PBXTextBookmark */; - 1FBEC066131B0887006D5497 /* PBXTextBookmark */ = 1FBEC066131B0887006D5497 /* PBXTextBookmark */; - 1FBEC069131B088B006D5497 /* PBXTextBookmark */ = 1FBEC069131B088B006D5497 /* PBXTextBookmark */; - 1FBEC06A131B088B006D5497 /* XCBuildMessageTextBookmark */ = 1FBEC06A131B088B006D5497 /* XCBuildMessageTextBookmark */; - 1FBEC06B131B088B006D5497 /* PBXTextBookmark */ = 1FBEC06B131B088B006D5497 /* PBXTextBookmark */; - 1FBEC06C131B0890006D5497 /* PBXTextBookmark */ = 1FBEC06C131B0890006D5497 /* PBXTextBookmark */; - 1FBEC06D131B0890006D5497 /* XCBuildMessageTextBookmark */ = 1FBEC06D131B0890006D5497 /* XCBuildMessageTextBookmark */; - 1FBEC06E131B0890006D5497 /* PBXTextBookmark */ = 1FBEC06E131B0890006D5497 /* PBXTextBookmark */; - 1FBEC071131B08D5006D5497 /* PBXTextBookmark */ = 1FBEC071131B08D5006D5497 /* PBXTextBookmark */; - 1FBEC074131B08E9006D5497 /* PBXTextBookmark */ = 1FBEC074131B08E9006D5497 /* PBXTextBookmark */; - 1FBEC075131B08E9006D5497 /* PBXTextBookmark */ = 1FBEC075131B08E9006D5497 /* PBXTextBookmark */; - 1FBEC078131B08F9006D5497 /* PBXTextBookmark */ = 1FBEC078131B08F9006D5497 /* PBXTextBookmark */; - 1FBEC07B131B0941006D5497 /* PBXTextBookmark */ = 1FBEC07B131B0941006D5497 /* PBXTextBookmark */; - 1FBEC07C131B0941006D5497 /* PBXTextBookmark */ = 1FBEC07C131B0941006D5497 /* PBXTextBookmark */; - 1FBEC07D131B0941006D5497 /* PBXTextBookmark */ = 1FBEC07D131B0941006D5497 /* PBXTextBookmark */; - 1FBEC07E131B0941006D5497 /* PBXTextBookmark */ = 1FBEC07E131B0941006D5497 /* PBXTextBookmark */; - 1FBEC07F131B094B006D5497 /* PBXTextBookmark */ = 1FBEC07F131B094B006D5497 /* PBXTextBookmark */; - 1FBEC080131B094B006D5497 /* XCBuildMessageTextBookmark */ = 1FBEC080131B094B006D5497 /* XCBuildMessageTextBookmark */; - 1FBEC081131B094B006D5497 /* PBXTextBookmark */ = 1FBEC081131B094B006D5497 /* PBXTextBookmark */; - 1FBEC082131B094D006D5497 /* PBXTextBookmark */ = 1FBEC082131B094D006D5497 /* PBXTextBookmark */; - 1FBEC083131B09C6006D5497 /* PBXTextBookmark */ = 1FBEC083131B09C6006D5497 /* PBXTextBookmark */; - 1FBEC084131B09C6006D5497 /* PBXTextBookmark */ = 1FBEC084131B09C6006D5497 /* PBXTextBookmark */; - 1FBEC085131B09C6006D5497 /* PBXTextBookmark */ = 1FBEC085131B09C6006D5497 /* PBXTextBookmark */; - 1FBEC088131B0A14006D5497 /* PBXTextBookmark */ = 1FBEC088131B0A14006D5497 /* PBXTextBookmark */; - 1FBEC08B131B0A29006D5497 /* PBXTextBookmark */ = 1FBEC08B131B0A29006D5497 /* PBXTextBookmark */; - 1FBEC090131B0A9C006D5497 /* PBXTextBookmark */ = 1FBEC090131B0A9C006D5497 /* PBXTextBookmark */; - 1FBEC091131B0C04006D5497 /* PBXTextBookmark */ = 1FBEC091131B0C04006D5497 /* PBXTextBookmark */; - 1FBEC092131B0C04006D5497 /* PBXTextBookmark */ = 1FBEC092131B0C04006D5497 /* PBXTextBookmark */; - 1FBEC093131B0C04006D5497 /* PBXTextBookmark */ = 1FBEC093131B0C04006D5497 /* PBXTextBookmark */; - 1FBEC094131B0C04006D5497 /* PBXTextBookmark */ = 1FBEC094131B0C04006D5497 /* PBXTextBookmark */; - 1FBEC095131B0C04006D5497 /* PBXTextBookmark */ = 1FBEC095131B0C04006D5497 /* PBXTextBookmark */; - 1FBEC096131B0C44006D5497 /* PBXTextBookmark */ = 1FBEC096131B0C44006D5497 /* PBXTextBookmark */; - 1FBEC097131B0C44006D5497 /* PBXTextBookmark */ = 1FBEC097131B0C44006D5497 /* PBXTextBookmark */; - 1FBEC098131B0C44006D5497 /* PBXTextBookmark */ = 1FBEC098131B0C44006D5497 /* PBXTextBookmark */; - 1FBEC099131B0C44006D5497 /* PBXTextBookmark */ = 1FBEC099131B0C44006D5497 /* PBXTextBookmark */; - 1FBEC0A0131B0C9D006D5497 /* PBXTextBookmark */ = 1FBEC0A0131B0C9D006D5497 /* PBXTextBookmark */; - 1FBEC0A1131B0C9D006D5497 /* PBXTextBookmark */ = 1FBEC0A1131B0C9D006D5497 /* PBXTextBookmark */; - 1FBEC0A2131B0C9D006D5497 /* PBXTextBookmark */ = 1FBEC0A2131B0C9D006D5497 /* PBXTextBookmark */; - 1FBEC0A9131B0DF1006D5497 /* PBXTextBookmark */ = 1FBEC0A9131B0DF1006D5497 /* PBXTextBookmark */; - 1FBEC0AA131B0DF1006D5497 /* PBXTextBookmark */ = 1FBEC0AA131B0DF1006D5497 /* PBXTextBookmark */; - 1FBEC0AB131B0DF1006D5497 /* PBXTextBookmark */ = 1FBEC0AB131B0DF1006D5497 /* PBXTextBookmark */; - 1FBEC0B1131B0E5E006D5497 /* PBXTextBookmark */ = 1FBEC0B1131B0E5E006D5497 /* PBXTextBookmark */; - 1FBEC0B4131B0F17006D5497 /* PBXTextBookmark */ = 1FBEC0B4131B0F17006D5497 /* PBXTextBookmark */; - 1FBEC0B7131B0F31006D5497 /* PBXTextBookmark */ = 1FBEC0B7131B0F31006D5497 /* PBXTextBookmark */; - 1FBEC0BA131B0F8B006D5497 /* PBXTextBookmark */ = 1FBEC0BA131B0F8B006D5497 /* PBXTextBookmark */; - 1FBEC0BD131B0FAD006D5497 /* PBXTextBookmark */ = 1FBEC0BD131B0FAD006D5497 /* PBXTextBookmark */; - 1FBEC0C5131B100A006D5497 /* PBXTextBookmark */ = 1FBEC0C5131B100A006D5497 /* PBXTextBookmark */; - 1FBEC0C8131B103C006D5497 /* PBXTextBookmark */ = 1FBEC0C8131B103C006D5497 /* PBXTextBookmark */; - 1FBEC0CB131B1081006D5497 /* PBXTextBookmark */ = 1FBEC0CB131B1081006D5497 /* PBXTextBookmark */; - 1FBEC0CC131B1081006D5497 /* PBXTextBookmark */ = 1FBEC0CC131B1081006D5497 /* PBXTextBookmark */; - 1FBEC0CD131B1081006D5497 /* PBXTextBookmark */ = 1FBEC0CD131B1081006D5497 /* PBXTextBookmark */; - 1FBEC0D0131B10CE006D5497 /* PBXTextBookmark */ = 1FBEC0D0131B10CE006D5497 /* PBXTextBookmark */; - 1FBEC0D1131B10CE006D5497 /* PBXTextBookmark */ = 1FBEC0D1131B10CE006D5497 /* PBXTextBookmark */; - 1FBEC0D2131B10CE006D5497 /* PBXTextBookmark */ = 1FBEC0D2131B10CE006D5497 /* PBXTextBookmark */; - 1FBEC0D9131B1173006D5497 /* PBXTextBookmark */ = 1FBEC0D9131B1173006D5497 /* PBXTextBookmark */; - 1FBEC0DC131B117D006D5497 /* PBXTextBookmark */ = 1FBEC0DC131B117D006D5497 /* PBXTextBookmark */; - 1FBEC0DF131B1191006D5497 /* PBXTextBookmark */ = 1FBEC0DF131B1191006D5497 /* PBXTextBookmark */; - 1FBEC0E6131B1215006D5497 /* PBXTextBookmark */ = 1FBEC0E6131B1215006D5497 /* PBXTextBookmark */; - 1FBEC0E9131B12CC006D5497 /* PBXTextBookmark */ = 1FBEC0E9131B12CC006D5497 /* PBXTextBookmark */; - 1FBEC0EC131B12D5006D5497 /* PBXTextBookmark */ = 1FBEC0EC131B12D5006D5497 /* PBXTextBookmark */; - 1FBEC0EF131B12ED006D5497 /* PBXTextBookmark */ = 1FBEC0EF131B12ED006D5497 /* PBXTextBookmark */; - 1FBEC0F2131B1301006D5497 /* PBXTextBookmark */ = 1FBEC0F2131B1301006D5497 /* PBXTextBookmark */; - 1FBEC0F3131B1474006D5497 /* PBXTextBookmark */ = 1FBEC0F3131B1474006D5497 /* PBXTextBookmark */; - 1FBEC0F4131B147B006D5497 /* PBXTextBookmark */ = 1FBEC0F4131B147B006D5497 /* PBXTextBookmark */; - 1FBEC0F5131B149B006D5497 /* PBXTextBookmark */ = 1FBEC0F5131B149B006D5497 /* PBXTextBookmark */; - 1FBEC0F6131B149B006D5497 /* PBXTextBookmark */ = 1FBEC0F6131B149B006D5497 /* PBXTextBookmark */; - 1FBEC107131B21E7006D5497 /* PBXTextBookmark */ = 1FBEC107131B21E7006D5497 /* PBXTextBookmark */; - 1FBEC108131B21E7006D5497 /* PBXTextBookmark */ = 1FBEC108131B21E7006D5497 /* PBXTextBookmark */; - 1FBEC109131B21E7006D5497 /* PBXTextBookmark */ = 1FBEC109131B21E7006D5497 /* PBXTextBookmark */; - 1FBEC10A131B21E7006D5497 /* PBXTextBookmark */ = 1FBEC10A131B21E7006D5497 /* PBXTextBookmark */; - 1FBEC10B131B21E7006D5497 /* PBXTextBookmark */ = 1FBEC10B131B21E7006D5497 /* PBXTextBookmark */; - 1FBEC10E131B21FB006D5497 /* PBXTextBookmark */ = 1FBEC10E131B21FB006D5497 /* PBXTextBookmark */; - 1FBEC10F131B21FB006D5497 /* PBXTextBookmark */ = 1FBEC10F131B21FB006D5497 /* PBXTextBookmark */; - 1FBEC112131B2298006D5497 /* PBXTextBookmark */ = 1FBEC112131B2298006D5497 /* PBXTextBookmark */; - 1FBEC113131B2298006D5497 /* PBXTextBookmark */ = 1FBEC113131B2298006D5497 /* PBXTextBookmark */; - 1FBEC114131B2298006D5497 /* PBXTextBookmark */ = 1FBEC114131B2298006D5497 /* PBXTextBookmark */; - 1FBEC117131B22BF006D5497 /* PBXTextBookmark */ = 1FBEC117131B22BF006D5497 /* PBXTextBookmark */; - 1FBEC11A131B2423006D5497 /* PBXTextBookmark */ = 1FBEC11A131B2423006D5497 /* PBXTextBookmark */; - 1FBEC121131B2559006D5497 /* PBXTextBookmark */ = 1FBEC121131B2559006D5497 /* PBXTextBookmark */; - 1FBEC122131B2559006D5497 /* PBXTextBookmark */ = 1FBEC122131B2559006D5497 /* PBXTextBookmark */; - 1FBEC123131B2559006D5497 /* PBXTextBookmark */ = 1FBEC123131B2559006D5497 /* PBXTextBookmark */; - 1FBEC124131B2559006D5497 /* PBXTextBookmark */ = 1FBEC124131B2559006D5497 /* PBXTextBookmark */; - 1FBEC125131B2559006D5497 /* PBXTextBookmark */ = 1FBEC125131B2559006D5497 /* PBXTextBookmark */; - 1FBEC126131B2559006D5497 /* PBXTextBookmark */ = 1FBEC126131B2559006D5497 /* PBXTextBookmark */; - 1FBEC127131B255B006D5497 /* PBXTextBookmark */ = 1FBEC127131B255B006D5497 /* PBXTextBookmark */; - 1FBEC128131B255B006D5497 /* XCBuildMessageTextBookmark */ = 1FBEC128131B255B006D5497 /* XCBuildMessageTextBookmark */; - 1FBEC129131B255B006D5497 /* PBXTextBookmark */ = 1FBEC129131B255B006D5497 /* PBXTextBookmark */; - 1FBEC12C131B2581006D5497 /* PBXTextBookmark */ = 1FBEC12C131B2581006D5497 /* PBXTextBookmark */; - 1FBEC12D131B2581006D5497 /* PBXTextBookmark */ = 1FBEC12D131B2581006D5497 /* PBXTextBookmark */; - 1FBEC12E131B2581006D5497 /* PBXTextBookmark */ = 1FBEC12E131B2581006D5497 /* PBXTextBookmark */; - 1FBEC12F131B2581006D5497 /* PBXTextBookmark */ = 1FBEC12F131B2581006D5497 /* PBXTextBookmark */; - 1FBEC134131B262F006D5497 /* PBXTextBookmark */ = 1FBEC134131B262F006D5497 /* PBXTextBookmark */; - 1FBEC135131B265A006D5497 /* PBXTextBookmark */ = 1FBEC135131B265A006D5497 /* PBXTextBookmark */; - 1FBEC13C131B26A1006D5497 /* PBXTextBookmark */ = 1FBEC13C131B26A1006D5497 /* PBXTextBookmark */; - 1FBEC13D131B26A1006D5497 /* PBXTextBookmark */ = 1FBEC13D131B26A1006D5497 /* PBXTextBookmark */; - 1FBEC13E131B26A1006D5497 /* PBXTextBookmark */ = 1FBEC13E131B26A1006D5497 /* PBXTextBookmark */; - 1FBEC141131B2757006D5497 /* PBXTextBookmark */ = 1FBEC141131B2757006D5497 /* PBXTextBookmark */; - 1FBEC142131B2757006D5497 /* PBXTextBookmark */ = 1FBEC142131B2757006D5497 /* PBXTextBookmark */; - 1FBEC145131B2B2E006D5497 /* PBXTextBookmark */ = 1FBEC145131B2B2E006D5497 /* PBXTextBookmark */; - 1FBEC148131B2B7E006D5497 /* PBXTextBookmark */ = 1FBEC148131B2B7E006D5497 /* PBXTextBookmark */; - 1FBEC14B131B2BAA006D5497 /* PBXTextBookmark */ = 1FBEC14B131B2BAA006D5497 /* PBXTextBookmark */; - 1FBEC14E131B2BE6006D5497 /* PBXTextBookmark */ = 1FBEC14E131B2BE6006D5497 /* PBXTextBookmark */; - 1FBEC151131B2C52006D5497 /* PBXTextBookmark */ = 1FBEC151131B2C52006D5497 /* PBXTextBookmark */; + 1FBEBE4C1319CC38006D5497 = 1FBEBE4C1319CC38006D5497 /* PlistBookmark */; + 1FBEBE4D1319CC38006D5497 = 1FBEBE4D1319CC38006D5497 /* PlistBookmark */; + 1FBEBE911319D79C006D5497 = 1FBEBE911319D79C006D5497 /* PBXTextBookmark */; + 1FBEBE921319D79C006D5497 = 1FBEBE921319D79C006D5497 /* PBXTextBookmark */; + 1FBEBE931319D79C006D5497 = 1FBEBE931319D79C006D5497 /* PBXTextBookmark */; + 1FBEBE941319D79C006D5497 = 1FBEBE941319D79C006D5497 /* PlistBookmark */; + 1FBEBE951319D79C006D5497 = 1FBEBE951319D79C006D5497 /* PBXTextBookmark */; + 1FBEBE961319D79C006D5497 = 1FBEBE961319D79C006D5497 /* PBXTextBookmark */; + 1FBEBE971319D79C006D5497 = 1FBEBE971319D79C006D5497 /* PBXTextBookmark */; + 1FBEBEAB1319D7F2006D5497 = 1FBEBEAB1319D7F2006D5497 /* PBXTextBookmark */; + 1FBEBEB41319DC5A006D5497 = 1FBEBEB41319DC5A006D5497 /* PBXTextBookmark */; + 1FBEBEB51319DC5A006D5497 = 1FBEBEB51319DC5A006D5497 /* PBXTextBookmark */; + 1FBEBEB61319DC5A006D5497 = 1FBEBEB61319DC5A006D5497 /* PBXTextBookmark */; + 1FBEBED01319E5FE006D5497 = 1FBEBED01319E5FE006D5497 /* PBXTextBookmark */; + 1FBEBED11319E5FE006D5497 = 1FBEBED11319E5FE006D5497 /* PBXTextBookmark */; + 1FBEBED21319E5FE006D5497 = 1FBEBED21319E5FE006D5497 /* PBXTextBookmark */; + 1FBEBED81319E723006D5497 = 1FBEBED81319E723006D5497 /* PBXTextBookmark */; + 1FBEBED91319E723006D5497 = 1FBEBED91319E723006D5497 /* PBXTextBookmark */; + 1FBEBEDA1319E723006D5497 = 1FBEBEDA1319E723006D5497 /* PBXTextBookmark */; + 1FBEBEF61319EEB6006D5497 = 1FBEBEF61319EEB6006D5497 /* PBXTextBookmark */; + 1FBEBEF71319EEB6006D5497 = 1FBEBEF71319EEB6006D5497 /* PBXTextBookmark */; + 1FBEBF151319F5C1006D5497 = 1FBEBF151319F5C1006D5497 /* PlistBookmark */; + 1FBEBF161319F5C1006D5497 = 1FBEBF161319F5C1006D5497 /* PBXTextBookmark */; + 1FBEBF171319F5C1006D5497 = 1FBEBF171319F5C1006D5497 /* PBXTextBookmark */; + 1FBEBF181319F5C1006D5497 = 1FBEBF181319F5C1006D5497 /* PBXTextBookmark */; + 1FBEBF191319F5C1006D5497 = 1FBEBF191319F5C1006D5497 /* PBXTextBookmark */; + 1FBEBF1A1319F5C1006D5497 = 1FBEBF1A1319F5C1006D5497 /* PBXTextBookmark */; + 1FBEBF1E1319F691006D5497 = 1FBEBF1E1319F691006D5497 /* PBXTextBookmark */; + 1FBEBF1F1319F691006D5497 = 1FBEBF1F1319F691006D5497 /* PBXTextBookmark */; + 1FBEBF201319F691006D5497 = 1FBEBF201319F691006D5497 /* PBXTextBookmark */; + 1FBEBF211319F691006D5497 = 1FBEBF211319F691006D5497 /* PBXTextBookmark */; + 1FBEBF221319F691006D5497 = 1FBEBF221319F691006D5497 /* PBXTextBookmark */; + 1FBEBF351319F93F006D5497 = 1FBEBF351319F93F006D5497 /* PBXTextBookmark */; + 1FBEBF361319F93F006D5497 = 1FBEBF361319F93F006D5497 /* PBXTextBookmark */; + 1FBEBF371319F93F006D5497 = 1FBEBF371319F93F006D5497 /* PBXTextBookmark */; + 1FBEBF381319F93F006D5497 = 1FBEBF381319F93F006D5497 /* PBXTextBookmark */; + 1FBEBF3E1319F9ED006D5497 = 1FBEBF3E1319F9ED006D5497 /* PBXTextBookmark */; + 1FBEBF3F1319F9ED006D5497 = 1FBEBF3F1319F9ED006D5497 /* PBXTextBookmark */; + 1FBEBF401319F9ED006D5497 = 1FBEBF401319F9ED006D5497 /* PBXTextBookmark */; + 1FBEBFAD1319FE92006D5497 = 1FBEBFAD1319FE92006D5497 /* PBXTextBookmark */; + 1FBEBFFD131AA714006D5497 = 1FBEBFFD131AA714006D5497 /* PBXTextBookmark */; + 1FBEBFFE131AA714006D5497 = 1FBEBFFE131AA714006D5497 /* PBXTextBookmark */; + 1FBEC001131AA71C006D5497 = 1FBEC001131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC002131AA71C006D5497 = 1FBEC002131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC003131AA71C006D5497 = 1FBEC003131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC004131AA71C006D5497 = 1FBEC004131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC005131AA71C006D5497 = 1FBEC005131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC006131AA71C006D5497 = 1FBEC006131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC007131AA71C006D5497 = 1FBEC007131AA71C006D5497 /* PBXTextBookmark */; + 1FBEC00A131AA739006D5497 = 1FBEC00A131AA739006D5497 /* PBXTextBookmark */; + 1FBEC00D131AA74F006D5497 = 1FBEC00D131AA74F006D5497 /* PBXTextBookmark */; + 1FBEC010131AA773006D5497 = 1FBEC010131AA773006D5497 /* PBXTextBookmark */; + 1FBEC011131AA773006D5497 = 1FBEC011131AA773006D5497 /* PBXTextBookmark */; + 1FBEC012131AA773006D5497 = 1FBEC012131AA773006D5497 /* PBXTextBookmark */; + 1FBEC015131AA78E006D5497 = 1FBEC015131AA78E006D5497 /* PBXTextBookmark */; + 1FBEC016131AA78E006D5497 = 1FBEC016131AA78E006D5497 /* PBXTextBookmark */; + 1FBEC017131AA78E006D5497 = 1FBEC017131AA78E006D5497 /* PBXTextBookmark */; + 1FBEC01A131AA799006D5497 = 1FBEC01A131AA799006D5497 /* PBXTextBookmark */; + 1FBEC01D131AA7B8006D5497 = 1FBEC01D131AA7B8006D5497 /* PBXTextBookmark */; + 1FBEC020131AA7F1006D5497 = 1FBEC020131AA7F1006D5497 /* PBXTextBookmark */; + 1FBEC023131AA82B006D5497 = 1FBEC023131AA82B006D5497 /* PBXTextBookmark */; + 1FBEC026131AF718006D5497 = 1FBEC026131AF718006D5497 /* PBXTextBookmark */; + 1FBEC029131AF724006D5497 = 1FBEC029131AF724006D5497 /* PBXTextBookmark */; + 1FBEC02C131AF749006D5497 = 1FBEC02C131AF749006D5497 /* PBXTextBookmark */; + 1FBEC02F131AF752006D5497 = 1FBEC02F131AF752006D5497 /* PBXTextBookmark */; + 1FBEC031131AFA87006D5497 = 1FBEC031131AFA87006D5497 /* PBXTextBookmark */; + 1FBEC032131AFA87006D5497 = 1FBEC032131AFA87006D5497 /* PBXTextBookmark */; + 1FBEC033131AFA87006D5497 = 1FBEC033131AFA87006D5497 /* PBXTextBookmark */; + 1FBEC034131AFA87006D5497 = 1FBEC034131AFA87006D5497 /* PBXTextBookmark */; + 1FBEC035131AFA87006D5497 = 1FBEC035131AFA87006D5497 /* PBXTextBookmark */; + 1FBEC036131AFA87006D5497 = 1FBEC036131AFA87006D5497 /* PBXTextBookmark */; + 1FBEC037131AFC6B006D5497 = 1FBEC037131AFC6B006D5497 /* PBXTextBookmark */; + 1FBEC038131AFD26006D5497 = 1FBEC038131AFD26006D5497 /* PBXTextBookmark */; + 1FBEC039131AFD26006D5497 = 1FBEC039131AFD26006D5497 /* PBXTextBookmark */; + 1FBEC03A131AFD26006D5497 = 1FBEC03A131AFD26006D5497 /* PBXTextBookmark */; + 1FBEC03B131AFD26006D5497 = 1FBEC03B131AFD26006D5497 /* PBXTextBookmark */; + 1FBEC03C131AFD26006D5497 = 1FBEC03C131AFD26006D5497 /* PBXTextBookmark */; + 1FBEC03D131AFDBE006D5497 = 1FBEC03D131AFDBE006D5497 /* PBXTextBookmark */; + 1FBEC03E131AFEC7006D5497 = 1FBEC03E131AFEC7006D5497 /* PBXTextBookmark */; + 1FBEC03F131B00EA006D5497 = 1FBEC03F131B00EA006D5497 /* PBXTextBookmark */; + 1FBEC040131B00EA006D5497 = 1FBEC040131B00EA006D5497 /* PBXTextBookmark */; + 1FBEC041131B00EA006D5497 = 1FBEC041131B00EA006D5497 /* PBXTextBookmark */; + 1FBEC042131B01D3006D5497 = 1FBEC042131B01D3006D5497 /* PBXTextBookmark */; + 1FBEC043131B0346006D5497 = 1FBEC043131B0346006D5497 /* PBXTextBookmark */; + 1FBEC052131B04DE006D5497 = 1FBEC052131B04DE006D5497 /* PBXTextBookmark */; + 1FBEC053131B04DE006D5497 = 1FBEC053131B04DE006D5497 /* PBXTextBookmark */; + 1FBEC054131B04DE006D5497 = 1FBEC054131B04DE006D5497 /* PBXTextBookmark */; + 1FBEC059131B085D006D5497 = 1FBEC059131B085D006D5497 /* PBXTextBookmark */; + 1FBEC05A131B085D006D5497 = 1FBEC05A131B085D006D5497 /* PBXTextBookmark */; + 1FBEC05B131B085D006D5497 = 1FBEC05B131B085D006D5497 /* PBXTextBookmark */; + 1FBEC05C131B085D006D5497 = 1FBEC05C131B085D006D5497 /* PBXTextBookmark */; + 1FBEC05D131B085D006D5497 = 1FBEC05D131B085D006D5497 /* PBXTextBookmark */; + 1FBEC05E131B085D006D5497 = 1FBEC05E131B085D006D5497 /* PBXTextBookmark */; + 1FBEC05F131B085D006D5497 = 1FBEC05F131B085D006D5497 /* PBXTextBookmark */; + 1FBEC060131B085D006D5497 = 1FBEC060131B085D006D5497 /* PBXTextBookmark */; + 1FBEC061131B085D006D5497 = 1FBEC061131B085D006D5497 /* PBXTextBookmark */; + 1FBEC062131B0886006D5497 = 1FBEC062131B0886006D5497 /* PBXTextBookmark */; + 1FBEC063131B0886006D5497 = 1FBEC063131B0886006D5497 /* PBXTextBookmark */; + 1FBEC064131B0886006D5497 = 1FBEC064131B0886006D5497 /* PBXTextBookmark */; + 1FBEC065131B0886006D5497 = 1FBEC065131B0886006D5497 /* PBXTextBookmark */; + 1FBEC066131B0887006D5497 = 1FBEC066131B0887006D5497 /* PBXTextBookmark */; + 1FBEC069131B088B006D5497 = 1FBEC069131B088B006D5497 /* PBXTextBookmark */; + 1FBEC06A131B088B006D5497 = 1FBEC06A131B088B006D5497 /* PBXTextBookmark */; + 1FBEC06B131B088B006D5497 = 1FBEC06B131B088B006D5497 /* PBXTextBookmark */; + 1FBEC06C131B0890006D5497 = 1FBEC06C131B0890006D5497 /* PBXTextBookmark */; + 1FBEC06D131B0890006D5497 = 1FBEC06D131B0890006D5497 /* PBXTextBookmark */; + 1FBEC06E131B0890006D5497 = 1FBEC06E131B0890006D5497 /* PBXTextBookmark */; + 1FBEC071131B08D5006D5497 = 1FBEC071131B08D5006D5497 /* PBXTextBookmark */; + 1FBEC074131B08E9006D5497 = 1FBEC074131B08E9006D5497 /* PBXTextBookmark */; + 1FBEC075131B08E9006D5497 = 1FBEC075131B08E9006D5497 /* PBXTextBookmark */; + 1FBEC078131B08F9006D5497 = 1FBEC078131B08F9006D5497 /* PBXTextBookmark */; + 1FBEC07B131B0941006D5497 = 1FBEC07B131B0941006D5497 /* PBXTextBookmark */; + 1FBEC07C131B0941006D5497 = 1FBEC07C131B0941006D5497 /* PBXTextBookmark */; + 1FBEC07D131B0941006D5497 = 1FBEC07D131B0941006D5497 /* PBXTextBookmark */; + 1FBEC07E131B0941006D5497 = 1FBEC07E131B0941006D5497 /* PBXTextBookmark */; + 1FBEC07F131B094B006D5497 = 1FBEC07F131B094B006D5497 /* PBXTextBookmark */; + 1FBEC080131B094B006D5497 = 1FBEC080131B094B006D5497 /* PBXTextBookmark */; + 1FBEC081131B094B006D5497 = 1FBEC081131B094B006D5497 /* PBXTextBookmark */; + 1FBEC082131B094D006D5497 = 1FBEC082131B094D006D5497 /* PBXTextBookmark */; + 1FBEC083131B09C6006D5497 = 1FBEC083131B09C6006D5497 /* PBXTextBookmark */; + 1FBEC084131B09C6006D5497 = 1FBEC084131B09C6006D5497 /* PBXTextBookmark */; + 1FBEC085131B09C6006D5497 = 1FBEC085131B09C6006D5497 /* PBXTextBookmark */; + 1FBEC088131B0A14006D5497 = 1FBEC088131B0A14006D5497 /* PBXTextBookmark */; + 1FBEC08B131B0A29006D5497 = 1FBEC08B131B0A29006D5497 /* PBXTextBookmark */; + 1FBEC090131B0A9C006D5497 = 1FBEC090131B0A9C006D5497 /* PBXTextBookmark */; + 1FBEC091131B0C04006D5497 = 1FBEC091131B0C04006D5497 /* PBXTextBookmark */; + 1FBEC092131B0C04006D5497 = 1FBEC092131B0C04006D5497 /* PBXTextBookmark */; + 1FBEC093131B0C04006D5497 = 1FBEC093131B0C04006D5497 /* PBXTextBookmark */; + 1FBEC094131B0C04006D5497 = 1FBEC094131B0C04006D5497 /* PBXTextBookmark */; + 1FBEC095131B0C04006D5497 = 1FBEC095131B0C04006D5497 /* PBXTextBookmark */; + 1FBEC096131B0C44006D5497 = 1FBEC096131B0C44006D5497 /* PBXTextBookmark */; + 1FBEC097131B0C44006D5497 = 1FBEC097131B0C44006D5497 /* PBXTextBookmark */; + 1FBEC098131B0C44006D5497 = 1FBEC098131B0C44006D5497 /* PBXTextBookmark */; + 1FBEC099131B0C44006D5497 = 1FBEC099131B0C44006D5497 /* PBXTextBookmark */; + 1FBEC0A0131B0C9D006D5497 = 1FBEC0A0131B0C9D006D5497 /* PBXTextBookmark */; + 1FBEC0A1131B0C9D006D5497 = 1FBEC0A1131B0C9D006D5497 /* PBXTextBookmark */; + 1FBEC0A2131B0C9D006D5497 = 1FBEC0A2131B0C9D006D5497 /* PBXTextBookmark */; + 1FBEC0A9131B0DF1006D5497 = 1FBEC0A9131B0DF1006D5497 /* PBXTextBookmark */; + 1FBEC0AA131B0DF1006D5497 = 1FBEC0AA131B0DF1006D5497 /* PBXTextBookmark */; + 1FBEC0AB131B0DF1006D5497 = 1FBEC0AB131B0DF1006D5497 /* PBXTextBookmark */; + 1FBEC0B1131B0E5E006D5497 = 1FBEC0B1131B0E5E006D5497 /* PBXTextBookmark */; + 1FBEC0B4131B0F17006D5497 = 1FBEC0B4131B0F17006D5497 /* PBXTextBookmark */; + 1FBEC0B7131B0F31006D5497 = 1FBEC0B7131B0F31006D5497 /* PBXTextBookmark */; + 1FBEC0BA131B0F8B006D5497 = 1FBEC0BA131B0F8B006D5497 /* PBXTextBookmark */; + 1FBEC0BD131B0FAD006D5497 = 1FBEC0BD131B0FAD006D5497 /* PBXTextBookmark */; + 1FBEC0C5131B100A006D5497 = 1FBEC0C5131B100A006D5497 /* PBXTextBookmark */; + 1FBEC0C8131B103C006D5497 = 1FBEC0C8131B103C006D5497 /* PBXTextBookmark */; + 1FBEC0CB131B1081006D5497 = 1FBEC0CB131B1081006D5497 /* PBXTextBookmark */; + 1FBEC0CC131B1081006D5497 = 1FBEC0CC131B1081006D5497 /* PBXTextBookmark */; + 1FBEC0CD131B1081006D5497 = 1FBEC0CD131B1081006D5497 /* PBXTextBookmark */; + 1FBEC0D0131B10CE006D5497 = 1FBEC0D0131B10CE006D5497 /* PBXTextBookmark */; + 1FBEC0D1131B10CE006D5497 = 1FBEC0D1131B10CE006D5497 /* PBXTextBookmark */; + 1FBEC0D2131B10CE006D5497 = 1FBEC0D2131B10CE006D5497 /* PBXTextBookmark */; + 1FBEC0D9131B1173006D5497 = 1FBEC0D9131B1173006D5497 /* PBXTextBookmark */; + 1FBEC0DC131B117D006D5497 = 1FBEC0DC131B117D006D5497 /* PBXTextBookmark */; + 1FBEC0DF131B1191006D5497 = 1FBEC0DF131B1191006D5497 /* PBXTextBookmark */; + 1FBEC0E6131B1215006D5497 = 1FBEC0E6131B1215006D5497 /* PBXTextBookmark */; + 1FBEC0E9131B12CC006D5497 = 1FBEC0E9131B12CC006D5497 /* PBXTextBookmark */; + 1FBEC0EC131B12D5006D5497 = 1FBEC0EC131B12D5006D5497 /* PBXTextBookmark */; + 1FBEC0EF131B12ED006D5497 = 1FBEC0EF131B12ED006D5497 /* PBXTextBookmark */; + 1FBEC0F2131B1301006D5497 = 1FBEC0F2131B1301006D5497 /* PBXTextBookmark */; + 1FBEC0F3131B1474006D5497 = 1FBEC0F3131B1474006D5497 /* PBXTextBookmark */; + 1FBEC0F4131B147B006D5497 = 1FBEC0F4131B147B006D5497 /* PBXTextBookmark */; + 1FBEC0F5131B149B006D5497 = 1FBEC0F5131B149B006D5497 /* PBXTextBookmark */; + 1FBEC0F6131B149B006D5497 = 1FBEC0F6131B149B006D5497 /* PBXTextBookmark */; + 1FBEC107131B21E7006D5497 = 1FBEC107131B21E7006D5497 /* PBXTextBookmark */; + 1FBEC108131B21E7006D5497 = 1FBEC108131B21E7006D5497 /* PBXTextBookmark */; + 1FBEC109131B21E7006D5497 = 1FBEC109131B21E7006D5497 /* PBXTextBookmark */; + 1FBEC10A131B21E7006D5497 = 1FBEC10A131B21E7006D5497 /* PBXTextBookmark */; + 1FBEC10B131B21E7006D5497 = 1FBEC10B131B21E7006D5497 /* PBXTextBookmark */; + 1FBEC10E131B21FB006D5497 = 1FBEC10E131B21FB006D5497 /* PBXTextBookmark */; + 1FBEC10F131B21FB006D5497 = 1FBEC10F131B21FB006D5497 /* PBXTextBookmark */; + 1FBEC112131B2298006D5497 = 1FBEC112131B2298006D5497 /* PBXTextBookmark */; + 1FBEC113131B2298006D5497 = 1FBEC113131B2298006D5497 /* PBXTextBookmark */; + 1FBEC114131B2298006D5497 = 1FBEC114131B2298006D5497 /* PBXTextBookmark */; + 1FBEC117131B22BF006D5497 = 1FBEC117131B22BF006D5497 /* PBXTextBookmark */; + 1FBEC11A131B2423006D5497 = 1FBEC11A131B2423006D5497 /* PBXTextBookmark */; + 1FBEC121131B2559006D5497 = 1FBEC121131B2559006D5497 /* PBXTextBookmark */; + 1FBEC122131B2559006D5497 = 1FBEC122131B2559006D5497 /* PBXTextBookmark */; + 1FBEC123131B2559006D5497 = 1FBEC123131B2559006D5497 /* PBXTextBookmark */; + 1FBEC124131B2559006D5497 = 1FBEC124131B2559006D5497 /* PBXTextBookmark */; + 1FBEC125131B2559006D5497 = 1FBEC125131B2559006D5497 /* PBXTextBookmark */; + 1FBEC126131B2559006D5497 = 1FBEC126131B2559006D5497 /* PBXTextBookmark */; + 1FBEC127131B255B006D5497 = 1FBEC127131B255B006D5497 /* PBXTextBookmark */; + 1FBEC128131B255B006D5497 = 1FBEC128131B255B006D5497 /* PBXTextBookmark */; + 1FBEC129131B255B006D5497 = 1FBEC129131B255B006D5497 /* PBXTextBookmark */; + 1FBEC12C131B2581006D5497 = 1FBEC12C131B2581006D5497 /* PBXTextBookmark */; + 1FBEC12D131B2581006D5497 = 1FBEC12D131B2581006D5497 /* PBXTextBookmark */; + 1FBEC12E131B2581006D5497 = 1FBEC12E131B2581006D5497 /* PBXTextBookmark */; + 1FBEC12F131B2581006D5497 = 1FBEC12F131B2581006D5497 /* PBXTextBookmark */; + 1FBEC134131B262F006D5497 = 1FBEC134131B262F006D5497 /* PBXTextBookmark */; + 1FBEC135131B265A006D5497 = 1FBEC135131B265A006D5497 /* PBXTextBookmark */; + 1FBEC13C131B26A1006D5497 = 1FBEC13C131B26A1006D5497 /* PBXTextBookmark */; + 1FBEC13D131B26A1006D5497 = 1FBEC13D131B26A1006D5497 /* PBXTextBookmark */; + 1FBEC13E131B26A1006D5497 = 1FBEC13E131B26A1006D5497 /* PBXTextBookmark */; + 1FBEC141131B2757006D5497 = 1FBEC141131B2757006D5497 /* PBXTextBookmark */; + 1FBEC142131B2757006D5497 = 1FBEC142131B2757006D5497 /* PBXTextBookmark */; + 1FBEC145131B2B2E006D5497 = 1FBEC145131B2B2E006D5497 /* PBXTextBookmark */; + 1FBEC148131B2B7E006D5497 = 1FBEC148131B2B7E006D5497 /* PBXTextBookmark */; + 1FBEC14B131B2BAA006D5497 = 1FBEC14B131B2BAA006D5497 /* PBXTextBookmark */; + 1FBEC14E131B2BE6006D5497 = 1FBEC14E131B2BE6006D5497 /* PBXTextBookmark */; + 1FBEC151131B2C52006D5497 = 1FBEC151131B2C52006D5497 /* PBXTextBookmark */; }; sourceControlManager = 1FA0569D12F0B528003F1373 /* Source Control */; userBuildSettings = { diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Resources/DWARF/Pong b/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Resources/DWARF/Pong index 94c1fcba51580bd8a1986cc40bc353a8674d63b0..c342ae6de85decaebf4707948c5cbd8009afdadc 100644 GIT binary patch literal 158651 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

    0C|*T)xreaN%#FEZuHbd9`z`9)^63OvUsGn#<< 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 quN#X?b5`bBv~FUl)^QPk!5iW@sF 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

    hY!du_^C!38Y+%&ePq{du3 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 Z(r;0$0986}iy~{9gUg5g6uKNe{eLJ4_s#$S diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong b/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong index 485eb89a6b9c4d3983feed51b84f66f8e13fed0e..b23b9f39fd8b51d053c19593de3646293c16092e 100755 GIT binary patch literal 153464 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 literal 153016 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

    EMqX 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 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o index 3e880e9b30bb12d145f4c97ac140d3467bb43444..db9cf77622217306f130b3dfaf5be9a08c407f43 100644 GIT binary patch literal 220068 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�$eR;z*g=@-Pk8MytA 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�h=!a|eBik~g(%TmkQ86?Z`-*ai!7viIb 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 T+zZqstIBvKirl7D*6I8ocDTUj diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o index bf0426d029b3eddd82b1e3130f1d90cef8d72306..389ffe6bf6833f41f672f1a80fa1d740fc6cf0b0 100644 GIT binary patch literal 25104 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 delta 21741 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 A$p8QV diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o index 87737434a5e1e63744ff30a55d0a8614bf5fd03a..04f7f90fac6f26010ae426fd8bb6f368913e9b81 100644 GIT binary patch delta 2534 zcmZ8jYitx%6h3!m_A$#&yGz@B0ELzXK?|u!jMe(!WguD_GA8v!o~<1b@_n)9K^b?9X^r{5lG zose&;y}r}}g%k33NNYpxjJ#9pOQa&>%;JgRlv41J?@$RklLt--_D3=x8$vwozT zBU$-_rpcv|R((V0^_)yc7s_%Ze-m;#lFzda0;Y4Jmk;1Yg&dKc(Kh)Wk9(TjI4s* zXW_aoVO<>UETSO{e&eWfc&>trV!T)8<2yThVEGaq{N&K{>w>p+i?oBSi+=uUYHEtn zRq{mqesQn-KE7S_$-DLSseZ3fvK_B`{rdjyvbD#SFY0yix%^ij5#L#uLkMM{$h-J*95`9%I5Z_f#BGx7ZMrf-hTpN$n40jd^RB)UAOWhwP0F z+jUY0*jykE@R@LCmmmT+1o5)%JIx8_Y8eJ&#nyMjgjb*xQsf8w3|Is^L1cv9)(%7%LFR4;!vJTG)LlE|>SSxyg^^k~%l?t&#_+K1 zl3I0THJP8g9P0#^3%F`+)OJmKuScr4T%JhgvjKme`4P*lSUallJ31~eCi4@VWVLXS zIj4x&iyS+r|Ji`K#LNxEzUTa^v##xJvj8*&>O+VRk;N#=a!TIQyksJR3r7es$6ROcv>H{9 zPwR9>_aA^;A<{u6O^;e*bU79#EqLYAR&Ss_gJe>B2wbhipt0gcVPWczz|u=s!5X z^$PTjMdqTTOVuE)4+PGuGcY&=mxf%jQswFXmM zJn)-v_$q)XA4=USbm^sT6V38?YQAWbAEk2Qu>3kz*gh9mw^CR{3AYB_PG3qPI|Il@ zQd~gTyi9{%3@($o;8bYEwV!~;wNAf(*zZUD{w=?ML-wZ^i-9v^X;<`AQKAZML@&g@ zO$Mi#w-%4+9zadhyLZ{PV|CwrZJ(Lb;wTgRm%z2P$HG0#?H4@og~k*g5Yuc_9B<_v zNFX00(=1u;XvHz>m1k^Ve9vFQM)_C+6CIT{6|ys?dNO%PjYQAox>vpL{3NCHBkj z&~K1>cEPQEK+#U}XMG7CxG?fWr#8*Nn<1~0o3kzVodu0Jw70`?H!N5#hhr)nALso5 rj-5XBExX1H`{l`Ocl$W}&I7tP^v|E}&7hmwi3a7b*{twnB=`LP!-)sH delta 2462 zcmZ8jTWnNS6g~Gb&(3XUXgd%3qMafIDzAd6DH@MJmYTc6yl(ozB#IXId)a zB;tdHf;5K@P!#l+{s2%XPd9&{1LGbeJ&&!A^@v zdt4EIT~&FDtIF5zSUt-_?k1jc#qL4QxnePrLBQ;+W95BVQ9!$Rqq~~_=?eS094oW1 z(s38n#K+yS668DV^5H#5sYauxLnCWAM>b3Q@uRK=e%KTBbvt`p#2$70vZsCnA)6p~ z(edjN{Gw>f7#qSQK8iYu-wp8Gm|J^MSuc$J;?h#fjvQ_rSItDk(e_nC*D zB^f!c!n148QW9jRm*knU>o>Afr97uQcJvXTdx)BM)*22&hdhwuK_;So9&C@sXUZZw zAHcF~cR(4qiDD7Kq|!;IBn!fMLX2!OH<-?*m@-H*a-3qcQbwNg$dtV;I88a;Lf~k@ z0aJavHV|ED=VT37BujZ=%D#RfzaAhGm&uJACR2vfJQ1j_NrR=tXM-gQ31ferDONLo zBM>v1;j9wB7`1f^qoamt^9wfT5^=_KGp!F~u+_Ll>56| znat>xMfpEC!!<2hoDiN|joSITgSbU?G_Zg~K}EpU#1I9gHG#zG)L|;8;_<4)^Qxp5 zkZ7+bNP#ppsx(b#5e6Xwyy_|tZaO5&fv1&9agMo3gIp1t&q0h%&MtuNTvDeXi?8!5 zTD^3h|E^W9_zbe4+`ztM0s}gMsUG$VFn`+8nY#20mM9C@xy4tNHwKz;vsDtywdD-o zRo+lM380E$fRt33$mfQUEjPM}5LKy6n1*GTW5!?`bNg-7TY|1*?lKzEWFf%jDZGo~fuQ7NIXmp@cYObbghGUG+Fgv6s{8zF4vq_^b z{Q}vwVXr@ps_oV%a)mrVst8;h{wy^!NZuD*E-`*ExI%LCv%&hs0bIOtyw*Q%=);fQ zrOB@cSyP5gT9Mq$N3L-n*xLX6#N5}?wuhBxI>Zk$lA0S@!dof1ExJ8U3Vmu?p zQ+#)5snmVp<&Y_PlBh(Pb@6`}HO}9=7g{T`vWs5#ll-0PaFJG2(uqVNoz1tcLyD;I z7cOE8IRHl2@B%hY-3X8>e*vW11K2gf=<>5KQR?}UyO3H#ke#s5iGF^@Vs!EXbGn5Z zfLIozPAP2^N=AAR?*U`m`ku6#hpK5?-{wL-XBrtpw~XynfZhB^_{8sW$ z!Yic{{3gbB9*ZhXee4WOZEzc58tSIrizv?E$;I4*#n7ok&C)d7vQXE>9g0?8n?g-}l6 zM8|MWKPbmG})+Z9gCE delta 113 zcmX@jzLR}|2&4H#M`_Md1_p*!ATFI8$k@(l3}o>GvGGL5>d7vQXE>vv0#P8f8Bk8f qM8|MWS18AIqGQcuNoHyGfTH}Y)Z~)MF3kD-Pdh{U0gRlPP?5~d3z_nn zCI+x@+CW8YK-#^a950~uJCh~Zqy>UYN>ftvO7z{`gZ0xBb5kcdh{U0gRjpP?3bq3z_nn wCI+x@8bd{lLE0Um97mw`JCh~Zq}c +N/Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.h +c000000004D6BA99E0000000000007535 +t1298901406 +s30005 +i + +N/Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.m +c000000004D6BA99E000000000001E66D +t1298901406 +s124525 +i"AsyncSocket.h" +i +i +i +i +i + +N/Users/jeena/Student/GGS/games/Pong/Classes/GGSDelegate.h +c000000004D6BF0FD0000000000000213 +t1298919677 +s531 +i +i"GGSNetwork.h" + +N/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.h +c000000004D6BF9A0000000000000036B +t1298921888 +s875 +i +i"AsyncSocket.h" +i"GGSDelegate.h" + +N/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m +c000000004D6BFA890000000000001022 +t1298922121 +s4130 +i"GGSNetwork.h" + +N/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.h +c000000004D6BA99E00000000000001C7 +t1298901406 +s455 +i + +N/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m +c000000004D6BA99E0000000000000A80 +t1298901406 +s2688 +i"PongAppDelegate.h" +i"PongViewController.h" + +N/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.h +c000000004D6BA99E0000000000000478 +t1298901406 +s1144 +i +i"GGSDelegate.h" +i"GGSNetwork.h" + +N/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m +c000000004D6BFC3B000000000000171A +t1298922555 +s5914 +i"PongViewController.h" +i"GGSNetwork.h" + +N/Users/jeena/Student/GGS/games/Pong/MainWindow.xib +c000000004D6BA99E0000000000004E05 +t1298901406 +s19973 + +N/Users/jeena/Student/GGS/games/Pong/PongViewController.xib +c000000004D6BA99E0000000000006D7E +t1298901406 +s28030 + +N/Users/jeena/Student/GGS/games/Pong/Pong_Prefix.pch +c000000004D6BA99E00000000000000B1 +t1298901406 +s177 +i +i + +N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app +t1298922557 +s238 + +N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM +t1298922557 +s102 + +N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist +t1298901406 +s730 + +N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib +t1298901406 +s1675 + +N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo +t1298901406 +s8 + +N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong +t1298922557 +s153464 + +N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib +t1298901406 +s3576 + +N/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o +t1298916185 +s220068 + +N/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o +t1298922150 +s25104 + +N/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList +c000000004D6BE356000000000000025B +t1298916182 +s603 + +N/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o +t1298921889 +s52664 + +N/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o +t1298922557 +s65260 + +N/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o +t1298916184 +s6296 + +N/Users/jeena/Student/GGS/games/Pong/main.m +c000000004D6BA99E0000000000000160 +t1298901406 +s352 +i + N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch t1296319395 s15453392 @@ -259,14 +401,18 @@ N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/Shared t1298767883 s15477968 +N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch.gch +t1298916184 +s15477968 + NPong-Info.plist -c000000004D699B7F0000000000000445 -t1298766719 +c000000004D6BA99E0000000000000445 +t1298901406 s1093 CCheck dependencies r0 -lSLF07#2@18"Check dependencies320547922#320547922#0(0"0(0#1#0"8620273120#0"0# +lSLF07#2@18"Check dependencies320615357#320615357#0(0"0(0#1#0"8623958464#0"0# CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o /Users/jeena/Projects/Pong/Classes/AsyncSocket.m normal i386 objective-c com.apple.compilers.gcc.4_2 s320506163.448783 @@ -281,6 +427,19 @@ xobjective-c xcom.apple.compilers.gcc.4_2 lSLF07#2@56"Compile /Users/jeena/Projects/Pong/Classes/AsyncSocket.m320506163#320506163#0(0"0(0#0#48"/Users/jeena/Projects/Pong/Classes/AsyncSocket.m8701333952#1821" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/AsyncSocket.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o 0# +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o /Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s320608984.442900 +e320608985.065137 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o +x/Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@65"Compile /Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.m320608984#320608985#0(0"0(0#0#57"/Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.m8617842240#1920" cd /Users/jeena/Student/GGS/games/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -I/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch -c /Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.m -o /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o 0# + CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o /Users/jeena/Projects/Pong/Classes/GGSNetwork.m normal i386 objective-c com.apple.compilers.gcc.4_2 s320547922.019677 e320547922.108375 @@ -294,6 +453,19 @@ xobjective-c xcom.apple.compilers.gcc.4_2 lSLF07#2@55"Compile /Users/jeena/Projects/Pong/Classes/GGSNetwork.m320547922#320547922#0(0"0(0#0#47"/Users/jeena/Projects/Pong/Classes/GGSNetwork.m8697032064#1819" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/GGSNetwork.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o 0# +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o /Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s320614950.479272 +e320614950.599456 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o +x/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@64"Compile /Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m320614950#320614950#0(0"0(0#0#56"/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m8620833600#1918" cd /Users/jeena/Student/GGS/games/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -I/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch -c /Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m -o /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o 0# + CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o /Users/jeena/Projects/Pong/Classes/Network.m normal i386 objective-c com.apple.compilers.gcc.4_2 s320534354.402493 e320534354.480753 @@ -320,6 +492,19 @@ xobjective-c xcom.apple.compilers.gcc.4_2 lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m320546111#320546111#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8615280160#1829" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o 0# +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o /Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s320614689.245826 +e320614689.351764 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o +x/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@69"Compile /Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m320614689#320614689#0(0"0(0#0#61"/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m8616796768#1928" cd /Users/jeena/Student/GGS/games/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -I/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch -c /Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o 0# + CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal i386 objective-c com.apple.compilers.gcc.4_2 s320538857.214200 e320538857.289112 @@ -352,6 +537,21 @@ o/Users/jeena/Projects/Pong/Classes/PongViewController.m:241: warning: property o/Users/jeena/Projects/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m320546465#320546465#0(842"/Users/jeena/Projects/Pong/Classes/PongViewController.m: In function '-[PongViewController GGSNetwork:ready:]': /Users/jeena/Projects/Pong/Classes/PongViewController.m:45: warning: local declaration of 'ggsNetwork' hides instance variable /Users/jeena/Projects/Pong/Classes/PongViewController.m:46: warning: local declaration of 'ggsNetwork' hides instance variable /Users/jeena/Projects/Pong/Classes/PongViewController.m: At top level: /Users/jeena/Projects/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation 5(22@57"Local declaration of 'ggsNetwork' hides instance variable320546465#112#127#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#45#0#45#0#0"0(22@57"Local declaration of 'ggsNetwork' hides instance variable320546465#239#127#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#46#0#46#0#0"0(23@13"At top level:320546465#366#71#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#0#0#0#0#0"0(22@128"Property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation320546465#437#199#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#241#0#241#0#0"0(22@135"Property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation320546465#636#206#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#241#0#241#0#0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8702176672#1835" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o 0# +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o /Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s320615357.675679 +e320615357.846312 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o +x/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +o/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation +o/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation +lSLF07#2@72"Compile /Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m320615357#320615357#0(423"/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation 2(22@128"Property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation320615357#0#208#0(6@64"/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m320615355#241#0#241#0#0"0(22@135"Property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation320615357#208#215#0(6@64"/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m320615355#241#0#241#0#0"0(0#0#64"/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m8621773120#1934" cd /Users/jeena/Student/GGS/games/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -I/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch -c /Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m -o /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o 0# + CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o /Users/jeena/Projects/Pong/main.m normal i386 objective-c com.apple.compilers.gcc.4_2 s320460683.547115 e320460683.605167 @@ -365,6 +565,19 @@ xobjective-c xcom.apple.compilers.gcc.4_2 lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m320460683#320460683#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8627558368#1799" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o 0# +CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o /Users/jeena/Student/GGS/games/Pong/main.m normal i386 objective-c com.apple.compilers.gcc.4_2 +s320608984.269744 +e320608984.414175 +r1 +xCompileC +xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o +x/Users/jeena/Student/GGS/games/Pong/main.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@50"Compile /Users/jeena/Student/GGS/games/Pong/main.m320608984#320608984#0(0"0(0#0#42"/Users/jeena/Student/GGS/games/Pong/main.m8616794208#1898" cd /Users/jeena/Student/GGS/games/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -I/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch -c /Users/jeena/Student/GGS/games/Pong/main.m -o /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o 0# + CCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib s320460682.803946 e320460683.114061 @@ -381,6 +594,12 @@ xCompileXIB x/Users/jeena/Projects/Pong/PongViewController.xib lSLF07#2@33"CompileXIB PongViewController.xib320541122#320541122#0(0"0(0#0#49"/Users/jeena/Projects/Pong/PongViewController.xib8638250336#624" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib /Users/jeena/Projects/Pong/PongViewController.xib --sdk /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk 0# +CCompileXIB /Users/jeena/Student/GGS/games/Pong/MainWindow.xib +r0 + +CCompileXIB /Users/jeena/Student/GGS/games/Pong/PongViewController.xib +r0 + CGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong s320547922.133159 e320547922.147945 @@ -390,6 +609,15 @@ x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong lSLF07#2@100"GenerateDSYMFile build/Debug-iphonesimulator/Pong.app.dSYM build/Debug-iphonesimulator/Pong.app/Pong320547922#320547922#0(0"0(0#0#68"/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong8715120192#415" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/dsymutil /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM 0# +CGenerateDSYMFile /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong +s320615357.890605 +e320615357.913310 +r1 +xGenerateDSYMFile +x/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM +x/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong +lSLF07#2@100"GenerateDSYMFile build/Debug-iphonesimulator/Pong.app.dSYM build/Debug-iphonesimulator/Pong.app/Pong320615357#320615357#0(0"0(0#0#77"/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong8620325696#442" cd /Users/jeena/Student/GGS/games/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/dsymutil /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong -o /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM 0# + CLd /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong normal i386 s320547922.108442 e320547922.133084 @@ -400,6 +628,16 @@ xnormal xi386 lSLF07#2@73"Link /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong320547922#320547922#0(0"0(0#0#0"8715172544#923" cd /Users/jeena/Projects/Pong setenv MACOSX_DEPLOYMENT_TARGET 10.6 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -framework Foundation -framework UIKit -framework CoreGraphics -framework CFNetwork -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong 0# +CLd /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong normal i386 +s320615357.846401 +e320615357.890498 +r1 +xLd +x/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong +xnormal +xi386 +lSLF07#2@82"Link /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong320615357#320615357#0(0"0(0#0#0"8623096032#968" cd /Users/jeena/Student/GGS/games/Pong setenv MACOSX_DEPLOYMENT_TARGET 10.6 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -L/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -filelist /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -framework Foundation -framework UIKit -framework CoreGraphics -framework CFNetwork -o /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong 0# + CProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist Pong-Info.plist s320460682.801056 e320460682.803887 @@ -409,6 +647,9 @@ x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist xPong-Info.plist lSLF07#2@23"Process Pong-Info.plist320460682#320460682#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong-Info.plist8626925824#511" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" builtin-infoPlistUtility Pong-Info.plist -genpkginfo /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo -expandbuildsettings -format binary -platform iphonesimulator -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist 0# +CProcessInfoPlistFile /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist Pong-Info.plist +r0 + CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch Pong_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 s318012194.697806 e318012195.224785 @@ -435,6 +676,19 @@ xobjective-c xcom.apple.compilers.gcc.4_2 lSLF07#2@26"Precompile Pong_Prefix.pch320460683#320460683#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8630404672#1706" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch.gch 0# +CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch.gch Pong_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 +s320608982.629915 +e320608984.269549 +r1 +xProcessPCH +x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch.gch +xPong_Prefix.pch +xnormal +xi386 +xobjective-c +xcom.apple.compilers.gcc.4_2 +lSLF07#2@26"Precompile Pong_Prefix.pch320608982#320608984#0(0"0(0#0#51"/Users/jeena/Student/GGS/games/Pong/Pong_Prefix.pch7594869363256027136#1796" cd /Users/jeena/Student/GGS/games/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -I/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -c /Users/jeena/Student/GGS/games/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch.gch 0# + CTouch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app s320547922.148144 e320547922.149847 @@ -443,3 +697,11 @@ xTouch x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app lSLF07#2@69"Touch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app320547922#320547922#0(0"0(0#0#0"8715020768#328" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/touch -c /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app 0# +CTouch /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app +s320615357.913404 +e320615357.916122 +r1 +xTouch +x/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app +lSLF07#2@78"Touch /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app320615357#320615357#0(0"0(0#0#0"8622820288#346" cd /Users/jeena/Student/GGS/games/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/touch -c /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app 0# + diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/categories.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/categories.pbxbtree index 313a9af7179188fb6d9f1f71184f60d73937aba0..7b4b0c70b10027c11636d6b766d9625766559fc4 100644 GIT binary patch delta 485 zcmZ{gKS)AR6vn^v-Ze^#46;{C5eR{_L`zUX1raW-uV|2xASi-{2$x)u7* z#4Q^#T9RsXXmk|&XG#$Dh|cx#G>0yHd~ojXp6}dK@D{wsGada^;A9urv%(QFtfWcv zk|<3`qXLYx!mMHxcwYxROn>t0MrIzkVa4v8#58;99>{VJmFV(r z-FgBRpMfuynoM!~%qjMa)ds}t0cE~idIh#W_@a**pn@L0c>q?Y-3(CmA3<355Mrz# zf3u=d3tRicCjx|{5Mgb!$*F!ddkFCL63hX@!Z6i;pmyYL!jwrdVmN3kxid#HM*(RI P|KNXHS7YaeoYh0WDvyD* delta 485 zcmZ{gKS)AR7{$-`d`4Mhb|lr_q)G)&v(Cyr{X!B?F)PY*&SdvvlthDCch%{ zO5{{Rswi>EsX^n&TQ~p!Mo%`He#A%3%J zNEciC!{>$t2Vp^Cvcu{3YK?JVU`P-P2o{3U{DGd4Gl`hWn-ilgw43xs1eCJP;Mjjt M*KJ#-nsbGJ0Wy1le*gdg diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/cdecls.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/cdecls.pbxbtree index c9a2307efee4e3d437b09d67bd2a2f075c9884c3..b79b2c5a3b7ebac87c6cd4c7f23ca28c1d3f1720 100644 GIT binary patch delta 72031 zcmbrm1z1&0-{?KF2|)!xN*uVTHS?c;&8)TgdD42u2kWVhhV*7aRJRafY+s!){VN8g zq!1k&OQDAlNP-k_fO0UawiF#Rr05A}*gpvS;TZU5N>Kt@vwa@2I&*!t6o=s!)MS6T zz4#Z}+U7dfY3s&@Iq=-tjzaiR9y1rBM0cIIyZb)p-0uCiBGWk+|r|L90d%35Wls0&GuTt=!|y3W!~ozS@#X;n^& z=Fk$-%1QM|m#E5^<)sdfl;Y8NA$|=M;IoNhx~RNzvI>i2Ke` zj9V&%nVAp)pN07Aix5^}QrPCx+yX-E`Y6O+_^gu6b6j_x5F&N05Z~d<4PnlILb{{GFo|)4imiYVm%T5S4jm z4V?%V<=L2iQiwS)5EjEqQ+Y&)H8A?H5E{IGE=0IWEYK-_##)tnKFzrin1rTv+V?WXwQBz z%I1_!p$RmGwD-bO6y?O*r$T%I2O83_lTIvlLmDsWwef&;X(@}VZw1?VJe5*>K|S80 zq#nrrHL~}n421wSxX_q*YjY_+aJE-bDYm*wF_jV7Oj!cO8A3S>LfGDlVm+m%3tW4H z@(5)g#-_hYEZoeXqrMB&eHYoe(4bRnA8kkLAJa=ztkYs4>QBe~;62xDhmY`UCA~+s z&fN3d6WJG%V##t0XuA-t3Zl;6h1kZi%aKylw-92IH55N=4(X9O~qCTv55Vdn}s;bAcoTAER^rJkfJg}`RO;;s!SU#bxn*E zyWzGaSKeT75P0>|2p>kl97xgQA~|0cYQRrwc@r*0Y=RVR>!aozI|+B*2vLUGo2g{m zQynbN3(*CU9n#}5pgYe$MVq~&&|BKnjQtMq9Q$+U{8)b!6yCD`4)K41@1Wz{lEPB> zV!r|Xg?P#NeH_n&(E$vy8dhYA3tBB2a^=vPEZ{Dj7#k6N<%*s`b$3{X48ssc2Z2i zgwydP5p1vjjPhg7Gm+t98!2*WLl5@P(aSM-ngb}-bk23+o~0aHhZ>*(f4lzcY}+H1 z5?`bU=6p$Co#-(hb)s$_DSGu0qU|4HDKY|dVvXwU;HAHgHkH3h)Dh@%oKCEw%J)AI zE?Rh><~&ndxoQm!JzP;I5{C(q{gMWINYT(yCl28AypIWSPl7+Kkc9sQ7F^U9_T-|@{?!eH|DPOsKp_glp%$)N_MQ}>XXM+O^A8n__nUN_`5`+ z#Zp+STt^38!%pg`qmNe(Jv8~)F-4GGs!sf_iDRrS#Y1|R-$19$TQ6Oew^KtyKYZ#& z+OZcNf){~e4q{jfyC5Haf<0c-0~Wy=*a~s9I|=H;v2|D{JcCQr)8PwkhCz_HLWnxx z$iu(V_u>~&dkDKL3JNbaYC=i%%c-1oEEX^Tq>6WTu?XjQtV(y*%xJUmi*uZmYOhB2I*q6Qc9GCZk5Fsmy?zse{d zUf??T;%ma8EF?la1Vb!%K_1uG21-#7Z&3_NKtqIl?h@KtNC+GFQy8=0y1ICzG+6o; z(>4k*xPTBQlQDUqI!@9cq9YI*{6SBD!4K%o;E#2Y;y44a2}l3yrx30!g_v}loPcx7 z@G$<{g&2>3=i_OX;ksh+G%q;Uk!?%7k`LXD+=A|+thEr!K7vPa_RDZx9t|GDwe~{I zbq&^4tgVi^##*ntPUZlom4#bQU2ht>DMTl_;9ojIJ=j)RiXE^EPQxD92Nxj^4#HtL z4`<;h9EX$mgWYa%s-*i^>7jPIyT=VEhhKue&;hzYFBl9LDνIGlw`(8e0Au%&(K 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 delta 67795 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 ZfD-WL`!TEy7+D%1PsZ@#y&U_ge*&PaSug+q diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/decls.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/decls.pbxbtree index 6ce485926750879324e8882dc11332cf10f09c7a..519c075de13640331e1a4ca233ea0e4d2fbc2d64 100644 GIT binary patch delta 70273 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 I&&|j`0ez{nF8}}l delta 65779 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 t(SBe#0mO+woCUxU`kwPT&-e0tp3n0znEld(0V zHPxln+}pUfU}G&5hD#Oh*bS{p?n>yUK8O#@(UnE+&79l8`d^4FX=f@rk!~lh>PYLa zt%Zri`X}-IK+c1(AB!*jShJesq8^Oq`zpQ_Kri0k>$3h@yVuEg|2C{$d+AIp@-cFS zyz#hnysI=JPTJYcS&y`5rT3qaGM}RcdQn?Fn3H+!RSg<5t*r%{UmKg-ZT!ZU;dWvi z*+se>FZ~QQ)-li$3VFWPnVdlm*tPZMcM0DE>2JVa-!UDZCV#ve2lF5?QHqDWFUTW= zQY$VwdGL*GPM_lVh9pR1pC=!1>;-bwR~p$*x&k-gqyE$%wOcX|74FzgZa}>>l4?bg z+efJH#_WxD(mCY**6fAmQj4Z2m-6!3O&`P9SBZDLG++{YVX`!QDn_7S8hi6~DL2{K zf0@(S=c&@HH`y06rQI`FquJ~YSU;CqN_X;mkm2{zjhg4^+x;A|P@24e*cZ_o-jVh! zCZ|i77aA@lFW~jJG`g;3PJaklF1-s+WUxPx$t$EOne@XfeEvYHkzH)JG`ekboPP7l zO4jgWdhTlW4$OuFpGcM0O5@i^8T9|UMD52m$tzvkCe2LUIv~`(#);o z;w#6l-4}ssay)vzb!q$92)O>Gv|tOq!4XKo)>}|6*XeQAUu)N&?u;G9`d7a$9&;#< z+Svx*u>R0{JNpcp?UmZYN~nxoTMwm)Z3XjG%a^`|-8<>SyQsz84EA$*`)?p0hPN^Q z_~E%oKF^ZBbL-c z>9Iz!9gNaD(jf0#-gTS&E9*{7{^FZ<37@Xfe=pPDi=@3gU-^yR^*d+hRp|uZ>VR(^ z!mw}8Vz&N&J~QW&_h4eSb8f`edxn1y9G+Oo=tX2iHKSZ)L2aX2A=08IMlT~vp0(as z14(Z-Y@O`_o9F-QMYy;93$zA}Zc#HgIXC{YXP~*AGgld-hhTbHqgBWTK}Jsoo4eM_ zYd4T?Ps9>Q4W!$=s!Eu$#vVkl&Rt&z9~j0Qqt9iyZ5jfx`3LtX!NeRVw# z->qL1Y2@N3!$rN>n#+f@rbd&ZunDc284Utoe{CPLbrnc=RtuwbEsZ*~GTIC=j~X>; feYXvNHEHu;>vm@%y(UT8G)VvY@9ocqzjuEFI7UYr literal 3104 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 literal 8632 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 HVqjnd(f~6N0+s*( diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/protocols.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/protocols.pbxbtree index 1edef7dfbd6a74f2f9d1f5ebc7e9644ff0b6e1b1..fdae01f7dc8b456d30986b0c8c762fe0a194dc94 100644 GIT binary patch delta 713 zcmZWnO-NKx7(Hj6bH{ONYQXvNrzU4AEgPdCk|HFia5jQbKV_ zgzS$N>7qr;!A-lGil|-KqFEFKMTQn*;Xvm)y#jmi@$P%y`OZ1td9M^LMX!&ygkA!j zHNdelFs^$rLbL^ek+sC20VW?8+R5+sBfG-4W`Vo&K+@&{Ps1~xfRmb-ww1tcyw;(-F!Sm})X9Lj5+$ULOR9-i zK!+p`s2U}E{zuj3+Xdi6AJE+oJRgu{Ve4geiS;Wm`VF`zd{%tZBsx9fjq2u6VD4NM z@A$=&K=CKgvpV qn^Jrky&F(1b`Z{si_pcnyqDWS9PB5q9-&ax%l|u4;;h&`q3mz?5t1DM delta 713 zcmZWnUr3Wt96iTxyW7|r4s>m8xN<`+GbxA+2?>hoar9&)7G*>b)I$^$`B0EaNO22& z$o|no3O)2V@V&H%=q)T*P!L2VnY5xs=Wcxj_Q8+uyWj8JbI$MFTaK6GS0~nlp8-7q zVCXwAp|^<=9YJ8Ug*ah=sYj(wa>>4DU*zT&;LakDvRw_2Bl91CquMcJs|~%zt(uJ8 z?rpKhO~{_}c0}Gj0UZ6Lo%QmG#aSTw6mY=MM+w-f*FIbn=9@Y(b@Cua;)K+3Q8oD- z=$7OzRYtOBm+CfORe&Rd!0v;<+#%HPO|n{J{S1sP0C$Bih;N3(R*!h8x^V#bdZvzd z{NhPs?gxmnAqiPTR`uJW`VSV!FItXp-`zQjGHcWDK2 zS!0}RB#H^*b@G4d@fgvf-e@z?n<74C^{vFCt@KAL)MgVmMij{MjLO9p1JBYTm|7?WCn)Uu3pAxF*7@ggBQmWXECKtILBwk2- z!1kM5+Sy9B5vSXUJsP`pJu#(7()OBJnef@~E0o*n_S=%l4P`bHG3}ccZr>&%px9h= p)2h7w9adF05YCH>(8amDccF)Pvsaq?DOCOOZ%103zwNeA{tv(!lQsYV diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/refs.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/refs.pbxbtree index f5b6b05f805cc265e9e7fb4e88774741dd7dbdc0..6333b6300fe9a1b9a16d17325cf32c45a1dca61a 100644 GIT binary patch literal 123264 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%0Ac=Mui=Eyl?ehM{+__xL{-JZJ&70`t zCH~`SRsY{NbGd@!vyMCI&m4jIM9wH|-k^LD{f^qscOhqxg~&K)iEYYk#8ON%A6Jt{ zumBJ6K~dv~VfX~Iu>&j6A8WB0LzNA!zW!t$?b-0Leg3WP^R@RM+F!@HENJEa1IcCN zX=N|rnBzF=NP-f`g!uR?{RJL3pa+pxdFQ*D4wyHa*O-?$z1|vPBj3Eq-sV^Q=NA6s z8}As*(<$cSaRlAx{S7K#Atq(RyX*jtAP$@I@k3)Ru4o~yX!xAYy>gCydHP2B zt-cTDdye4tbVJ%xW^3|<^?jHaU_?agbT%ikJ;At9_>ibRHAIQv(Wf70CS8?e_O+Mr?|I?|l zeGI;8CqM94{43_61AZa@Q4*nW`G|dCV;TY1u349nFUV5}dCa>RG1psT|CxTz)xbLl zeK=1a?$U<^>Ce^u#+K|#Cki&==O@v#4u0bymOolktkKMVEeGKK{YXN zTbrNl=*|G&Jd9xHrJo~AdoieT!RCuw(~1W(iQzIBZ}}5fdS}5_bwr^d;>Fn3iS8So zpQ=lbw|lm&NSlLyzQfMY%^d~UxWSldkDKpUvDmi|-}5&=unnHC|GB@OCj4R#N|`6+ zP!^?827lJyc+PBMZ?viXAv&6o9{%3neE#*cfdBT;0lyG7u{aTPur`VJN8~ngE!jS= z{UUNb=16ZOcOtU$3&};uiR{RYtXNe_494D8XDdb;k6Y5!q!&ncXFF!H9SPdnXC@oV zUqsd*r;%;QEo39*nqZ)7KCEJoKzgkFc4QkYE9AEj!MsDl_`Tu_^uk*TY#;xDq9wLk_ke`W7H$Rp&}WLsR5hVC;Y|#ig^BjUl^a%d$@$+zjwVq!z;YO$Kve){Ov7N z5;L55>|3Cx?120^X&uWi%ol$VT)gjinBxbSD&068-BE6q^d{#IOHYxWD1V$XuP{dX zLkz=648mXx$3Tq2Xbi;&3_++Q;(F_WxYhuD)o~powLO~r)zY!Gr?=x?=!qWaiyF>% zC1;Qyke$&9?a>Bp@mKvT^s^px7-)@ezLhXfZnCpO%)7M{&CMz1*HrO2-|()v{2YbM z^+cbDzd!YkXo;9%x$l8K<73Uuxz?Qr)>vPd>*==8mpyK<&mJ(+S}$&5E9OREC#(lk zny;1c%DV4>F}>p3lQZ`Co{1%rHS~_y-2IAek7v$4vKF|Hd$@}WnAC{9=q?r^i)eFk pl)`-H=3y~{6}JXLT6J8l@7WNcx$mIWeUM$a>3Ofo3-DL|`(IR2cclOT delta 55678 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 literal 262164 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 diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/strings.pbxstrings/strings b/games/Pong/build/Pong.build/Pong.pbxindex/strings.pbxstrings/strings index a211cbb002987874e57b68e93a3b075b6f4129e6..84c79db7026cfd8891e6f4ff7dd2bf1699461586 100644 GIT binary patch delta 18991 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 z z86J4Szx`3B<-=j`kkj5lpjDzJjFvyFffRqyP1C|&7|U*)tkg}~m&AD;K5&vLr!wVo z3Sn+6Cse#lhrE3-PvIJBQV6S2B!HIUWn%9cBP>X(uIr70G4vJN7CQ@rP zEKrQ|seM~$a!e^)wy0dQnDD4Iw_>WArX=htsb-s2Ehf@ag=v{tUy4zj%}Y9*0#T*dk8FRLyEF zg=m;ti7xbNTmYR}h% z($Ka{WjzM0Tia%%PClJrO+kr`VvGh*^b47#QY9-_YS4MAGS|x)Eno(@45T zH7jc|X48&ptvhC@Uhe-j>kxN1ClT+>wRE+cYtzlqQiE?JZ6NkkZUd7_(v(I@U4D8r z7gHm$X`+7qYFC%Bo6=GA)m?m0wBtnOf9+KJ;AE)3c7MrtC#)R5UB1 z1*vAJN@6jJnQB!zT^)J^!6NL%5qOIUpb!yph1h+X1t-GvQznFv5zsn2wFs>h@)E3engsELC`6}RCM;9 zlx72Q$mO41TH*PL*jMx_qObx{SXn_dB<3!d14%6_fEl9OBK#pfx)D6~Om@znn?G77X6fHT4zA(iLQ;g5 zJfEC`-CaSEM%idJCa8$LQ>kN7A{SxtaLv4JiwM`AUyin@B$Oi*%ZFTXEo&r^5J-rW z#!L&emJ&#al%i#Wq5go$gbh%iM=l=;TVFf5A4`nwF zw68@RR|sOOVI4>7$DA>!g>6;{dWXjVn?$;psDQgI(lHN}rTqCMJlKH?j9G?)2J{t2T$~)@h@2B*1_JUO z?q~qPG{1qhwus#=M_fBY2OjlU!gpuvVKQ^z@p610N$h`hLnVjDX&{_Op9beFP2C7R zV@$y6h9v^{L_t|N5LAW8M!tj-+NN*A<7ItQ2h%P!a(G#d#q>1o5dL z)dc|5T`K9SQ!6(dI?kkNfZef_ZD1)jirSWxrp0kziu^F9?AT50CN$gDibskeGGb}v zCZfRH%|)%GV9rd{7xv&$L}ZgRTOIE9ObaeyQAG!+oiTf z*5zw30&q&A9Ao7HOvi%AP8+LY9%7E>rG3AebSM%;34>H#l&Y3 za2+St4?#^7=14(k=-N^J6m+F2g=7&&;z#+H;A$Od8Xb~HLy!uWF@Qy%Q4Y02PmZ&$ z)HGU5lMO!2WX+;h%s5lAfCAjKLMj?iKscZv?qe_y+}IGz;IY!dr!;p8kYmHdUX zt>Lii-YafqoI+bR3ezrV3{kNDLB9!!V)%f-%Z*7QM|6rT29iIFzCTpKy)XbsFWgJS z>qH6%Vo`Fbkfd?-B8E%j!lo#di(&W0DR}YFTp_(o*rXKdPL8C z^$EWHO!l=tW5#V<4|6&@U{|2^z)_5CXcxz+xkn#;6b{ki;+g-Ozdl&!-ucdV#x+Mv z=>JdkSNz4Lsp^e7=0rNA#-U@CGWL`pySuE1rJtBK$j1$pJ1t1;zg$z0{EsULeB2`} zt|17|DR9=(wh`*&#fjn{tv(IObLYT#X{L5s{i`&JINilBT+r5Mo1#ZcTQZFO

      We=|P`K54iFIf5|5~&d>2ePd@s8xG}^Vd0yx(Z&FT+(9`a6tlMF^^tyAh;W4IO zXz8LK0$k^N5oWF%GT$gegjL%4`6$NM^@a$~BJR(VVZ3WO?%WkAb2{H#b^ZZ*2M0RxtSR&SZRWpU8k2wgd-Us) zbH^GE=Xrb|*6U>~^Suswy^qk_`3-F9{#xTl;3@c}HVn(~lwli1|tChtJOtc#t<|&vSZM zBL~HTeBdMeKIrOa47p1=&kJ06eY`Zkz`tkgd7h8*)^Xm>mkclDA5+fr0uS;6zuVYz z-I4aEdIc%e`CPhw68+z8p`7OhuDm{8n%|r~*Y_*$s35;#c_BYK#0xygo3rP>W9|3M z<6If?B>f)9=Y1kj4#1T+@AoZd-$Y-`eP4rLaOI`M{!~#u8R7-*cwM}-9Drx+mx}U> zFRtZlvE}3yU#}9o1gHPH@<9{7?c{awJvH5h-!7exVd0<6gxjV3{*!z=_3QlC)Bh~@<l|UR9bvo8efPC*;`)>G8QWv(-?qPhOx}#^0qrV z-QtnQkBrIH7MFtNkA5yc<#2U?%5%3gKf4R^1;u@SYHR0i^&PGs$n1Ka?^?W75Y{02 z%m1OnwL&H91?eyU7dC#^$6qPP*TqYD zbN2kM`$6*7OBuhvTvrqH8w}j>(#nj#bN2M7=z ze)u!*<54O6J_fG5`S(2V%=@_N{qWDjKcjj7bNx=R{{TG53q0F@@VxbMc3%wSF9!P$ z_rQzznSC+h*P9eEZ>aUmzc(TOd#HSYyZq+fn>l-)|D^q$4*bJwJ@fr2$WQrBpnU)y zEQg#u{Y0`s9`xW3l01Ih3H{ga3-JPXyl$PtT7AgcbDhjy_`4pADz5!prG)1K^3hN^ z0C&7DUdo%Z=X@t8c=>(%ZY^J(?oHq8iJtSF+4a&B`d%S!?@N--B6!Ki{cJn0Utga5 z?#-0ApDn!Z$=S6>6Z*ckf#?r<9{q+NlGpo# zh8*+<4czhO{6XjJ={M+Z@-Dz1F3M-uDkaWW!2b{Bd^-}eY|BqE{SvYT%X1n zrNILHKK;kq{89{g=5e9=>v?nYP>gTw+nu65=Ums#^0))xN#yhQ&$cU%1a8MC+#mls zRJ-!r|E^tmHh7YDh5NtgNxqLWc>hAvb$;c!kBj5i{{KhXn}Er6RA<9SJv}{}_Fb}N z+V*I`c)>PdN6^4n7_%6&6Sg)C3WRMSY$lEAi18poFa+D|gcfcK0}f#avo>Zt2s3mH z;R^vea52ru`7qEJI}kA8d*5^F-Z}TGM9BZo^VnDCJ$2ryuBuzNmQz*BtE8#8jf**- zqId=S0X$v}_*6;S94y?8Cl$#rf+Ko$ugG%#8~r`8UOFUS_sq@?t2T zw473$^%SUqZb*LZ!xdzXvsrTnlV#a?F5gqDM``@2z6brd(`V^| zJ?-eHs5~g=2e@z<5A^(nyyy0!`>pt~(@y8tfFFN0+VjFa)4czde2x0B{+_`M?$;uJ zaosHFd(fZpf5;!o5xDXLkMcuLzE*o!SYLcSd@Jx`J^U5w;ggP05A|FJH1<5Fj{c>7 z++44gg!?3u$&!2$yb0z!Df4@w^$hjnTkdzUz1MRH=1cN@#l!got&%XGIo|!h#6x*; zy!*HCSKxSe=wZYualIJ(S~#9w#=RAaTmOdbGxzs!yt_+rN(f&K=gCbC$=!&j^S8Bt z@5Q{1$Lj&#hkYmx=Xmxhly}&=^U~swJjct+L-JBDSFnG?$!v%CJJ}Akh^Orv*j7xHq97kHGnV9)s(<~Z*YD4oajTK;psW*g;VdVw3Sg-hQj zhWGaAJ<8oa?p07;E58Bc2gi7U8*iZ>Td;3U4r@L1_5DfUE7telf$messPDdh7yYgM z{Upx=@BXIs8}7jK0Moqz9~b=bJ^{}E)MaJg)cc`NhFA7Yv46^aQ=g&T9@{|2c^2~U zzVZdbDWY8+658LmFeKk5-d8r61x`6_kJ9{3aehyA98$))BecuN$kI*T(D=m%J|r>`uIE^^<#n^`S^W(aE!N(`osP_^rvY$Y#fpLofE$o z@xr?3EbPd~_k$VPoh!?e)Lyd{0x;X?ZSS{K|yZK4QoB(e3156@Vrvf z9lqa5!0}x2xCFl;Ja6-OHQ;#edIa-7@YDj1=Q$3qH!F6Y&Rj)a3Ou>QWX^NYlJ`bj zwi-O?JZOUZ4N;$#mNCDgxP3@@FCV|V+^6#z<+pxDnm^Q&uLr$9|C_jeH)+>q|B}+m z{L3u#fC+I$nbX~D(`(k)bZMbh$mnAul z;y>74w``u?@Or?}UVp~p&4AAj$#*P$79JeRb7)9@=<&{w<^%f^KR2A&l5ibL)47a& z@`h_g?~An~w^Y$CKN7z`ozJdeJmckhSth;QEX#ep+$zgnFL%mvzLyj1yY;f5-|6Kl z&U^B5ZCKvm<@&H3^l}s5XD_#g<;z~~49nNNoD56f%Tke_dAVAVb&vADzal4ixn7Yo zoZN2OJm%7TMQX&;^H`ILeDi9~e^o3$j!@$KS4AGlaK-NfaCf?0N4E3#?nl zd?@JWTTwC$9Yn;L-j9^yH)8 zC@lv45&01LgP(c!9e`eWppWuEPdn~^Bu{q|{-%zH`ysu|eT*7z8uzIBa0R*1#QZV$ zx6F+S?~qEzZM?_yJG3j-C*W2-)_=&#y=dPal^;dyIp0jn9`ruGbRL>`^!LM#e69Yd zwzG#Pv2O_N%;DW*cAgLBQJH_7XT6Q_hVsnv7kch2;XLcRbss~zzi-US6}T_g^mom| zj(j}dcjNg-=Lh{;l^6OPFL35R{aT~E(33CqYvul=)5%{un?MKOkop)ZDke3;5=bcw4tlu>?k$$JN14I8z9gpwDd0p7|m9Ep$zf!+P`@o0u z&B3qVBcAWY@>-gouzj9;Y{L=v;n??XLJnBG_8sg5d~qWGolOG1JR$G&;l<9)U8>-I z&RqHfKDAoD;PINBueG#ywS3d_)C0b6wfxBAP4iP+nunjE;#OgJju-t5mJY3!p+{?e zs(TX8$>I;^eVm(#hxR&qFQC`{C-lDmnbm*jX-EG;hNFL>4@ZB&Xg?FUwG)MYX2G8R zg)CtD7oM!?)8bbD!h29Iwm%4GycRA^C;bt*99^FpiN)80-r74$A94F0A7eig^yK5cU3ZT0$~yfW zJ?L}1z?BzxG=HHdUu$}uw!?m$^ibe_oWy-nS7O}qTMS+}jw#+>>&H2Mz3+VRWb^W^ zRn|@(S|yL???~IpT1go0#_5tgmv~>TviTdHi^dw=gWjJe(*#pub%8`gu@X z{d>FL=q|OH9b6?xDC7BC zJkP_~LzTx+Uy^lrdfqLNi@c8o&3(Z8Kb3o>lWPbCuoSJhw`&0&jAO$;?kZcNyzlA7?t!aeuN(w7-J&t}iKW6YE^>QoMpa zWDf6FZQk~l8rC6*r{m{(Nq*+!cGJSqKd{KhyN2IOj>|&&d0!zo@^DlJf_L zp848?{u8RFu&@1^_uIpLm>ZRsMp1LGrwL|N4?bbF}#mI15ff3 zlj*0S>r_*yM~`Fu3F}m~fbT{7?D0Czp@c2{M^9JW_CawyjV%M~=lzMN>sqaVA1cWs zJl+ZOW{c^%TsXHpvHiK6C!0}z?s~<#gV=ss&Xc{=c_ zf1n)J&A6Vy7wr`+Ze1CxRFWv8(mOsOLd)5Qx?GMRMJTK%sV!Xhkyaju% zU$BI@p1kexE9I5eN9x(b<+?}o++65sM}O>l(!TKf=)X<=9`tv0{KSGU^M>_i~eb6fp^idw@Y1dl7dGe^IzWzTAxUc{G{yqfT{7%^Pzxz%;pXo~12b$sg ziRYZd=}*lWs`UOd`c_E ztv@Nwd1JL(D9N{-T^gQx`%c4uTlMz+Bd+~U*nNX|VcbCf2J&&eTKUo5|HARl0;inD zlcg)*-Y>}a59k-+k5`$w}l%+i}RJM|gX{ z?Y${{AAsNA+4DWu@7cnTJWO$Gclq9Wne|-zNvP+KXSlFFHVd5cQTY>auKzIwTsM5S zi#H8VJ$bo4=y_LuzuEEqVZWH`fp66KDJ5CF)NA=ef3fPV{4*ZtX~*?Iw#QumYil^` zw`J*p-s;gYc%Y}TMg$V zLhsK>}?OKyK zhm7rNE1X+_=STJT^VcRwcfj%drpJ?j<9VyctMG@0s`fYgLLvbrV z`eE~5x8eC{k0$}g^Eny|4T9LcTGUUf|L67VLSxgzm?j9?$Kkj z>)~97nQ{59PcP&omR{h|^cL)SUWBgmwZ~=E4CdR@bw0>Hjqw6E-oiRx!Jg+u*n2%L z5By8=TD|7^54Xp7fk)E|+}mGWp3wU2`;YSEeE*T-r=PA8*|*vHkALd;={WHC@sqCe zPnG1)fT#N)*e_HZ{lfD+UO)EuNyE=$-phw?1)f9jPw;qW#lPSpk0&KPZ-L_{^@lxT z=O}o8#Mf*1FwU!DzH1Td3K&0`eAZu^N{^Gf%_)jg=NhvLpc}cQH$m7 z=T$lXcJ`6He~CW_^;V3hIit)c$2I4cF`h;Iqv3g7&E{=*&iT)Q^PKb1Kj-;OC7I;2 zgZ-9#CMb72Uy3Kg@yT#}G8~^8PLMB<_g5_+Sx$N`6rOJbo{mfFt>Ew1w)>9#ePKFI zUoQBYNVr$HQkH)r&mOxFF&$4XO`-2=IDaPUN4OVkZ(07uaP0u5{al{E`tOG83(bBj z)5r5yf1&shiui8Yd00GuwSvtpSl`nDKl`t`FLbdiCm601DfHK5elIPT>i?=ya=g{O#qPdFbH`zD`Z;q|~s`l<0BOM8c9&g1of?}LAu$D7vQ<+-fad>HHK z={$PN{GXQ&4a*lTUUlSR|B@aVyyv)UxH@RC->3L8?m2LHU#!1!OBMS9iKp{`wTf(f zs*~##Ior$4ik#==Rz>zXx!nnVCh%u_De-jPupa!@W=7=ih!@ulq1W^Hp!etTq4@M~ z7JAyH=WEfAY{jo+`CA83hxteUu&93taQ<1mE8$aq+QsvI&>*BSGkc{x4rv^z5{7c*S?eTV!e%Ej^mZsleDfULZV_Wg1BM8uxwM5%u+ z^nSk`ah-Pp?&qC|Gvz(tZTCCU^QMT$^ULDb^FCwgsGFYy?p zoUoE_S5L3g^!t9v#50cWms|$2Pi^_%&0p>WPdYC2_pO``ocFCfj8B1IE1y-Yli|6) zX8jPKp38w3`$=y=vwZj%=_&S;ihjApb1MA#@9anUeii#m???RfyXAYyCr=LGlOu*Y z(yQ~W(BveU*&oO?YZ8tgeSho6cerwYQGiz>Oj~(2eu77d8VTa*5VaRz<{)7GHNsrfT-jaT~cQafo66Z6SurB&x_a|=2#CNeE zFAT|}s1NTA_f1e<4By+do~1bVQ)vIVjQMohrTecTzsB*T_C4TMZ)vr%-o*VB-k$wE z<((|c+dVJjYht{>qr3%s_7|DY-D#Y8rM#55?pKy?#dv`muZ2s0Kf`-__A7P1Zw}|I zDz6rk&Y%7~#*1*qYvD59f_=K*uG=o>*6Dbzj9<57f0W-F?iZ?D$a1j#Ad40a<_9f( zJ?QUn=}Y6Cg`RetXWdErV!J7}pMvwOx$hZp{sQ7rUg*i!njY5or{1w=vM?<70G?cL za(Yhy&z*QQ<1h9Dt1I(@{(O)u{m|2n^LU*3;kgq&9M7GIo>I6c zu1C9Yt_S4kxgNlkH=O^GrMF<;>Q}Vf>gacCdpI*9PiHwk+hoo&asW117?HVHIYQ6! zp?~v5s?X2U%|cH*`Y~%c_VeNB*Zg+c73yaXxaCWpkKuhht;tbMZ@o2Y>2Ht9`@xr7 zWitD%{0=PPzF@tVdXH_OYShLQ?@o{9`fY=P+?s>GF!*jRj~oB6_4hc>Mx66xpJ)2} z8Y}!wOkND{X`1gTKA0Joe`ff??`3~h`_7Ei_tJ^8L~Tl)NW z_!q#7-(eh`Cf9C__X~>OVgFtA`vQLt-kVV7Tc2tDg46NbFV+vZ1J83Ir~3r`JjK%) zzKQ)V4Braj@qCXDpM-f0fgc0ISFv8sXKhIOw5!|v#2tA4!P)tFi4D(U`P)3jVLbI* z3Ov=XII;D@rDg1&MYwETRczgAsZy4^c)W^p%McIeDb7;-2t~9@WlcBlW7}gme+I@m zWlb07Db6#T$<+00wyT_{c#Prtq2Tv`A9T)B{JG)weMdXX-*F?_;b#%=>#q{-lcT%{ zPX2*T|5BXu5^6U&EH7|&X?W_@zY6*X{R_v*1wS?DX~%ur)NtSS<=4=^-@?rTr=0R- z@dupiWcr@Bhh<*lxA%7d`OTCI^}Yw3e`&unp_u<*vHd8{ zZ~FG+*7hn{GlPCQo~*BY-ZjYDe}~NP5&a~zACD*J=h(j73*k;Y@yGhR7WMylzkrjk zhv!qM?^8+?=L<#r<;27Iis3)}UBkckJJvr+7BK&B0)|+A6FlX^3mzd1{ zKhw|s`&W^FkG-h$hp_ojj6W{S=Jl2jk`#X&2k3iW8Iq5voh6Lp03Cl!;hUx7i7@`C z4QYOG9MG|N^m9#rRgGsK?rt>P=1ZIA$I5f-eqgxGm$rs9pSjQfXNEJ|6Z$bQUzZlK z4^QzU6!G00lGV@V@3M^H_(0>Ulx0eB>)5f~~nd#&n1BXFLAB z*zW+Y@q}<0f5D#ZGbiR?7=Ka;^RJbB{}{NAqF& z_xHT>X?s>PyVl%@wnK*(M)do2`1%o@?@HGn^?;YuE??hfp(o#tMkJ>{|y94bptv9|O_ypj^e&A!#eDB}>r}YDK{k}Qt z*VQ}W96|K!w57)04bIE5U#8=v3f8CDj)(Je=})fnuTv#?K7ZeyF#lQ$_}-Gd%Hwt1 z_l@~8`ja0poTAR}Dn4J5%RJs%Id9>8im#lv@T4bky|pACx9}A4y$^l_lQ=VqcsfrC zxl6fFe|x~SoekmAdP_f7Z=d={bf@7h;dvq765|CPK!LuIUWnvfp2@XaADCoIk#g<=RKh(AN#osM}J(uuZ8_w%4s^& z-TQ`uECT9$mlK z|F-hW&s!5$UfA7xTZ9*S^6?y@(__4~zzcmYe}OA6@RMj)OfU50)ANW>-+X)eDB#8R z^g}50({}vt+tYe8w4-QO^-Fw7Xh%^;*?-}=iBDtt_E?9F=O*g-ZF!Zv{rqfPiutUP z+TV!r?n@cI_+5uy*Z-k^4)tN3ly>@E2Oj;dLr*@gtJykhN&dmv4=|qgGS}IduibVj zS8oRexz)Gy-aIoTSA#EkwvB7kc8=}Zmo*-;iOiz?qkPo+8Styy#^cNB>j>}5iTgq} zVS4hyW0X^I-O_*e{QPMTyqrJ%HJaOpdY+vqw;co!u*9wGHv04ztGBg`j1lF94|R9K~GSw zPd>$Pbqr1C8MrU@1;mT%Id%Ap0p~u9-(z1f{KX)-b_{yj@%usz*DVj=nTF%K7sFNDkZ3ihpXS@Yf3heh!D`au6bzPDF~ z`cRzzI@Uh9K6p|;&!ws0-??6s1-~&=u;=4aSIxyeAb0``%*vpB;a_y&EwUuuNcp39nSN=)DK|>`*VTw{4eeQwpR8v_8C6)2keCY zEXwg`irWXrpA-6K>;cdE#VAKDca-Dp7G4XcU$y+dr8XqjKOgNx>JL~SlFADZUn)0; zWTTVYEwkgi;qk;%e?PJQ+KqT$P9YxpceB7LAJyIloc%5S?i(kuuA+9D3o;9w@=RT5dFt$s<t`<>lB_7Q4&ZT!mq zlb6|#VSVYAhvn^;a@~Xy=Aj@zm3GDV0l2;oAzaoT73}F(%KFEC%JVgTN^YMG^!%>( zpuhibxK3#EM6|Q>0Egx4&>wvspz*Pv!V>WB(cd8+{~ocu`!N#xpq=r4ihpmoKH%Rg z-%rsTas3qSkD#COF8;2xzT`!~Yuk(eSL}J=cE3H2k=MC+C=a7*Fd* zgnM%4honv3v|oq!UHzBvzJFA4^OxZ|ft6SA^G@qog7Ao+>jht8_`V(^gz-H5bBI^U z@^2o;`>gy^m|u7N{hCcA-BO1?_o8c`nq?V#5qQ(~sfBxvz1+dNt(TLs)Vz%M@&Yec zhh@ggcu!`%TpyNKd%1~qPcOGHukPgz&iV6lg8g}37Wip+xr%w$S@(Nt6b40zIROHoO#{A*|FIPw8ZC=Lw;rqN?ACYUl+#Hc_d$~0tKk{;C zL^3PtbjmiJ@GUmg6cIcsUuD?|4}z)xc0%~Yb@EXkK3S*zg{9?n@-@ZTdw_jqz5F}nEPdvjHO zY43WOcsYNU_3IjS+#kyC*1q+!TXFrKC5@)tH@Y;xUd~WF^s{iUsFus2_3}{S={f$L z5PosJ{Dlvn1bi9ynR;9{*!Q)vK`!!mHQ-Ylgg>-FKI6l80=~FGx*kt9*zaB5ApfCwsE4vKyjL6L4#m^=D&SKa zW$i1N&Vbi8hV*ZglNHxt3g%e@zHei0pJ1a2d!%@2exsbO;dNUV>ZkE{`y1s!j(-68 ze9FasH*o%?>B#!s1^b3>Jfh=C?e#NnWh!wf@xr z^2IS;;Kpm=GTwrHqqa%wPj`BgU-#dC5PdBE4S+}2{ekl@tovu-vv`id*QjsOdB*O{ zChI?>>;9166#E^(HJ;+SKkyG~K5*8O>okFPZj*e);RDEDkMRPJ@)qnHt-#yfWc|4` zy^y~X;{_h&E!a0Yfp=k(^&3-O$b%R!@F;J=zL5mp{wC|6q`Z(PUKy*`$KXZyT?`-W z8?xETt-M)IclZGE{bIbpqv-|yNN3-u2Hwfd*8fY>3;Ag=Uf@yQf_G%8kMb7m8}-fh9?oo*gZewddkFc{F<#)tTX+u(_KoId9mjR&Hd{aU2uF4FyV)$? zjPU|DUJIAKcLn=yd$aUuAHLfI$hXJ%fGb}Jm+=+t`n70W{G5R+FYu^;1N7t@OmC5gINsTs$&1#!t@xD$ywTih z^?YutjVIH31Nqg5F}_UShgJyJ-fH8_G#un7GrlxjCxlzrDl-lrKz^~48?r6DU)yY4 znDUjkNzBb_gsm53x0aUIsZWXD#a-!=ud3ZekXD7my`akS?C#0qZ8s?*d{-U#S1;> zFM7~Nd7!6Vx4&J6Ugh2k$eSr2_1)iY`B8i?3ijRd4mrj1LB4N{54h%Uk*{Fio!%km zdp^idj`0DH@)hl8cF14E?1AgNWk^q>zQf)t;L-OAdh!hBcF4sMzD9G0y|2*c-dEuI zz5jA>qw3MlcsdLAt;yqb-tF+raXK$|_}RzlJpZ77 zoct`p+ej>Y5Bi&^@9V7HO1lOh~yYkWQEqxR6#ZZLhkY>C;|f<5$6 zd+2F5m^ohd#O&+A9(r%z0Iu}~_}R28lh|__{`Mp8ug(A5ZW7;W|KZ-v55r<@J7DBm<3cYMG1^eHCC+^4`q;*b6SI^SQxx~uW&ga`fKm_F`T&fVuz3+n)Tu?}G2b>f8n z16()dIjJ`ot{a2sufZ7??o;R)t`jg^|J8YlLs;Kc+!ngI{=nbQeF`t~_YoxlUmlWQ z8INY0u0K@ZCxQQT9V6X`T@Cvfrf}}dBQ*c?clq^)+`U1~vizRBZvA1ytDTJXhvL0L zCwsjN%l*7u9hQfAxi&0M@^T&L#dx`i{QzEWVIP#2J2)@V%gL}TBahPbw#EFsmn!gk zX1H|ywjS;Unkn211UY&y5ODsT814^B-&gvrYkmcse(20l`k}l12NxYg9`bJhJUR~n zoPS{+A`73za|}N2k7b4Gw)6XZ2au!tgn?T;S`D-BE5qmZ33meT0?s3RH1aL1_tOtP zes9AucnkLQPuKMJD{?2^Yo78#J~ejFIq+zD3-+nsI`3oB`kMB4Ab*eLUhKyJSKh++ znD;k%d)~*y?{{}{M6}+gypV5=@dA(X7VJ~M_U`nE)$f!S^615p^a79a7VI1KklvXQ zdrwkc$h%{_z@xmt&tdq~er`mb6|v`ide$G#=a0wZ{bb|gK5Mq8-G%&pRor(Sz3&RR zrq|rIR_brTp8Kw~-1^vm{V4Z4AV=@J0v^o=;QqcVo>O#57wMfIm9xHy`g?>D=NCui zT*}3I2HbcpT=qT}?72_izsNf?D$i10O5lb3@)$30)OwqqJT_PGY>kjhD4(#h;J+9Q1n@>|4`g+CMow zH>UlY!mHNK+a=(H!c^& z?3=+JdT-wV&hJDI_zP)QIM-qpdh+ocP5piCad`{F6@MS}`um{I@dH=?bKu_poO~KD zaQ{6_>(wmujAzgvm+Ki{v0Rc6AM`%H%pQ8$4ayVp^4Y=u<-fr* zDak$X+%Ieu;g5{xQy`~)Nc1Dpdmi9N^lISAIVQ9JuIrxjL-JOJPuD$L!T<0O_A@IU z*7Z68N8j{I9!~v67v;S_JA9&g+sRJAH#e5)+GFk!0YShrQq}RlYY1F!ZO4| z?-U;>m@0q40Sd-<#l$qVuH=aRhJ+qLX{x~VfHpJn(2 z<6J(aEdNcrs%7vUcvj(?n#ET){HA7E9svBNR#~3TXQwPpJohKT4$t>N&g@X%_;*tc z=Y}$T9e$mBHiu>867meoJ@MS%v2b_b`6S4hz1TS8rfNlA#_+X@T)}6(A|2W_P0#Tb zYu+7r-b(vW56}BiMJ7;bF2M6tJnPjFo4=SGktaeClM0T*HU^vO57^9FhGVPXf>Kh+O9RWi-rdjLMZBua25O!qjN) zer5J|*={fG9hHw5zjn0PUuDa)v~N_dGh7=Y_BZ+cT$&%1ZyP^F%+G}Lhz^aKKTdic zQD@ZrO%_Mx8=EvAY~Cap)p;SFUnKvE_jga<=5x@G(|MlCnEb@}4X@g{MoUv;(z#Z{ z+dN1u;Csj9KP|lB^?>gileMqYcnxok+3%W%ADiOV!1A1Ro%cC3Cik`Q6fwUP@WnBC zxW|)#FJs@S$HmV5UaE}C^E_S+_!Q3d^mxtAU0T|Ueuv>9{Q=)ME+6oCGvM>%@@0>= z#^t)}=~px^J;jeulzzv~2fZa3mtPW3=Xqp8CJs2cIw3o~T$_+nyj-7M& zjr)nx{H(5(172TSE0=q@zEp%Xq?cQ`XVS^-j@<*f1b?@GA)d~Q$vT@at*lG$ zF}L~BYQU$~$&WRBm`AOxvw6wAxWCcxP(K5{Z=J0DTk_k20R7$=U}=7x+|}c)fFD{X z_wjfq;EU_z;T})c**x&_I{9hOcZxQTvnEyL{`>csrl2L1K&MdHQ%V9@jX*@NEpgHdAt3I1+q z2#J4K?X+238Sg<)zD8|>wujy64f2PrTj73!HyP@fPgq$HtuQmN(_{oqlY-9O!@cL>JF&)#SyH-Zb4Q zPX90VTj>9#?cxzioUhp=f8lsi`yOyjZwQz2F}%0;{$F!!Khk-MIrwQ&F6J+A<1Nfn z0Pj0{@BgLkQp(%jB)^F90*~?n|AXTlENqfjMSgGU7uJK`{|=8w=LI{)H|TGYH^+Dr z^9$=i?|(QFW}yu zepf81?#yQUzNEa6zZ~NQ9_20AH(HyuKTAI;{mvd??-suc@(*IXz>U|!W%aRO-{@?% z_kCfr49Jtd?~wmH#tU3|L%58$U{8N4#@y|1wthgGUdZeJF4B$wkEXX^-+;fAwomY< zI)yxGdLcg`#tS@}-hzDtepT%FcBi+<6Uh_iFX)%`oER@~ORsj9vv!{0y?vv;MZZ7Y znJw~a<<-v*+L0}CX^a=R@mjbne+%}Fmid)++gq$(mew=KuQ@4_zrc;R(2fAViT%3N zeqoEeA!6U?1V1+DwI3M5dp!DH!j60m3I1i}t=11s<15PTt#V}~UmEaZ<9MtG{SUCN zdg2jEEAs=h(9@3oYM+hS!@o`Kp^w@_PrFumn~vvhp57)mLQc*xnSNg!z|oKF-^pL> z7eKG)CP07rN0^_sKc9BmF97bpM`^jzUyOW>>UR5%O>WQ4OAa7M*ZF{Jc^2kP8Q#xp zHfr1LJmBf=`SXAwN6!NWZoGx_fD87G`gZxR8`w|SEcr9F-uMF?)8?EiO4%OZ+*D<|eeQ5xBiE{C~ z3tV}N>re&zMknwtY?nKDkaePblOz@xkc`-beW`>x76a`#mYAV=@J0&cv8 z`>qQ1jcVYX+#!=pU*EzHAfFveFYqXD!Jhtf`rVt`A=BhZ-*3oIkMROm-Vko3-17E~ zWQVP{_jly>{|+F(;<4C=Tr4->mR_B1S!tIG_Vlx3hre6iDGg1pcK^{I-YKt(r5CuR z*TQA#E!fj9PkASI%3D1zd&NDW{JY%aQ z|Hbf~l5D#a&jkKHd%=hp)B|9CzDa>~njZ?@03;rT-1p*_8I5`HO=&z&BYzsGYl zJP(&~9wX$#!xi;+0p*_?kw?e)p;vzBbNs-SA9$1>dh#{I z<|7B?QF$r(Lq9RgALx}I`W!!SqSCIWso;&!~7(evN4}Fdwxbg#!@K_Q`uxeGR+$!G@k6it(C7Gr9q-+Y@=^ngcsp(h{jdAcOVn*?6ybG*Q{9Dzr9X$L;8qjQAI_4f~w zKa6*?{D$801Lx>#dqN5A4{+s&U6dbs@}=wLgZ8-m3;9F)nDMs)KlC|%;K~m?$`3vH z8e;c2alL%~TbOdYx<$j@dHhpW_8?`F#vt=*icpuGVk^+&k4FfARf+Uh@O`9DlIu0l&=IrF_J%bohMu zPRzoN@ibbiwOtytSIg*SEC*}1vvPo5eEvUT^YYJas)y)(ZO*OO>_q*Ln`v5sLWEt+n;8y=&zYwl2hu z-||6zwDHG#un2Hp_%j$^x(?S`tKT2)4}Xs0VI8Ow@Wr+AR~}CSzKnT#k5|{}xNm7{ zoxI0z9r!hB>(u{bY419@#&A6Vu~A=V>+<{7$+e1y^EjL9G#@!{{#C=7tyouEnKw@i z*9lqf7w0b}ypgPv#Wk1*UtTAxFW28oF=@zp?Qd}2ylS|1I5=;v`Ga}$ zvkljdGw03Ke*p95HNz<;+&_LD*O@SHeu3h)&cyxWiqEf?XM4OAcn+_D;~#ux}|f2{Mh65fbZKNzx8-?WuN%kE0{l4(K(OK8ozXC zgG_q7v%$(`af94baeE;f$p-W9Ufv)V7;gUEVV-@dvQb`SxRqDc=D(M)PyDqW$9%iy zKlX!PX1L{lGvL?{{vnTd0?*>c{5oh7@a2v2Mb9srw4bt6*(BF{yc+PSO_F%L7Vy2B z&yYlYlR8l5;&Sn~kTkS)T9l+U8Kc zo8>aa!~0SX_`c23@^~}g^PA-#J>J=D>${7a3+uQ6U*0UAweYs?D_bmlWsCfa$EyLK z+9JR3crD<2x8&D%n_I#@fGzR|3vczLgZV)CnJg`Ck)3bT{8aZN&XZ|9tZbFD6%YAY z+Zx)rt#a9SG5;0Xv3_%_4mfUUZIuTye7c_4*(%TQaSfs`@APtYn|$8OHSA0D za($cp&dbehGWm8FUu&D3=jF~ed4`vhZSqnt%XWE#m#f>Q?d95b`I49G+vPi6Zf=)9 zc)7J*cE7`=r?Xw2;pJqzG`)=ZmA7~q^CDMyxwb>T;N|)b`IeWPJLH#MZtalG@AUES zkh^<1*&$ExGUgv%=4H$qT<+!CPWh~t>pSK9UT*G`UwgT=Q;vI=kAJ6}<>h3jJj}~- zoIKsj)#K!4UalP{mwLH=oV2~%JWf9A<<@cXT`zZzlV5u|IZn2|+oeyAm)%~j9xo5} za_x9|hL`Kd%cWj!9xsQy+&W&q=;hAw@~>V_j+a}!EV~Np@4NE;5Vc)WdXGzQ9s99z z{tvrkjn}t!N!81pUGe}gC%fdKUX~MNpO>pA$VxcaqD!+`5zegO@vZk`H@1 zxs!a|%TkqJdbwJa-+Q@Mm5uLp>91Gi-d=82<*8n7Rpn(~?o{P6FDF&`keB5|S@3f8 zMES0lYbVMrUap@gTU#sXX*W;Qc6Vw1M0o)5;9s${c%q!AvN=F5EuSb)@p9!Pd5)K- zPLfwUxzRjH+xfxVNpdOi;yMHLy3PQ7Zk+)*JH$QU=9i$|#4Q`L`K}&t{uRTg;|WhC z<#V1F@;}FTfk$}@_KkYrojF;KcwWfAi}3=F@)qnHt&?p%wS98l-ve^g-vhYv7T14^ z_LGyc>EKE}&Q?uM$CGLPrTAcaQcm#UYbGBRKH!bcr1p~r3zKp$+F3VAW`R>a$}ZrI zB-r&QF<_qj0bw1M~D7;o!_!~^o$33 z+BIZK`{9G~lqAZd-SDiQP_OMO^!_}Ej0bw!HEL5D-(Y%5{!4i*zO3A#*ZhG#I)4N` z?Hcuvo|!3G|32oArDqm6<&-arKj4jKu$!BbUEU5j<)iEZK3JHNa~QtRt~EL#z0mvg z66g9$5BNQ4cZ3q=Q-E`Zj(B{%-{Kkcr{oo}_>#a2eU2Bn@&b?YLQlTI%$?;L$2(g$ z`KaF=@WI@j4iSW3tV}DM|q(q-(dPK za=#dF?JoKr^`JkK`t)2u;K~a;$_qXD1~Ye&nHX<9@Is&C1+KinqrA|QZ!mWkd1H*X z8F-=3@d8&~;89-a$=8rmY+bv2O3v?P06FSs16;q4#dU4qIX|1pQ{sL$Rg13&ea_Fu z;nDX4diArZhxE>zV*T-S9Uk(hBKgw;9!+n-zR?W4bEjCpKIMgcLyQ-Al(%5tkh^Mo zIVj&%eoCJ3otOnqIeq`;)9*sS2Qzn-p?0L+*Nv|SeXczNuI&qOpMMSD+Rg#@?NJsV z^o(aPcUL(p7GE>O2YoI+;2IxrA791`J^31Ps(zQdAn#ro%|@}n3paO1UbS$ctc`$i}5E}Sa2dtS)H zR~=n{dcdQ+1^b4aX8nNjX|jVn{X#zgdiDE){;eA^Usv$cnuVTrt?AQrz2k8IH1#t$ z{FBq{zJ&VeS}z7Or_24xAL_+ocn=!T>v|0Ix%HS}*8?8!=NVr^&Isv0L!K5*{~5+# zJ|oW$JMG^9_w_x^|5@nC*Jz$$>7P48E{>%idQCs{KK&UF^t5Yq&d_`uESw?l(sVLc z-TeU2D-ZOZhj!ZE1s=@@=*ibe0)PJu`C^P8dgX^c#}8cjfk*kFCtss^H*E(7b9a*; zk-xaU3BBdR-SYgvt)G3jcs@fwbl&yr8a;!8q&(C6X$VPmANj&}aX!sg=o!y}$+NZHxOw4h{XNO`XDeSr z?yk=p%XgO_Is3)5+@R-zVGsHra2_Y@bEI90TfNq0#g%y^=*icpS-9@>-9!DiaD#%} zsE2Sf`FI8e`RexFHT~Yd?KRE3e;fCO{}jhId}=E0-&Wjb>;2W}-*#XceE4Xl{%-0& z7i8|M;cBCJm>E^h})G zQ_W5%0<-n?deHB~zIm@_rqI4QB*F3zhO``b4@cL|`C_qPUAr9o0?P6=3vYe_)s=IwmKC>&RDTZE;UA;kr|V^?Yr{Wu za;q$rtC8QSzJq%?yquKfWG@TO!SZr-Sf1$R+OWLD%k^P-ind+a-oLP*KlP%etJYMB3{fd;F@2B`TH#2 zppWs<|5M|e8Idbi;>+gO2f#lRix0SqFAJZ=cMQH(8|PP{ojlwh(f0H3PwakYo?~=< zBp&WVXZRlUau?>Wwz4bVDd=fO|H+@l>|4Pe`lvnhw4s`x$Be&q7Z=`e(j1##;}((C2u8 zD=+XUFZAT2|KyD^-cI0!KF14Od4WfHp(h{xCr3XNDTgHRLZ9OWuDrmbywH0*J9eQ zgWleY0zYu=N5k&Jv@4EBp(md|Z>e-mgufN|+Xa5$IvxUkyQV8YKf!aA$akQRbFU8N z&sVu0aDToE_c2VMIDd8Lct5XrzRJV?$hoA~wfHr_J_Yo3AB}i;PuUCj6!f3?td`_z zJpI0fuR>1u2VB=&*|+dRhU=JoYuWA-<&zFWJV)pg=(8l#L-IR>OU^MlyN?Y08ue2{ zn6>{1{yo8u3H=)86#F&X6}N#5`!$MJaNnTEt7Y@&nkvg4lL|+mzx#2 zhm+ea>sKrts>s8MXZ;-N<->U+e6-KZEtUJBQ!@ zDE@ABi$l9}jB^`-D{pb0uVByfAURUxd63s@d|}*Jl*>3rCX#;c>(F)#`rLc~a5D9P z|EuF=cpN8Z96U}GnbNLKh ze>ZTSzKj=o^09wJd-k7RP5$t`$@rmH9_XVy(9@3RFh4|?)7 z60>K&?8J{SeReNYmVeMI5A;zU=xN7((t~JUX#aTrrM*Yv^4w3ajO&OiFYKbc(38)f zi}?&qAK65*^wk2-^f7p#r(L6C{hIE=xcs&9Sifcf`OTCI>Fxp7cCauX$?)F3Ri4m( zf}ijD0QidipdkzoHlOnUzaMmKJDeYfCu@2=S!Mkd%vXH^@$%ko_FoR;$^90*zxxaP zec`?h-rv38<$WdTI+^oS>i>VJB(LAZ`alWuJc-@ky0l!9e`EOU{?u@udSys{>hWs8 zr-tOeJ&yhrPs&-^i+P}rI-YvK_YKK5hxc1US`N2#hUBy}5I*gfBt!Xm9x2Oi+NJs` z_KSMCR+a~QxsLPDz1+lHpO;(MN9yEu#~R)xRJ>OcPw#IOoRi3TE}X0Qx5UHy-JQXC z=U3zV9P)ht`3mZb^$a-w(s1*keP?)Y-<=zl_tHM)gM3Yl4|tTXVBc*I%NIN!HV+^yK4w z(%;8;>wy>g94~O?1s>&vo_vj#*$>(y@)7cfdV|+d|EO0U=%YN)(~kXC<{Qr~Ux@KQ zuRPF4d7!5q&n;J;{)qfA#sj_bKp*9So_1-!v^zN}zjZw9$9kFPJL>y2Ju0g|zViFo z|MW7?d(?0%c!Hk&E+v}1ozc_zo?Eis;;??LZ*Qaj?_Z;-NoZ?oSI z9`d(l#`L@EzyF^C?!W(B?;1iq-F#R3{=eptEBCLQJB>C7;YY)>-n8|qWNww*0zAPz z^qk>ubXM8=4Zi6*FA&DBjbxSl*Z1-LSzaZjPq1E4N|2u=?YA#gaDKAl?8O7GmTdiH zsw5{UuFEgzXNC2ty(PJq;^vRR^{q!zPWun@C8>M)P)T0kWZvTx0N&cGn5lYs7 zV7ajWaJk}?fXk4U*HQ)dxO==7?p@gn8{%QTn(I$Lpq!pdjD7$;F1vlq$J}Qn+yL?k zl#Aa7;QUMZ((+_@Z_jxfoi{I+{d!0DAj*V)1K@E#cGHLTlPr7|&oTH~lVvUM!*iHh zKpca~VL9QGN2j0XHM3syp#Lw;7p)~ISKP;fdP4m7ircynan=apYsi<@58y0$;>Rg& z^&m~>EcA?jFgGkOj-{g+(gA%g9l$jmz;o#UuIT{o(~-poJ>%gy&YzCOmxTDB&&3B^ ze+O{?JJ=u5bO871$l`;Z@f?_}Xnx;}@36gZw!X%5Jt%hJito|2OlX^;YQbw^zwF#FJbV`ulk5{%W)b ztha0rs?ewV3;BK%A553zojlj7IR6Db-^d>Hem_c)YCInk&gEHDj(n{?&ZoiCm(RJ7ef!M&wT95W zJA91tDf%CH|Abr7PXBxd{02}Sj|J~&cye5(EodKk&K4QtG0JRz`Q*542H{aY8Z0dz zj?dh@@A5&C;;&IJX*wBc_Bacl)x%@(HR@&iuFSxP z1a&C=UJM|A=TZ25#d;3h;xYgKjK5&tXkz{z1=O9x{5*emUyBRvEc_Hc9pMFTycRCw zE!r=X}l6%2A;WL+3R>_fm2TTviJkuS{T;%@9=a*-_OJ6*m+O% zD|iZd3gt-u0lu$2=pRRYU*BGgKPp;o#D7PBlTdD1e9)7R^Xe~-@is?{7y2A8aMqX} z@Mu0lPd<)&E{pND0x$GAUf{|LJjx3_`8W>xe2ljfc%jen0#{z(o|oe)t4|~H3Gx-j z$+OTioRc#n%*y)WLo|HA>)}3; zePwy=JsDn)1Hte||Tfb!Qu&j(uz;)N+ zcLcx3e$D1-ZmCyf2l4d#*2KJyms=HipqD#XFLZJ{F`lL6iaeEgI^S2b`pES^KVIN` zN_4ydoPX)}1KF#844<=akI32gK|DvbM=S5K56}4y>lcm0+fC@n$9W3oYqyW^{2i(P z66C+7T!^m+oPTM!EWHJLuE%lyzFQuZtH=}bpXaoFJjM%Lc|*92w_wkC4%Q^z+jhOC z*XkALIlRny4%RH*!}bFWXZ4KhX1|Ta4_xC9udRT$?oUi z{b$Y}F00S<7mD^rfLl8Fey!C1EIr5IYhfOO?ZaWrH?aLU{OoXlS!>L`ukA58^|LGo z)(W>i0zK_|(C?(audNK;>oKht#G`(M(36krPEVp;p`P$Q4dsPC#|xbGjq6cSUg*h3 zf1Uj?UKuxD=ySZl^*aFEzXxf)@g6qvaUJS2G2Uw6g+9j%TzP?eUcYV?{l37C@$kO3 z+hXz6LVVEY;sdVn0nfz;T;FHl(fFWeJO^gRwft{xkIUUYSH}1c_pTwo8_Br!EBoWJ z7kJt~;r(Y9P%e~T54hFCLcg+L->71J3-zZviF-x(J45~9y=Gp%dS*h?&OWA+|IQZgE%x7C?+^4M#6y3ec|N5i@8h$IbuT_^Sg+!sC%d~&_XoJZo!8}A3ZY&Gon*aAAg&*M9I&qZ0@X*k7%;~btlyR^3~A5=WtA5;(D z=Y8e;eM8N%#?Sk~K4v^j4#s~0KU9|MneII{Va|R(18^Pd+a6C4Z^gdn3n5;J`aQSw z56e$1yiO!?UWvbdX=+&h!{XHr2EX&_?}YDs7xgkdm#bg5^`2Xr!?q5bewSOApYi@k z9ry>4FV!c*a)+0tA|q>@zFLuAGF@r-T1Ecg<$6UnePKo4Ziesrd__(no{m$K;E&zM zdJgg8{0Q{?;XUYceiXo&pTu+P8o-$k#IJh}*S&4Mc|LsqXQ5|2ybo9BWy&M+*jT*K zv)=Wf*L*laiRBW`PX!+3hn{@&S7N%=UrG73_|R^RNP}{*T>x(Ff`v=d%kVFD_N}=Q zZEyVh{s!oedf)Le`qeSs_hP@=@8jUSn1A274}xxZ!lJMg@icIkQRNw7nEeg(r~>m!oz*&LDI@!7)t-e2bL zvv&LrJWqw3@*OUZ${xsvhex#@r1t=Ff5yWYuIS&_9Myd0{tUf;x6fQ(X@6#+rya*f zPoRCVKD2^8^xoe4B}VHB?8wJ`5R9=qJti;E^jZAePw|>aeB3Xg?^z+84Dapff3LiA z<8p=PEy(nvfAP}C{_;oCQzFqiz1-VfV z;n2@N!G|lzjn0JT>tF%*2WvPhuQYz@8AA{H(;Sb-@8j?^|7KxFzD8p9gZ_l!jP2ZrrT3#FD5BeVTIey@52Z-A}w3OISv-6mV zn}22@Ug#N5qrO@``(>;Z&EUR7#(RX48^=Sh`38M1UWdO6YkukP&GHR;@->>_T3-sh`B&+p%-0iQHBjnfa)$*MWYA#@X2Kep73++P> zxVmSM4`u@f`ziwANVpw%5qWS61qKmJiUg#`d7k zw^wVde1ZG&P189GJMuL;W2)Ft5gzE32YSy#JIl9q@!tzQ`FPGa z!wqKE$)xfZ>J#+J554ElelPU2vQ==JF7SAk5O-o zkLQMKKFqC`rz=0DBLx5}GUuH!sz)lYBM{7KF+xq)-Hb^JKDS>C*X`E2va1ITZ6GVd{De)Ar~ z{m)$aUhp16FY{hP4Y#ma{-eQlQ>zz)g4`-^(R3W1*`odTL3@kr;qNKrC-2K+OW%Y3 z?)rPR-QRN%eIEX;l&jef7PiP^VmvsvTX~@WqdW*l`$2z;?2GXvfd~3O%7bvUAC$Ms z%VRuZ=Ysd3|D!wzNBaZQTQ#2!;~qSYe;T!Intub_cXtW-L;p8>KcLt51Nz+i0i5H5 z9`N>8P>x3^q2B_W;}_!gy`bds7kb9isBg3Nhna11E#nRKC5sn&jTib{yudYH;JJ8# zYrMdt@j}md8cpLJ%x#mN{$8tBS-e5tgFY88aE%vuE?(doFYsu*&@&$11IRam_Xmz4 zvZH=4^!j_D&&3N|;{~3J7r4d?JQ^?bjORdqo0fAO=cVg=JGWiV1fE=C@?ku+9^kz6 z?N@Ssce^~C>FZNk*7qY}xmN8SHr^BW1l98`@coA!YTtw2>S5k~-d;1A1rP08GdnaL zb)1{7>1ywg=K@czGMV?jv3=_HcgRH=pS4@O_sz?^Z;f_0;=Z)kYdB>=JSGFuzxgbF z!&|sdjUgMYouS>_DeqK!i^tESd>y!-N8$eDXJNSby1V^p^Hs%r)_(Q1m3bA;vlQoD z{QM>LU)i=Y-*syl>k>%Mt&=4=!sm2J-uphRC*XMv*7*74&5e9=$L6gwHeYk=TuFZS zEy(SX{F-(P@aO$1p8b*>&u1Ba1k_Is$q_!Mhh#VK!|fqClTUE5ocQE@XIzKS`aD^d zM?im6eTJU)J?I}oeV>vW|3gnZu3IS2bXlImaK&~2dgXyW$^$*^=m)i*_QiI;8SJ5t z+CxvfLAxyPirKebsmQBQ{L{+_rHQ-Ytvd`nSfbSiVIgi%^ zzHda{>hWg4=SSrI9#1gOhWBb|8S5^@`;?G=8P)e~sWK|xRh(}h^JP@u)1`f*@*j%x ztp(m3)%Sa8epG&?xZTsrc`?54ONZdcpt$YV=6(&{%(}FQ`LwSwAMBo1?!VA=xaCpV zN<8)dkuk$7V{($m>ti-OH%C>^osTr1$JX{$=dmTHwlCyl1yy-w>M@?3VNMg7mMr z7t6iSj`n~XZ+`xe;r+Z~>i^K49G8b_edF7P`T_YdF<#)tYvHnd0R9YT&;7jj+Rpjh zarsNdDS;PqBgPBdcr9GUTd?=%spQr%n)qE9r!0o{GPR!#IOk>G5{Z}dzS^Ec@7wdt z9(vkw{*><@=TCQ_-lXpz=TE1<2f3L4!1ebO&)qNBbG}u1XC~xi&kOl6F<#(N-hzFr zJ)z$d&WG|1yA98)`TNuHq^vd^&u@9W8gM-S)8W2s?y&Kq( z@^4;^_iqM%;QakZDDgXnb8I61@boj+_auay5A6cOdwcq$vYff^+WQ@IKUCEJAGq=s z{R<2Bjn=SzU)uOROka8)3*?ztdVw2n;rmjsZ* zyeDiA{wIF|-=1(^&V_hK_+&eJ9ojnn(NFBXh=+b+ALX-JlCSVtgZ~Gg^^)9z=l-U> zw|C%K`a1G6tjC^r;gGC@d;y-j@uc6Ej(Zn|blgV2FUlNO9mJj=zE|(ZxbDOwlu(ar zW#!|0bvN=JAv^GT!1tBqo*r+)&l+i`f7gQ*H@^h>aq;)jkLwY{`;^eHOoHF{a@qW{ zvi@N3*TVbrI1SHSLHO#hoo59n!{sEP3vo? zByEOE<)kEEa&lYv7U4aq49WMOjPX?Z9j=?-){Qem@(QFUZNIbffu8-f9`rAH2=t-9 zmX#0mw4?tQKaBMMa^tZp4l?D#%HA06ib=U*7-9c7osNBcj<-$*RI+?Vas z%YD{w;O{H;i-B9bg>hfOp8m9KNxNl~<%5_{)~<3t_Wz^o%LC)8>ixf=J9L?}>5>*` zrW>@S?X*odx{yHGLJJcpWmOXi0f@OAQT0W0m2TNNDG2K7_{K_-ZRnAhf;l` z7F-y0g3+SJ=b#1kxxC-!^ZlMXxih)E=WqV`%;&qFd+s^so_p?g1bJm#$ThCBE0w>( zpX2qt8_>_^Vf@v&WT+?b6XN1RZgI`76t}{^s}1+tVtZfOHB#H%OS?zv@qz0#*_e9Z z{j;>sL;n!<1KK*#?{Hk_{)fCv<>mFn=j|Ae^Oyql74^V*lE#I;EH32F;5($87yaa~ z-0x(O^*!hrkMo|f--(Ia?&3lpjT_bnpU`JCFBwj1gJ4BK~+^ zd45pY-=piR?ElgA+UWh_^~lS4z&S)YL;_+R)?bMYxNn@;a)=B7!+8Mb{T$!_2CVun z>cNfgocq**pE7cUEC!Bs$oELWX3M*ENSv&G#|^2dG@+kYYF&-LGueYij97aI@l_GH8!)^5-*UVjbu>_K11^L`q# zNc(`EetiCRTbzG`TmOXqCqHGmtle@RG%CmTJW_5Sq?{}g7kb9y^R`#S#cdfWf8=+Z zps&@qWSGxDuKfh^7uNB3=<-G6laDQzYdK&aTMqa!KkujKmVb9wc|CBwIa)8pfsyiH zq`Y3i_+Hy>L)Ryroa?^N*P}eHzj|VPn7xy8-1u}feuMF0_D;_6;EAYxi}7LhPR{ca z&focds4V@$^MDE-J>U3h)UFTjt%`8o52^76@c#3NobP$~&j=6d?Ed=VywUPw%H4ho z%NgqP(ElZ1JFFQ0;7>oULuSeUdkH+0K zTGqwIg*-McW-VcS2P}(4E0OsnTPY_>AB(Uh4W<12Yoc(PS?LV zPo^KAS3D-pzrp!KAL|c2{rDW?@p1kw&L8@yKd&>`aeVAM9LFu*$99d?`i&lkTaYJu z9OiY=A7J@;(aQMaaOM5xmB-~32Zq+|D(B^Vj}aGi{sz39+vnbw$Lpbb{S)}w6}*m# z_Y*yXXSRTR&V$bf*zxobJ%8f!0pz^joX1J7(+xdWjPp($r*$3ai9=*ZBoEi=RKE8R z*%_4=T%2DWBKK47p8w(diI|7;^<660QsBJV$rp@}FGb}Ic>go6zn?ThzN2z79+!r` zukq7p{B|eD@&DIRc^8i3e2>x-Bjh0E;d_*NT;9ES|KayoPFJ1+-gkuh;`^s-RZfPy zGE(c4>wXJV&f0~%4$pI=Ub#N8ROMulH@N4+PZ}wkRPLS+Z*k9ozi*_RqjG&32lemX zOT81%kEz_&sRp{NLk#weln%;E=R+fWg;8=vl*?$@8Rd2OE<}_!jFtzYyanICi1PN)^5PXZeuvxFHCnzL z)%T2+z9=t@mj8@$86&@sa*VIzeh}H7hA}cH%3H=rW0be!J#5#d)r_IDYWCfF$D_Aj7;Ed`Vnf$oUKHN^vXv`Cea} zKa7(xf5CnY=Ra-ZWTWPx7I|(NC#Od8cq~uyN*BvfxlZNud_QmWepmW&U5)bS zI@(URKRoCekIzYK{DDK|OL6g?p3g^@#fMzuLmnF+dd3UnFuTurJ4Xse1Q_A_dP38Q)E#~xLax`BF;0F4GS*}CJ-yL5 z3o!07PJJZK9kn6}#(`h-I`tp+R7pMT|FFMG8i)t+{UTtHvgf1^0$agL$Hlah1Fw(B z{S2;4fq%o{>$yYZQ{X=EnvYb;>%~LlOW?03M##5`sS&u(4457vhx`cWjgZ;I4Bj6G zycvCz@!E2Re{+cI+!V`8H6!I**cIz>z631I(`&HN_yws^x?Oqbzt+y@Ke&}Re}r7u zAt1l>x17gUTu*?W@rv6<%O~UFrbk;`=%aB<^El|~SF9N$&&K&D#+X0!QU4$!-%USP z-cnrX8867;z1$x@M2h>z$Ue0r!*fjGc0up0 z<#{0Ib(uW;j;EiyE<+xh2lk9#^vBDNxIEr?SO4S7^5kJ38xQu3Q>>pL55&bwO>p~T zLRq{3axFLf%E}EMn+NucALJ(L_0Qt|iSjMxbJsOX?FV{mpA*aSxhBcEFYtVsrHriSOin66qQ>OYYQ&Gq(=~GCt+3x-BR83x z6yrpV+)4TMK$DXqZ;kB4^D6sZsF6oaPKtKnx*@K*?mF3#IiW#ntD&jE{*m?jS#iulu}NwvvI3qg9C#os!4(B3!M z0Jv}Ubh$w7Y@iA<({-J>*g0ML_Hz7Gckv)658HjIeK~oMb$)xM%O#BG{6hOspND?v zx@@Gs!JmFX&c)e3U2cwxV|-XXCok@)l`qgf$)h385nR4JU&(v|ExNWAqrhYn1hzB|O zFh3^`ibvRfICzBoQT=RPGqk5(=LOJ5=LMAO{0{O#`q})hP}&~o887f=TYP`EROg5G zb16RbY-xGu$50>6M1Xqx zy7Ih`+kCbzJ}>ml6BJ$EgLQIRTwdrkFZ5-36G_WkldQ;_wBurZQl?(Wd6~O^G@Z2a zY)i(M2YTiYGIOjRI_Jno;>rWP&d;E~mihsA{{-Z^y^zP&GxUrXq~}`vZFA-RxcJa( zeCW&KL(VP9LtegJbKQ2$jn4}|<_R(`Z|7WjDK0Pcwp|r@vrfKeu6&h#;r8ZSdG=S7 zr|8Oa@EytnJ@Xg+`653>JU32wp7F4qm->a17q=~t!=mF6i z9Thtl$^Dwo`iBQO`EWmz2U+L0XOTP^^@E&zn4gme-eTJi{$klfzi>Z5PCm@f$%BmZ z>s%~fi~2!MKFrU_i#1E-8?>)Dz6FV;Za%)WtbgWd&-YkX&Ld#YIK}#uycQQPm2%@) zsw`fRPU(Cvzbz%le~aq`I^Dx@BW3e`ANKk^OFRF_cc$X=XDn~=;0hW0vzYBEuCV;j zmyI`xm6pF|WqJP8N_XC|vMhg)cJgg2%g#sg{>u1rc`LO%#m;&;F0NdeddmZS^gJto zT*pVqqvg$m$JRgW8NaxHwY0|N$*s0L(3j;Yu6FgZx-3tSSmWwtO+~$|arLsMtX}fl z*2I@9y++GZtXU@y#FZ&x;4#r3xR2iKQxe`14ef6a#S?XTYuU#`>!El+X(Ci!h#xpJGVT+o-7Ym+P2 zrt)&Z-qtxbmF>qo{A23{_RL%KkC&-GkLefQ@s=O@vizCjEq^EcqVtaI@m4Q;jxVp5 z-0`klu#fcDpy=cWk1sE8%?a`4O`M?REY@t6v*OB|*zDTN=JN7FZtZ1rS$Xq_6I(B^ zXZ+&+&9Z}e-18^lIGKms{0chn4|1E`_HCA{Xs_!b1)Pr!$*+ybOUHZY8NYaNv+Rz` z19@4VqKgN4S)PbIHV^cSU#w}8pE1v{@w`dj`;>?N`_vDVzn9QUm|yYWY4S$I-zypq z>!q|^P97vqx8qgK>GD_lRjy+~&y~|W^tay5^JQB{EyaPJenIvOi?inp`Rucpk5|Tl zo=>#op?`$>is$P*=;;^aT%7%9$f1Rp@<6ZiZ|LvT@{mRDKY*ToLD9uIc!tc3ivzvQ z$%@CnoTEj(B@M|Me|*pw~98t&*nR5wZjNW*~pOE>kI zrv8!gaq5AO0h_8u$-j~VUnXzFcZZ;B25ts6wT_Z^lLM~?#+Bn}SB|Gqj`hfSCd$!^ z>q1&iTvuY=sNcEB!}3qYqlPU1=ixUO{5+OFIZj$x9$;Ah>tV<1inQ13OxUz2*F4a( z98JCBZ@^zbo;*MXyVeQvd)+QL;TN<|koV)&bAJQ=x7v}hz9z}Y z*AWlMpDziS3_jp+ur47pz>^!21?q!_gnV;0p63H5Repd}cD0yaQ?gnXG9GXoZfS06 ztd>>e!1pazkhe~e&yxdBB=49aUn2*8>U{dw z$cySyj2VSNAHS%-yuaU3OzN1D4)xSo*t^QMG#4li9g>_W&#;KAZ2ObV= zYMmh*7)lZWXRX-a`(&oV#j4t$V2 zSu0)Sz-P!CYvl!U;9m09TD+4A960A%?vGmOCkL)2@2-`%$bsKo#POt7#{Ci;I33v3 zUn{f8fhnNhGgHoV5{06 zAVq(2a^U3=`K}i8Z|Xime8`)Dw*s5`kCc1Jfsc`Q&z9Y)pDnNARS`|Sv*lTGp!UD2 zI{6Ygu!r`Ib@DB8p!Ua(I{6+s(E4MYM=mD^ zjwkP(BRj}}GsyerNC!D^E_u~l`4~BHDS2|PJU|XyN8UJBK1B}POx`+Ic9R3oAn%`4*Z11n=gMP zubMCSYrOgLck<+X`80Xsd>MNH9QZVO?|hj=4x9sQN-mHEz;Mlu!D(;J2&p zXpPs@akN|wc{A`Ppx>}iZUGKB3|bb-Svc|y0zaw#2S{<;b8_H=5&5nz^KWWhB)cGQ z24;ax9gF07a^N?~yBEoi$br8k?_VT!Z-4`r0R5iDaw~AaVNh6X+Y7uO^3wLoF}A(H z$4qY9TX&2+sob_V0KXOmC-O*6q+!rt@i7e48Ao$F2U=@7@jUBg= zYvfIGpdPmx*T_G}fqL9(T_Y0)!GZhE!aSg3jm#tm+Hq>F9HsiTIxhHi>ts3jfWyIt zb+Q(`G%s#hr}OGTV57Z>-$JaXVt^5h0tMGo9V-ncnb zM!69<;4qL)wqJlBg&gCt?w7&3P4WrluHG9q$paC-t9_HkX==o}8RX5t&jFi~C&-`3 zfusHlymhmD1lSC`oxJKKJVXKxJPg>BJW0~z!1Ks^Pm)iP10N! zUnt3^zd>3EAm@%M$#u73UB|`g>uHk3aq%H9iw~~xLwU*)g#9moT=Rr_YaT;+3QdxV z%L92?9&pVQ$}96gu6aUzWga8W&HNjBpnwY@@V}0Kg*K^^$TFHc|*U-yj`cs1#x*HFUwoO!*&$(oF+fO z0!AP3y^M2!4EKeoH`*)Y{Dtkc#KZDI&jpZ@+?GRzxNHBVdMHkZ1K0f;$}7hi$hE(OdfmUc@63vi zcD_Y!WBFY9_d0nV^0M;%vpg(6>@{!bSDCl4Med2q3wc@I3SKI=Y?Vji{2`C}m+b4d z%Gn*bu28w1kVozF{|7I{YuGAJ#N~&)EZ#rO3+h*j-?deqi;E9=S^NqffdBWA7=J?f z0WzF7#>xxQ207;gCHv`bkQPe3qFwjZoi1Nxxx(vDS{meooWHPs+rYJ5hH^LFgxgnj zggIi_U3MHYO4r8|K(3E}7VG05#r3+4>oH&K9xpdR-VEfA>*1fMSRW79`?+4;)G<*q zvSsdsRPK&Zwh)viv~xlV$6lIUk!W1LVN>k@sUAnH+dCdDRp- zbObnXHqh^xBCCM|4)+(V!UCzW^L`@q?!5o!L0yflO8}cp&UJ~O2MslHDgF!sx0{^w z=bbGzx*dbS_o{rxuPNBoUZZ)NdTZng$eV#au&HXQ+)fU>ZaKEEcd9(1`l%Ynmua#K ze86E)H_gfkd=B!``b5JtTb}@a)#SQ95wuK`JJF&BfqP9(iglG~R(@d4&jzBV!Ik=$kjlu8{bOaI|HW|-0m4NVH9|> zR;~kb9r!--j#~LUIdJx9ymPZ|rk3L%@HX%y#z~f=t-;BG_eSOIP7d4^m3KKg@as`| zkCOv`5|KAm9WH+YZw4MZ2IWG-zYy3A^vRP)$_-;#?jz++U{m94d2k#!@LzyU9d+`T zL&1R)4+HN`Nxpnk5L3gr6ZCFH<>9P5e?kpsV=`uQ?pBK7lS0kElKzI2cS zA13dgFK>|pCrkowTp*VKn}HuzzEECKzR=F&I~K|yIZ&?$buW~EkOOtSxObr>65v2x zFYaF`^T>g^URCdU3}hIgcEu>&4xR zS}Zq{19km3xmYsfKwbZBTr7`~19knkb+J564%GGEj>YmNa-gpNb}yE1kOOu7w|}vG zpB#7r^Cypy0y$9EgIkZ0L2}^VfKC0!$hd0SALG`Cm&h#g;O-@| zf*h#p!M#gl6FE@VgZr1r7IL7j2UjhX^T>g^9^8s`H*%n^2X`!$>&St(RkOUyq=OvT zIU2lincPDT{2Q)Wa@}l~`a3-;`2}*I>XRw?zWN*Yds6aW-~$fZ3Mm^;fPaRZ=d0|; zgR)%4O(wSw!tSbDu6};ca+wMFfWx-Ja_7HX7N~vbzd}-F{wvh4segrRguEH3*Hfxi z$~JPKUQbD`luOBhx(=1Bmm8JW%N@X`-g@~IIZ*BU>*YCepxR@7>p#eWx^C66N`6QV z)OD)vRq|_cpsrK(u982I1NHh!|0)?f1stgBR8^~`mK>=4Be_~qa-jC7)-^Js1{|pUsRKw3)c(}HMwXES?Rv^uX&_Iowf@t%R?Z+NvcI&h zl@@ZK_MeWm;*$fl|Maev+sJ{|-q*?_8NYFz{D>T= z*FQSe$#2Mk5B!7khjsE-a$wC=_Rn=P1K14Q$>VX=v9gpLcoOx=W2K24_$2k+$I5%i zfqTH)>elPJQ(wz^xf1elezh0JR{rvk^B2m)`Bh*0dTEcdhg|KG1;sXSu8-wI`SdqP z3*Dw3l2^_HyVlD+G4b0V*LXnw@ZK1W7l89RL_Un^An)>E9l`~G)W z-oC;HNyO!WT=M|=3-jbdUKyulqs)to1G&ZlYMhGwAC{x7eWRAY54etT>@ZWk#2~ z_Q@u>CN2)-WpThYPACu8GeYjl$Mt#ZKh9sk?#9)i$N2*_uKE|y?@DBGnMJmebBtp}F4D}Twq=Qyc}^M^d@AKJGStXzG-qv%&L zuI3?+`jvRa{;E1c&4lYuOa5T@XTFGaEv`R3h4rTq36VQDV*M#OR#rgY4CJqO*8jf# zM12m0<^7tiKytnR6Fj`1^RHNnp`Q0|QeTgILBsnyx!%>td_XY=$|AfkpuPoqADS0k^}Yp zBAJl)kOTGnqA?+tlLPhqq7~l@CI{;IMMpwDN)FWX_3nh+Lk`sQ^j`<5 zygy;*8&%cvZ{$Ed-$+)=x5$Bd|5jtQyh;w#`?XrDrJo$A_iJ@j%kRj6dVbzrEq@^g z>iJ49H{3j$;q;a9H{3jjgw_HIq+9{zBE~mCvTms z_iJ%|^bB&~NIf5!EEke@PnK%({>gF)Ik1i#CmudIFh$-tMLNiVo5@?J$lc_?bICiV z$Y;obZRFikEy}jQcDgzn!ItkEFuT4ByXKAtH^#0W z-s$ola$qZY|8%*69C#&p)eQL%IdBJga)x}29C#af;|%E}Cz7|$kS=myH+jbl`8+u= zOWr+0zDy4Mck z?4Q7aBkRFCYGoQZa58y!t;{6{9!cI?E6d4&i^%(HrI8$1PhK@s&L9UKN1mK17m@>; z$Q$upTyo$Iz^0Cw@?mnIPklGOpGywBkNT=v@-R8@De}fy@(ekU_fa-=&yuf_1NTy2 zb-27t4*ZewIr3BGbL{#_<6L>095|ZSM>^(89k3Z#PmXosW66PfeWh`pY$FHi^_9l? za;5V5dVR&01#%nsfWx3}f!uH;t~UVhf*jW;NM%=p*)=7PlKbfo>;^V99wlEU2Y!pZ z`zR@p1Ajx_dz4K13pg+dZ0bKsmXHH=e6KoMHjx9jQlC6p&Laov{h+P5AC(+<4fP#I z%j4w0=g7N{mVYA$>hY@gX!$NV@Tb)GA1%Ko2mXmXiS=x9;Mo5LZ(JzH0-J%Skhd*4dryBEoJa-j15Me<&9;0LI$S}Y$Y2i`~CxLCT$fzOk-E|z`d zz}Lw;7Rz7AffN4*-o04n1G)aafxPM%Ig1?lKJw%-@?mn|?c^QD$bXOnUj_ONxGxnr z;4o-eqUQ~Rzypw%u4lC`vFlmD-<#a7XLT*H>si46Ho0EUYU^2|?Qjq{;_r+z{SCIu z!NL+5uiV{_EK4KPBH>&Cq)IgT8t^Su6)G?4@Ce#hm~OkTCz-S4vEgtbu5>g$${F=x|hqHntmzhaC5NVw14nR>=3s zfjZA?Tp_q?vFb+42Q$$^&woBCJE734r02kPa6+pIVsA`?8A_v-ap>=YG z+G9N(``_0(rlyUEf(RkC0cb zch`5;%fFB(*IU19+#vr>4%`Q9s@f<&Q~Qn1exv+e?Ke96jWVK&_8YCA_HL8}InbV; z*(kHg`!`y@tlA{Y$$|F#%qBUWJh{pGW#cB(lSWw=cYY5!f5|Bd(gx0PJRi!Zzd>3ko%h!@>ir~r4UKYATs+9j z;(^l#N+ds+krg)zjEMz@5kO{u8{%5b|aqf4w+g5AQdrI?8zE z`TqZQeoud0Z$SNUy&r;@cz1trp9xOkA4#S3{DFXWZ+3ghJ;G4+>+yewYG!+HpLSWh8$ z^-?OYV0~sr%=SaB@m=}az;%Cxa@${}b|2JDaP4D)Okuo=_R$8t`U5p?#r|$*C=Yi_);=hwT+`gd2l?!-GT)80Easf4NMY;I=G4u8T*TneeAy+?F zPhsA^t_iZ4_7&|u54qZh`z7SzehYb}K5Wm>kC}ve2<;A#Mfy$81UZv=E88>VWqCth zYJX0jET~-oz2*t+D)SU3NK4H21(5500%|_DpYkCOw*y?`hw{q!GEv^o`0jewUX6zB zhFs%@NnSNU z4ygqPP6jq5C&)Z<;7Z`Z7PL!X*gpK8iLwQJz~NwFqHLpngVpDtOp*&6FQEK`b(7>` z91iv* zuT;w(<(4<7tCr+#EKjw3UF8QzalT!xasBpcc@gpfhl5?!@*NjXgzl&+V8dPmu%l{IYwRe3=~hKAykzPLpqt z1NHo}f0}%k9H{rSJVXAX`WbE>JVQp{;}l${(|D~jBtZ_; zcpWpOmK1MRxRO!+8za;7_9ohcde)|qZzJWC!_{VbVtE$erd zJWdYO_X@PmlC0X#lB=#`{#o*Ma^QMCU)VoOzDo{#71-2qxXeGC`opFFOs?x3F2|4q z|4xp9aRWKR5wczV@jd}yQ|pm(3pwyE@{S|rKGh%Tp8K9HUF6Bx zuKcs*Y4XO|uKcs*E99-SUHNCri|RjHKFaOso-O;yfe(}S&z7H(1E10Dt&>5uuamz4 z`|6TXbp-lrlD#2v9}49Bh4Sz?(ASWZ@p1N$$J)0fWm=p)ew+uY-}E;~OY^tBLQ;;UpF6JZRVy5CAy<3rwnOuCnIk9D-pNb$kgI*^_*~B0 z>gHHEfM#a}3CEYV2B!zA-jy@d?^G$qsg^l<9O(m|#d1u4gNL!weJgp$)!)sl0&qJI zaB_DZP_nDozP5H3AJ`ffA99Ot<6Ws-UCs}9b(|mM>SxtDRG&R_u(xd2(c&J>;?Wb@OFmjC~vA9Dwpb^>gDN+vEHo=PzuhVZOfh1#&y>E88#Ros?JXufDDY@>rZbT6ML+B- zERbht@8o;cipOndUs)c(b;n3KOZJdQdU>mGFB^zkN+)-SK#D z9_05p{Z&A6{qE8zv+u=vY32P>(errfb^R88T)!pPbp!BlefG*fAENnx@ux$isd|JA zU^|+tM#x`)P0b@@$!ze(5z+u`x@Lr&L*6<)j^ zgYO*yZ|)kS`QJD=Mz(?%-m>o?6}OF*v%$l55x&1MNRPGmvO*tykL*rV3x6K;^eg&f z<^2(V&odszDcL)Dv2&~h5&O_C$l$x#_#jCh`robK`$qM%B2w~)o_;}btbL#1;8^)2 z;~cQ>GnC>$ukVkCe$xoPZ`9uVO+WkY!Pxls(?idALBf6Csb-u!tMMzos{p;mhraB+ z_>gOS$YbBT4?W`rDHp$foO~xPKJ*$N`m*=jLvG(Oc!&7VGhUE(@wbhWH{#+$ukUq* zKKfo)`e}T~W6KXc<3+!JHF^%~zoLFT7sr2xIMCBC$hdNLj+6OuaiG_FfWEArA=h$3 z9$QZ68Lzl!oSeY8No%jA_L0T+x$r@sJoNgVFZ&$OP&kl)R?kn4BT4v=A;IqWacGakR=#Tw)HzdpkFmGuX`mJj+5s-BGF&!KMr9~!^i z&@*0;cJa4i9W^dK^!ol==*zxi0l9uZ1M;%(c0g|J;vMor&pd(W^7@C$*W>a+uk8-{ zvUUf##)mw1e?rfALB_@JJXC%f7aw|S7w-@Udin)f7iZ6*^7ptn&}$s%W6J|Q{fhe! zl^Jt~+LxCz9=5Zg{ciH0=<*&sROZvKa=$~bd7+QZ3qAdc+YXacBYDGoLHaQBhd%bZ zebCdd=pQEMMf^R_co?TtZYM8x;=906`;75n_D){hbC?|7iE-EUJ1=W|n7xw+iSb(Q zV$FE@AoIBI4SJB15A$>KAm#k(@txtQALQi2{G2>UJHKt?<=&_tgOej4?IoP3y{ zlLtlTcM#V_qJEH*5A$>KATh!1zX>vW-q8LF?Ww=?4vdR6z~5s2d4Mc3E<#Vgz?W8mJjgh|&Iz(4>IXUbFh3^`viAMw;+_f8Oh5PilhB@eJ5J!c z(Hhsr;ZlC+=@;Z&oc$Bznz%U7YaHlf<3LZppy=WpoFI3{#esesk1x>c`%c_(r&J#3 z=@%sI`_jdliSjRTaiG^Y(8tDso_;}UqWjJZzEj9J?z@tu`hi}ztA1kqc0o_SAnoF8 z!}9}iaiG^Y(8tyf^z;in7ssC{`jz6XHJ9)7)A?;E7jPYUiPF~!Tkj|)m*7z`cCok^D_4cTJ&iF8UCodjM z$d{t_MdQQloxE66EiXmvL%SeRZRf?%$DS8MPrssHEkBI-d!F$y&QN`syx3VSzlhpr zj1RMS^5ULq`E%4hYkZi!lNa|_%h;nL`!8pFn7xx14_3<&QTw9tVfId5teGs!qV@^n z!|a{BSU*`#j@XBGL29zqFZ8kX3qAdcos;F9IRDIK{hn(c`t4k|IG~?%9XjuWo_@tW zljX8F|E%+eKGq+4`W5$2mXE~w=Un-rk1ap+^eY~mEO*8E7o9)!vHsB0uUIoh9*_8Y z3FBcsmfDw-7wf0U*Q53+0WzL%+xLF+_4wXHJNGL`b(7orOpT1;_qN^o675DXzPo-} zst?3r-r_dA*DEf68ghIXI1jz$Cqo{{`2|tRzXD7iuIYowvm|%*37&ol z>)0hZS%io8^M(3kf$GxrhrYyA`D9!prC;)BPP}b=-X~Ot*F14fY{Yeveq= zzl!gFMB@~v>$=;%x2Ma1%B_J1i5Yr+wr|=D`L)^W!XLjstZ`P)khdan_HCbG-^bcu z?IXyz?+th2{-A}}p33hiL(eY==AqyHHLlyb?+IotetypkY1MwnY-oQuC*MCqeseXx zYv{gn&hHxQ_rwm)kY9Wnal-GeCTg{u`I=fel=(yZRIOWYt(EawF81yM`W@`a!|Pz- zyenO+!epY#VNjv*(v&!3xH_PhTpH<#oI$_W458KNwT(H8= z&&`tU==a1oq4$9N-Z)Y9iNm%0e)@3j|3tQb57_)=US~Pn?7YKu9Pokc2Y%*o?S}!7 zd(_V!uKkaw{y=^&(gSLq)Dhax{qzwo&kTh zJ4nyba{2f!GskT|H%ET)^LPyP^rKxR-@rVOH#jWgskype{Nh~Q{~l1=2T->M$niT! z&9m|Vc|7ufY6s*mNIN}nGxGp>d?ISOGI$j{rNoZOF%t`iz`k{sij& zd~<=EgYELbxj%#4QC3et9w$AZ))P?UrH;1x0N$eYRE|OMX!B1jG&`W#Ep+YJ$37|HW1gaFwTzvH0FG#&gG5J5Jy^ zUbg!f)OHTJmIqkLwY@;D?H*Xhy(QM}Q%hZYUh3NOQrlk0wcUG5UA;LwaNVCk{(_9t z12^k-F17jq*K*~STDwmybK5Z-wY@_hqLp)*EB7*2ZpX9cpL%hbwr4MA7!>XM%HCV4 z_;~>IIuAIQDxU{HuJZuM%jW^hT|F$f{(+Z$=y(Uz{=t`j;O7Iie*m?A0JVPrwSO#M zZv6vX$Gh}$&F=xV9)TJMsPTasKO)!o;2IyO@qrq@dAW3<-WgB(UvZUgPY`0tzLV?& zwLb!F+*+-9gS68FIY07%RxZ=~nbo!*fnV4CyV~_L<3W0jYaeT@{bkn3f2!RYXFr76 zKB?!p2(09~-yzrb3M}KPwH6o1as-*RviB+Wv$d{2<9S<-H`%q;Z-M*;#kE#GpyrLB zjTg=za?Jo!tC89uL-8UZCayQto@}te$~7z5w|P zvd$i;c0jF1ApL`)(*t$;Q^&gaK#oi4A$*_dCQ0oJz`GA_QLQlJ*vp?ui^Tya|{up_gzlZPba2y6| zIekXiQ0Hgq4OS1{2CIk62D3|Vw75Xc2h_Mg-A|c~wqJm% z2Wr0p>i!1u=jS%M4^|^7`rHG*0T`<8<8f zyyN6B#0ydlS`KejL-~0N-sW`;ZeG{m=5-BjUe{pb z9Q<`0%36NE*kJuU)o9xrgE|gCuKfpC$+cfXuKf~N#xsp}9825xyFH+dU&q^af$MQB zW8dxef!dFOY6s*m$T~f6GwT(o{TgWF#_@K1N}b@gV>s&Z3;GbPoF}+)pWw>vc+UJ& zzdS+rhgUQV(kJS9qj&a+@#l@u>v`k06U)yV+fKCY&75fa5vcnSsK*l^e?Cz6BT$bg zKs}xS^>}jkiMAiX^>~#%(Y7DR^Hd+Gae*2asBwWB7pQT88W*T>pF2?&qg{I7+CI`J zx$)~H8@Iu2znx_9JSPX*IBD{r==^}TUry3;1*wx=ypyGg{V9F2^(PN|DEjG;VEujbc&7lsZ*?6Ky4R5i+hS2XHJoGnb$i--s{lvoZ{-w*=J9&{E1W5 zKXvP=x}Uv_!&gp~JkEoYNlhnS&Uk5^Vc=9N2flA^$D<}Wm*>Oa{Q0RSt52ZHfhtco z*?BgQ@jW1asf!)=4C{6`*?L3nG`B8??;8COFD7`!c#ztn^Qe8Rw`l(42Dc8D-lFxt zZ~GSA-f*35-}PH6*1NXYy4(F*D%Rb$=($(=? z(RD4_asQOo9l~`g*fW0Dz!u%EmQ`C718=LXt6aA=K0ow2fAqJO=Z9SLLtd62ye$7M zTeZIZ>{i!5w%Yyx*L4pde|~YR)+rxwWEV+xefJRc*}T@Zk9*C&2`*n`To!OzM%oqLXc^;cF@@@kH@tG=xLaT z{$bUt+t9il^z`f6)vWni-ZJF(+0Vy%khkj0__)w(TztR1EbitrtvWk)|8g-WD_Yw}zKC66xq>Y#MN84HEpE*n8dqC~iK#iL{ z%e5o(^T7E_z36z(ux`{gtB+T<>G$S?#MxFKQ_t4z2>Y7{Ik&5nf8N;|&rhGN+wTD{ zd2J-d4YTt+!yxP8J#YFjUKl6T=l7f~PtE5#HunauWAwTBMT_qPsrP`IXVi8@FJTyX z+g(51E;pkbVVqJPr_cM_%kq%#pnbRwdCPX&uIzT#AGf=D-0u3L(-*hP4Ff!n*lzPN zAn#B26X(boh(~03{nR;f0XdL)eD54N`6s~4IdU#BcaB^}ES@8e5>w}jPfVXHPZBfd z$`^>)bLA#t?p(Q(m^e>rRgT~1x%J8ObUVm5{TSndcb>dOyUckqlI6&q zC)Eyhof2HvDS`ZXK=n(UFLP-J)c8QP1F9WR?NaBL9c}y1ms4?k^NWrjJYTN- zl5w49BrY(!nhSKC^iz)4U!eWOPdmQt0%>8K>;>`?>j(Jiw^-f_q#pOzd&E~zuRtAd zf&BT!3$(ncQ5R}^^AZ&XL7&!C-p?{eeUyKMXh z=Pz}u;~9r%zgzk_zJ~LVwDHpRwY^*Y{LH(p-A3@JJqa-z|RpWaJhp)7j^-nKnyp(UC)#ZDy_OsOP_o}^@b@#soe*VKy_slS&q3=(Z_d~7QlM?A>c-^2Jj=e1e9T$_#usb8AjD>__t zvHZMY=)T|3FGyXi@$>Z;m&M9MLyrd*&zbCJh>o@{A`+I8sB^uXD83x`ZdY#+5?h^UB z=C}I*JjlsQ`EPM~QkUBJmv)%BRL8&6?n~9)%Nhp7OZB?7_tvHIvc~0AY?K#r@>1N9 zms$C@hB+erbBI=i0N#?kdY0LC#nG;#HPEf;LaR+UBe2t94%M11V4KzFOyaEdn8^8f}daX?D!Qyp5J)jTHiqa$hE#x*H}G- zn7+ogJ4Ejq+ujhf*I0cgK4A3?WdCWa`GD1T%E^H$um6CXXMe!Xe)T>k4^{_9-+>sB<4FPj$F$Dv~pNpFXwRT4e|HqC2nx# zxS^sPH@I@#;L34>D+k_&xsrKraOJqcmBai4$gLbVxN=xtFXwRT4*62teo5?b<=9bH zjsSAqFEu;L_shH;wqMdatX_axFF>sqpw~kuNuMiEafj6pP|E|<@&L6wKrIhY%QNajn%_%&NcWF-_J_*vgG?JQ9cSBc zu@t``^C8?#h<5)O<&KNJ1W7mhZ9De#EdVWddd1dP2kEoyL83u`)Y@RpuCi$z*A9z(Davu@& z`ut$cO=Zsy?wog%i+_`Dho2roou7m2c^c5JHxAkBc^c$;eg$N^@qoIHd(BPqE3`Y$ zyUDE&Ti&2(<@8hSmJi7189m@Go?ij^3%qtakIuE*`3X?ZPk?%UQf#;S0P?wQKha?v z$mh5HbceMQpw@q;!~B7~57z_o=VzT9$op+Qpvn_B+xa)p&L53?;JlyMPu*Tp;_c2fTpu;>1q%e;dgA<;m3!sCGcLOF28>GOd4S2d;KN+6CTD&7Zn;r}jH9 zV;H1vv;Mg1Hu>zcypOV?KSIxSg?#;O@(A?-)h@9{Y7 z^u>=^zXUR$2h@I<__*tbAGdy)avZ4r()+mWSD^0K?8nU?sQnVipPzGbp!Q3k%2T(y zb+OxRJ016c+V9f0Te|{kJviJ_N*9QT0MA3tIBT6B6K*CRck>Qi^xeg*1&E#9ed zJfQZ|)F-W7Wk0F%w}IMEf!d#d+V65s57hn%R6S7jMW+X9zXYltsQoc@m-WXJ@6vwf zr456O$-VpTl0yqa>mcEAmU^A{blz1y@7Z;i)m!c^>yHuC{s^x95vctUsPzog{s^@C zwD=yl_QyBxl7RiOc$f9ZR7Ud#UdGi^Mz_n)n%o24oJ0RBI(_sagW&pzs7O{wVwc0pT5WX z2~f8;!Zkj)waa^~-FnUr$n{|#sCGcL%id${5vcJZTZP!5E&p>V0K&@|}9%q2suB-2}cAdD-+I9Lq%^PIyvv!@k z&)N~t_RoFRt`qmGKJf0>>k2+lw;%XBUWW$qN34x-KXbpfN2109p7KNNx17m6psrT} z`3n*cSUJ20tp5PH9Uf5oPv!yZKR}&VW*rCW@vHcN+iwrJ{_%ju^%D=;b^)z_JZR%N zIDdZnLDxSXw0ethEjPFxFT4j`e{gmYu6E#RmwnLn4`&zQY6ot|y9ZtWaCW&Nu6E#R zmw3qakB40Uc*yk+Cr>}*`o}}Af51-r#Y3)tI6u$X0j+;HyWB(8zJb<196DPdse?K zd9?h!C2fydc`}b$djayjGCq*+H}QZkV;oNHwtQapQTZ8oka^6?ao=N7osT=tJ?4&c zkI5M7-E;T!)ADsbR$e~H?Y%IMm6vbVV^+T0WA6Iqr`&a%Pr2(jpOQfyCsLo%>o|Vq zQ@R}xw4|eHyliGm%ZWrZ@9{^vUgt)*<89#!R@_&XiZa4CWas5QM zyFatr>Y=7vzthTe@4HU-!Lk`55@D~zw}MEw;}o0Bl5P??im&*}ZFi@WD>YtKM!&yZ_-25LJ6YI}}grTm}a%%|U@6?*zb?cXU5<=UQO?4$l|iCxxiQ@gC4)bFzP46f}t?d02bS$p;z z_jg%)2G{)o)cpa}{o&BBkcXV8`@`w|jEmd3%i43+@jbh&J%iuN_MCI_{kyC^r*>O= z25LJ6YI}C*0kxf`cUyY~svS_g1WHtX%+A-}#h& z@4=67ekZ~Mw{h<&Yfm|6zu(16KkeGt)2^L8ZSl4}ZSkPj_~053T;pY**7wl+K;53i z=UjO|r||-Cy-z;tZ}^^DA&2*MT~}0#>tr5}!9a@AFo!?C0%%ETEm24$0LI za`St}<}Hb5A|13y6r}IM}sM`&s z-UITzK5gmebi51E2md_UnFrMSvVq!fyys*K%G>5Y=f=P1-1zsLoWt#a-o`&eA3Q1# zInl;H)BCyStiBRouaU$E^4XSw{8vjggO=e}U)eL%iXHYk3<+DrP2)~_O{ z=ZpWZy*H1uqb$?Et4_MJFBQ^ZM~Nnm<64mf5fw#)3IbL%X?FqXu*mjADy-$kK$LNr zg9Z>cP!bTu@kBc?fTN%Z!)B~tA|Oo&nxLpiMUu!O^1JTqy3grzI-U8v^Um^_CFhU+ z_WkU8-Sun*+3u|ipz`&7FZb_92eZ6gF25iB@CKAOsC|9Tv|s5B{c;a-pI^OS?m@~8 zv8ei)p0s-f_4<&kp#EQ!E2QtQTM@l{IDH@XeE(m&qVv8=m{Z?}xsA)s`-&_)>iaP7 zxJPm03gt7o&g=g=hL=M&|3&f+4V~2{OhB)4wp{YGoACU?@VWa zd?oI=$gl5AXZ?EZr(SZs_J=p`DQH};^!H!inf{d+{P4@G>-D~p{*&HUK)!e2Wp5$U z9kPGY`%2@V)PF&~uYmIJ{wnu3`G#n@`Acr__naH#uYQBxS3vqJWuAj}Z>W*w2D041 z5h>bb>-8Y=qZ}j<%8`aLs z8`aL!o0M*l`wv0;71>Q{cMEP}y@hZS>$hmgJgm4W`si@=347BM2KwR7?3?!~z?|(1 z=9XT+uX4lUm5MK~ln$f$GpZbJ!uKt0Kj04-Ur2sHxk!Gfb~W{f(IvyB1NKZu58Sn< z1LoY15A*i>nJqk~59S@|oBl(VN1pvq^#C$`AotmWOee^6E>LCD`G-j6!(GY&uU^8`QYOn?1HO8=4{b*6vmkCguMNB+Kkv%jz3?CaD(t=?GxKfWlHo*ca3<7iLd&#$xR z(QQ%P>MgrH`YZIWBHSKjW)IrEQF;A#?px2x+oP|UyW|e0tDV$GU`~Amv|k?Xp!@WK zJDC4azk_;dQQo2UvhI%I?`MZS%VjOxwU0wEmtLUwTjjD*@%1Hls$85oX#NApasipH z>`s--ygOMgdHqi5MIg&1xhr}JZV)TdyHpM!%OSf<s*>Yuk*-nw&t9{G`}5a$zgW}xyn#RUi#1G7tN!P#VSe)<_XTL_wkZd>U&v{RG0PR;~KUce{=S z?_1!{Z9E0pj?#P79zZ)s6+o^R*YELue2=e-x&PArgKT$|`v*EUX{;+dsz-4 z+)F*ANbjS0n0+7hkL~yS+~@u0zRq%(bDx*Pebmdg)$fZQyBFyNyRpuhmohhMoRNJ2 znR-d`OVx85=??M*_M8OmSERqB`=TzU%YMmphK5*FG7npSIsEq|V9)2m7PxDFF2J1Q z0?a$>_kQIo+|T+b8ux2{0(>Fgj|a^&&PUuYJ*~W7@9!Yr%aZ}m-yoI00e{{Nc>V@d z9`ym%Ur`PyK9KQ&Rv)n=JqSH2UMP=m~MK2!VZAUz__nn|f8zSg(5@``1S=GyCSfm@uD(=l=lAUrlq9?A+se#+O$zFT#U7 zmzjf17s&Gnp#1{K^LQ?sJ3D`9=5|ifsC7)a&+8BJJ03=^w}ZA{Eic_1wDbhdhoZaKe;)Gw^N_}sQuaB>@Ii(TD*Rtj&eLDfeE|91 zoyk0a_Wg@IxD4_=JNdQ30r_44+Alri*R21L{W`kD%5Un%;lGEHY*c&b+1PncD$Myk z6qtVt{--s+hcX?9O!3Pzxi_jF24#+4FxS4_je1@}Zu;Z%5;DsHrHx`3JR|8J;41>fO+GO(bHxRa{m@cd(iBQ zO5vp4kFmT$@)+y6C?8Wfu6u0w?*PG`^Ob8K>zuEIx#m?L>zuEIIm;LBJD!spA5%G` zRW$iiNGE9JTY%g@19H9)@&>h!&E?GHdZqGeBg-8!%N?{|(Wq2@>1LH5sBkx{ zd?2&@vdt<#Q1Q7vWR_ojGs8)jZDu)z#%9iA7M0Ay*3H9z&j|L?7dH>l7dNY%wruV! zr>;M#oU%VjUj(Tyg47pX4j}bKkoheC6djML>m0lp=Ror6Pth~RHG=E zdP}!OpRoL7+oGRaen7jgxd_{oACUQJY*T(f<_BbcK<1~~ru=M%xuqL2^OO8p=9B-d z{6J=YvOg<7ZDfAJpOv5F3HGBLH2ovbp74EVPpBRs>)g{5zVGY_-*@(e?>mER{(`#$ zweL*sit-7y&rMIT9fs-&?MJSjqgyo&n7Yh! zkmU!OeF1VjFP~C*w2|&0Q(p(|S5$IeWKS#o3!Y{=LlBFG%)^SO`P|s>0*afO^hJ&Z}osK5bFL|DIPSU+dM~KmwLWJJ}9kuIJbYrn6{_ zV7iK=EB?5R^WanVJ_%YlMJn?qbIA5xz#_PNFj#zT{HV)K@_shh^IkcyLvD1%``wQC zK&Bf!-sT~|^c;K6cEz8=`lZPhZ(erAS`YU0CEf8n)1$#}m_7_jzv`Czv^(bfROnWD zw6T}^6#TKCx>X+aZk9)09~tvrnQ~-Iy&AM|ifW|n(@`<+n+c<0zAu2Zua8oBR-;r; z;8~_`gG@&hF>J( zn2vPDIJWPQI;W0jzuoRVJ{hm}-ZP&4+vl~S#nZ<#UwJk@J`1lvM*F^OUUwO^{RMe7 zUi}fY?+FHw{V|*1>>_svTfZh(B7wYM@+`GH(#1exDWiI=By z_GH?(@|#L-<#*0xr6){QK0)=X$+3Ok2;TvceSLCl_bTKd?LqsVPXLvl$?K+uiVxKDaH`T#pQ`6V>GmMc2ZAiWYHGZJdWO48c2$1{ z^*nKgU1RDYja?NFsB^x%dVY6}|778m?ymB1K>AB|6YIPAIJ#TR{XM12)ozLx8=D)$G{U9y*$?G;ncF89*&0p$1va=c3SmJIS{sUG_o758o&7cJf^LhivBQ4A9zD z>Rk8ScpT(bc%|f4cpK#}ukY*qXW!Vq3vRM~7d$WbRXm`bGYKH$*|aai4VClaY4P*g z2U75^zanQ~gr3?O6w)=YV9RQBA0pz#}TDpt!#VT)S zUcETxzFx4~^k`7y-b>a%FP zO#VUIS1(h(z!#Xm@N&j)wD(~E$Q<|nv;1-IKUpL*sjr2pGvm(hBuj49)AX4t z?`&pl^Lu$4&pOxixtZ~6Uv7HO%-H73i!d{``#|$HrcB?=nCr1H=Xz{I@#o-)*tc!8 zaEwp>4&i~e4x6r0dO|4{^;am}7r%mfb5qX@FgHEAmF}guB!}(f6-syYiugLL`v$Q4 zm!jGCu6adl>%YB|_lsYJboOq3MLY{~NcM{}$VIlF^3z7GFYl-Pz+CIg`!QX4eZN@i z%KI@~leMnApYpS8Kk54ov8d!PY~7FVajpEo+}`V2`RSUa{G_vD`{Hq)&GPmG+2)1o zv*I(%9Avv{$h@zAmih%`(>roE51@S~IZtNmd7jNyIN+xlzMBV`_vNz{4rGSo<^i;D z(oM7V9$JY-eSfc~{bQTQY2^#%Cb#mnbbqg>{k@*{_j=mj>q+*#Yxa-tU_HGuKA!co zzt__%y`Em_^)yJ;(<{B6Ug`DpO0TC^dOf|8;o`drUQe&|dU_?(85&}d9iaToKOnaK zR;~QN+~ih%`VLTj>IW!4jRTY)knIj+ySwOs_}7-7H3!7!T7H%vp!}2vC_l-ol%F;- zKakmvK(@Q=Rmu;@b_ZIxImmVgvL7vY71J4lSR@B3KT{8kJH7`F^N#O34MQ2D7JsQi=%DnD&xejqbHAoG*FTKNH)AJD?Z z_Y;&KkolSMYNj)!BECPM{H%L*-1(hy$*ua?_-f@Rd5!XuzDD^0nIDk(nf#jgxt5=~ zuZi!l{LFlf@{_$r`KiA~`Dr8b1DW{&nV<4C$`8o=fEI2JvVK73XVYt#?of$E{k6)^ z#jlMwx3@Q#o7~FJ($^|K~AYrX%-zIV-Q<5ydLCLa|4n*Has-hU4A{&SG` zpFyhs9OV7yAn!j1DL?gty#E};aC68S=MM7za}d)R8e&n&U)XvO$BSnFY39T1`Ca!d zAjY%7@4CN^`NQ`cXx=yLb@8KkKD5jB+%M{{WBz+DdR_bs@>et@=au{0;{G7-Y2#b+ zdW8e>`IEg~;m>n($g|8{a2YK4oN{;lZr*r(JaHt}*GiYc&zrmCV1?Inu*Y+7ywuJg zWs-a6x*QIUKaM7ugM7Y%JpTk*IrQZR`?z~>%yUpMw{uW=!|nS$e8_*pba?n{Tu$EL z>3D;u;|=l4C)qhD$-OgO4(={@caVQ*>8-oFi(D?<-CB1C`8B)1UFGgJOD?iEsy&4_ zDu0bPvVG(r^#hRk2H9Ug_Lu67YF{Ah8Du$Zd85h!GTRx*e$zdN?I|Q;QO=>h6xPj& z?VLh$UN*qo-z-4s(TDK;wWwT9-o*FR0;GNRCO&Tq zkaBnvpQi>l{CF$eId4(8)m!{M{ZKvElS3&7@FK*Mr-$mj zJac={-qQp49kZ_=s`vDU+k-aG8o;?`UmmLW_sZ=-n`aH+LfEH=9Hx2uOf2e$#kO7? zEQ3-%9_|!<7E)txA7*tLr6_1LQF{hn3ggs`NM99%TB#8D?L-Rq0O- z_xvBO^h3U#`9ECg&)gnl`oTvm{mTy5`a(l2s>4G$up2bi1ON`K$ml>Q`B`qND51DSsCA*L@=`h(kpEPv3x zTc0;FrN4B0km(1nG5ac0`jfey|G7#(;T z#ee>M#ow5({Fn0;Kgj%p>Ywwy{(HTCdcFR8)&CasGTacvqS5R1-y6T%;&0WzTX8KBql?n48>+|NQrO{lCZS z|2>MolpH{g57m3T{@?5M^Iot2_j><-FT)K%EE@0i`hPF`XS4pB@tVE%d%ZV480~l3 zZ%nd%rSD~W`l|QFc5g(Hyf5ZHcJKnEJI~%1A7K04LG#xK+WMTyP5XZ^cjfy$A2P>x z3gW%7E|P9~AJc>H6Ocvvex-Bv``M4TODF7^&ROs8Oy`{UE1lu}&?lki*59vmf?r|$ z?^ilY`RfCjPOxcz74!1}r8D~g%>(!S7KmKkmLf#`ANG=jRyD&oQirygJ77(+vNEo}Ujg-64oY z6baa0};QK?fqD$CsbmQ_W8Kf$8meRbi!Wky{|K!bNal!_j!Bo^Y-57?YYm}yZrT) zecs*&?bY5Fcza*q?R`P~ezx}oOiu`6(OBT+xq#2V?a~Q*wf6->+Q$NK9}B#F9LI3- z>^N^9$9elW&fCXv-rmK$ew?=tcV8YC-^BKQoR{x$-ad|F`R3Je-aeY)A5Zt`g5#NP zd{2Tb8pnHnj_31q`}`d5`8j?_evbG29Pjx#!Si#1=jQ~^&k3HN6TH2PdHn>>kGn5V z@cf+M`8mP!a{}ujuTJp%G{Zm9^K&B89fDXiPW1kJBA>t8_umt}y~Dm^d_U3K`-$G( zKjiKGL*Cv$6wl%K{vmJgAM*A-Xs`DEAy2=|L-`>e-{BAX0KR`g7U@Y!=j@aCoZc>- zuvdFOsWY8(PV)AClDGGhyuF{~?foRBvy{I+P~-ccz1sW9-ri64_I|RD?&G1j9`*gvnOm_%k(Kyxfb1LW4Z=k-leg6&K-a}_QS{b~(2XF5Sy}d8=_P)^D`$BK;3%$J$+N-@U^z_R-lnZ@) zU&!=?N-WY3E1k1HOucNobi!Wk{llHUnKG1(=JQ>gLX}kT_MBJBgCi9c0XT=Zh27M4T z`@UIc#Uq}9o(_3E%DVum*SnmDvtoX43;g^GYFM{8D}EU60%ZH%R$iW^aR4;`ChI<` zvp5f%ZaRzU43$`yLSLvRAF5BC7>4rVaecrj9<=%I$(p^7S=>}QuOU{k$e#HW^?gJF_9oP>wH(B=s zc7~TOQ~E+fEUI(0Ut;UI@g+9j*4!@vbCa8T{Nk>H=`5;({W(uRqWAXfBkZ3!$o*Dz zmqD9H$xF#a@=^Bl9OV90ko!Qhk5Zp2>K|n~a`4qF@!SUOy(@q`9|_ugbCG_G?XSo_ z#_>F_f6V6xKE`o9FI}!+k9ODxT6@XE$7K)N{8e86xa>i`$5tO#{K+TchtI_N4ru=I z-3osX`Gh~GKH<-)LDF6Q6WSL6+WwOqq+SG?eF55hJic=gzuv-4&Wl$vp7Z1`oJarZ z1?REcLtQM&^He|U&Wo>ZuOFD3+^V0A=c#nFGjvVIzpi|TyU z4@kWUWc{QUa6HC$9h5JS^#huo6+oR|y+H9Ni&a1AV%1MrtomszR{4WAf0>uCxB3BD zKiMZ`53+v3CuI+^e#%cO{_2yeACTpqeoD`0kn0a-sF-GQthko5zy zeyUHYen7g*E>!(2xRB)@f><;zl)n`h#{E`5&2Tv^5r^|Fy!xlTJ%5_@nJ)V@-Gzo&RG(IOTR+Wpn^yW@ zZtFO$@VY*u`b$3(pLagmZ}^PwQ`%*P=&J`*2n`!Yf9?G`kgdK0$a-$n)S$yf|6(4Bp z9|2^znVW;Q4iG>yH!55Yuk`TNczBij1DQ^c;U!;CJfO|%2aw@`3@?0v>FZtih4^Ha z+ZVk2zToBOa^-TmMDI(W%5RC6-x4psC7Nf?mMH$<=Ag~1VuhQzId~e&Pv!x#!u9Y<4{wc!SGhls=>%1Nmw5SI zqWSCO5~UMV`CY>F^)9@Gnk!3Ur~4<_kB0q-SV%*|6=YS(|__+?~h;Q{)+&aYe=6_+fJoS^0GHxnGU9nR({sb(sfHdb7ewmwlDbx6p7d`da*Bj8D_1SuAber3+t+ zc@Ja$wb<^ro96d;4nY3#2_xFR!~Qj;ukkgeI|q3m9%$|Y_yp3Gu2MXqlpLmB9^XG) zyvgN?x99SXc#HJ%*uH;0Fza%*t7#ie+JJqrmvf)=z&yC$&%WnnyS43J(#waW^Kwt; z<(^K3pEneq(fk{g?#n&hN@pk~hpAV@qt_2pUda`n?kk3*`wCC@6+_Z}g{K?t+tOVG zH_xwNziH)X$rYXXS$c)?lYL$32Gvi$?)~)ZvJYSPcK3CjKft~Gv7HyoodMMN?d~C4 zIC<&eRtgXI?W?ofC=4`L?uIwoP0mvQgweL!$qkg5@0chhB z?$KBNK-NFlgZ!k+l#bAl9JXE=A2VFKDo@vzA?Zq%db?QKk**?L>g{6bkan@u^9T2B z?P4Hb+L@2@mnt9WGNnIT=Ivmaw*#36n6uo&GH(aVyd5m_b|8kvGH(a&9>8yXWcop-A7uXo*)Kt+dx6p!g5sy}y6k`@0w#-}e6Q?jftcd;FEh zlU(cdaIMlEu2nsN8vn2Let)g^`)j@5U+ew;TJQJQDqWSk1J&KgcS-e!a(}D-4Wj1I$fs)%W!46>fID(hJVA``SUBv%6mX6SBoq)D>=?{FBcA zf%d+V9`a8N7x&ncMREhr(S@lu#QWpv? z^Ncdjvzxr0Z&E$iZ}M}JH?bZI$his~@OegVs)p@}F7HxbL3rv&GcqCNr0vdHsj+sd)Yw?OsCT(MX4p^NgUi>j1Jn zmF~aE%HT7c4B$A7V|o3@DsPbI*UKNrpRjO1o@1yy9MHlE;B|kC@&(ym!%q|sNPF-kvj=6r z((PBe{mQtP_A6Bm$tvX&7*p)w!<(0ZSaL$X6ZjkP0t%`Y1Mw`rgHo_{8 zcU61@+!qb^53+rOW}a6b&KAXM^5?AmfOZZzuivV8mfWgzLFTz$kojw~XF3{khkM!O zum4ug=M>egYUd!&O@i;T@(0-;Kx?;o_AkDE^)GBkMg3pA9o{DY$!)%Va+|`>Z}WMl z+jRc7yiMnUL7oTBZkM}xw`*Rkyj|@SWcjVVUH;o-&YvZB$iC+ewY&NqY8T0!aToMT z++$9Aqn$&>edh5R)N7vI8Sn8tdyl_U{S#z7{dX!J$h5ESRC@$3v3!GO9>8TRhr8r& z-d*yS-R1u7Qu-^G)1Ru{r>nictd_r7tC{WqbLnrZy*;{pzS_%eb^JYxud&+G>-PO_ z4|CdAZob9Ch0O62WIITIrgVY(*m-F1Mhh4G1KaD*JRWz~_?ef>&*D$t5BFK=`7J%a zgEH;wCC8HjWWP-AmiwN&-T&Q+KXdbWcY8R4GQ&xJ?*4wR_RuDCe5t$rlAp_e^>c<> zfQ&b+RXmNg8rQ&&bADm1%As7V@eky<2Xg)aWH}}4)IP&H-H!ogcCQ!6`!O0a&q4MR zkmvS6wWD>?eaN20+$Z&tQ&WnM%f9xKO*V#RC z?+l=wgEd-TCMwN$u$YwwL8vFAi~pUP|AeQMWjvW<@c zGVcYb-{<3vyI%Wx$CBO7>@0aRFFlRd3?6)GkqWq=$AEqva2kL$9*D_DU0NOcsBgZF@Ywm;C!(@mRLE}`0l_5}T7_QUkoYE6hB zkNWTYJ>qxqXKmi2`km?lEHTTd^EMq5u!XKZG8A$2a=%zO{FC&{hw&)@9n-mLmc@Ic+yv`y)mwN3hSx-I_WgZ3V|Eq>Zbx!R`k1C{=5Di_Fn zUjeQBaF2A$-qN3kKfC_@XK!zRj(<)4`_FP;x;e=44`evW6Q1rT{NA7^{C=M&eB5|~ z;o-jM7O5vg9*O;F0i>Q>KB0W1Px|xq$@o$}U!U~ntIYH8q=)mQ+(TwQ^CvZqL$>E< zy6Q>w&(b;jDdwluZd1vvb~^`3u$4=Ais2clM}yR(!KOX+7sz_PKPCMIGWF<%PsNv5 zJB3XBrSX*V1Du1>5PoLQe1gm;X!}6|$b3%zi}DGX`ON;JaT27S1~Qx= z^Sq(>0?6kiNc&Re>88IZUzKzAGaQ$j`DmuUNS~3OHtU&AJ#7v)8{t4J{^8sZ3K$ickzq0&s-?ij5z-^xl}^$y91?{$voZE#c~Lhb9Q&l^oV9V3#sI0ds{rG+sk2O?JT=rI2~Ez`U}{U zO)n|JNanxE9I`#vi^j;BjpsSI&YlY(=MTUeCXB#1KeF~ceBv<&@4>jyw{|4U3HL_J zAIR@%fP9{S^p}j1Kal=Exs3LD8Le^%qg5^-%LSyq)^HhQxs@)1v`@y=cn>=`3*{9+_R~z}IjC_@ z_PB>yGRXH;knN*%bCBaBNb_W@+=FaSAk9-Z2ia~wGfx+cWxhjj&K_5L^MQlyqnZCA z9anqb$Ix$PjjLUAxUGYmgz+aESDW`yn9mzmv+vz@In`_kQkT*s{39mw@rknXa{HGYpJOs?&L z62Sf1HPgq8oZkdBK226W8-t|Y2AO&rNWCrDMfEm$m)hs7-XOEyK-JqWtf!FeQhR{) zwoC0@!`2(zv3}%l+HacmwoC1^ZmxPW$?9zvua_wr7n3PoZ&SS9rnKx;Z&N&7Q@q}$ zc)d;WdYj_)HpT00ir3o|ueT{)Z&Paay^6e2cmY(sd3+yPXcV$n_-ox_B-GO?)ba&ZQueYgQZ&SVArq+0$W__y4p)u9#ZIG(Bsa|hWz20{9 zdfTVBP2(N-0k~_8caS+g zf*s={Wcwb)0LXFhHzrAL9|z5T8ROev*3n}AwefYgTHk%vFT?;+&j8Jd$t$shW;D5| z?^d(>R-4QrTetz_`~*mUp!U;B&KtYccs>fW^qXw?D?l5$O}6wKIgWugF6Gs3wPWEf zfSQj~cwO=CEWbHxcCXoYjkYVta(9hSVEgz~KxV%HRgUTx1CWO;pJWe}k28QQACUP3 zSw1co*&Zq%XAZJ_K$Z_ke;~`psprt#2*3a|C9x4Y=`o6;Hx@8aMf6hgF z*6e#o+m%CoPxW`Oy}uWbSq@-FIY1t^9Lhaa4$c5dAKg>=fy{CMEq_I_m&(DJgDeM- z$Z`O!-{fI0l>^9f04@r`#Uj~9;Z5DAc5r)mFgLjs-t>JGUMBYeWOxhY zE(Eb?cz7%JslBB=JeZr@3U8%{S9y3K!|Q$y-GxLfvgas$^Pf|DTYGpgH@OvF-*c3{ zy4(kl;VqN9&=B|C^c>b(ypNS?6dl|hMdzU0C+`+TvmpPb7Kg80bJ7uS#Y5w|_s7vK zF#p&QBcjQpqUg!PM?`Apd?Y9aV8MY%`4tWD~c9U-dzqr}-^f)@^iV@LW z*t50j8`vj*&_)wC6qrsk|94?p<>&+O{&dhr6E_rDjqX>^tI55bM-}An!a=Lu`+WBR z%=C;!|`{1^LF|!iBlQWwN4HxI_G3v9!i~x5{x+6jcbX zy&SK2@}whvKO%}A^m2SD%GAp78;IbRDN*zSjI)zrX60`3ugt&8Z$Y^}19|jP@o1DA z%X>>4jd=|UY^&q~YKo25ckNn>dSH(7G;u?b)}r^IF7DdD7F{y~`??O=XyU_Pw?Of; z@-}_!uHIU-ul$*~!OF|tSMNHb79Bo^;qe8xC>77@wH}Y6i7LpiGXK*o)Iq&+0Ot0a z=I&bMIK+QZDV?jgcsiBLXTGjvMitB-d_B@XG<=vVd}gcVz7@|7!ozo-n7`FMBa}aX zf3G0F*YZ0w9+)d0f6s5WvmyTR-6)pl>RBUHo_^0=1^Lk7$_M5Om&HEV&W89e!U)!5 zm5<=}ai_6-2Ftl=KLC5yv)ebz0rL&?SJX%F`^eRj5zz$8r@v1%#}Bi&lnlWBBbHuI zf4lj~*y7YQZ-ozk7GBjqBKpl6wl6Bu=#?$g?GiAF7~%(KOcksyZcFTbY)*x^vPr5 zsA+!aNSS{ut&tbR94fYn^r_Qf&oN4CcV2nRMwQ*=_>v<5_^WZ0F_h)@z`{%*Xam#kW zaU8@bW8+$m=fqQp=f}=pm2ouUwcXLLFrMvUOlr}~!1MO4(cRIZ7M=PXJScLF+Zz^1 zz74dYtEkta57~3&l3H{a{9#-(aRa{pCiClR(L37BOE>>TEjp^*ysAZK-i>g!)uNMR zZsGbH<41bM4{O-Taaf(WUL? zz;aFdsJD zA^wZ9i}kd6ZI|k4BdZ(FFWg--T(~e-xN_I*H|C!8?EZ_&!`;%QdTxdb`H|tmh54}I z4)I^$E=6k?t7mn0^y>=pw&B8sxx&?W(@O79|9N-Reb8Wg3PE!7IneaiG_RI)M?LNC z>yo!~@8;Fo?&!Jg?n}wrxp(twOLz3bHup_;Mb*uIH~{;%&4d1^ZrEz)0ruwais>V% z-?filC)oJ4SLgV3Ec$SA6vnT~QS^Bf)Z{TybSh}$7xiEC<)$9S@z3R>FP46L&0Vj6K50LE zUy|P+?L(eTk2Tr!WRurJ4v=5?eV7M#m&=_!=g(Y=`C!m~_T04;rK?6TeOO0`4nTQ@ z*EVnV5)K};_@&F_FEpG}M@7kS`ASA9oSspg;dJ3aZsA-Yf0);& z|FCsbbkA_%R36TjA>nLnhBKP}LftukO!WQX!pX)cJ@dwNre_Wsq@`z-{Dsmvdu%j- z`I%;Yg;a90pDdm}mj3c=EZa!{`Q8lLFArncjxawjbCBlsvC(GR{|#FBM*F49TyBW_ zc8}ZcJ?9X#qxSclSO4XtBmQn8+T0HMS9^c5{zm=4``2M>;^;jHZ!Q#vFPXd$?`0+*Q;V(w zt^eAa+>z*~rY{&xKQNj;V6^AI(Z+S7J+H&XXuqa64ecj&jmrZV7ne|UruXSbw8=o{i*lq<8Mf=-Y_L*s%CuejSMQH`y;78U4iU!Q0Fp=Cp5&)OV7XkBlCN zdD=aS=?v&!O!xdz(f5bb|Fco9pN{HyjukNH`^LOco%(Q_d51ncNBt}hqm+(?qoQY- zZuvKJb8r3G(qa9X=~^^8+U>c6<4XvVTm7eRG}}GC59|Fw_STQ>mzSfNZll$705vZ* zXwUTpm>+NJt;rbbhXrW$g73rXJKLZ=cLT_9voVp@w`IQ#@^fKdfaWiNQ(uR2UNDB~ z55c)&OmuWxewz6x8uB;LKPKAu2ZPU}#Y;WDat!mAgJy5zi-nU{o<8ufD`5`WFYU&7 z0{f6S=Z}p}8!p~#tlHnav7PbG861DK{xUW?)4~s(<4<0fKO286d>em^p&?@3P~|au zTy)#MsK=qtS=dL9;W;~NT=br&EZ-(!{(Cyi@ymnEjo1Ito|}X6{gBfO6mFf#TK)oqALy zx#e%;1jd&q6WQMKY$Ek>toKE;(QfiEk>g!oJ~285N25*t!rLwXo#tkL>{2VIiG1H_ zmudRD%S(@Et>W(k>3&D%mB+uu-3^tqNzn<=fpU=Pnl~w0 z0v*R>8_)4w-PVQ>Yj8t#xzAW}a@EqI_4***(L*x1>FKZ<*E8`Q9>J z6W2x7!+u(Xo`~nS8gkdy-=lU@_CyC?hJA{lwd*{YDjBr)n}?|kw=bXS{ZaNNTYoT) zL3;l+`#HF0!t9^M#71798g2a%*zj=sJzU6^jy}i?7i73i`_la-yV8GA-!-b)_yW@3 zl3mpw8@onRmd6NZSNFfG_oE$~Gd<<58qYwEXO)M$#lwYc;pWM1atCt!0qvL0*p2lQ zQs=teqHp8*vz-kzg<{k!Wu z5b~}sx98;U%x9kLp>RNk12P#0C>+QP2ekL;JoRuuh66Gjkl}y~2V^+2 zJRHaj2efd~WqYu^Lt~FAYaHm?lks5vQsc-n*@uR6 z>z>g|mkv{p)t*t^>TAoM(Im6~jY)VXfjR3D<{kC8QSo5ilIDFqdqrH2g#0T^C}N$G z`3s=Ue;DnTF4&9lhp<<4Eb=_a>0;L7Lb1q5d2|nu9bi_mTbt^8FLEU%JWV zO5AtGb2{gD&uT6GGW>g9 z;`8dT@0eGIx%KY>n0LJAX__Pou($WQYSs?s>r)RG_8sBEoZ-T}^F5Bmg7&BIY#m_u z_pBYS1L!?#$ht%3>k$aA<2|dH57=8gwoW?ixRzc)%y(#v;(UY6!*yXFdUITDj&nsditF72n1{3dk|}# z?>@XOUYKj2>gdSM$u-wi2jH&bey8RwP_VkGFOR`GQ}fy``efFKE2>_x>=3>%uu`?Y#i4f7*P4&5vMzFw@zb2k6`4?kjf> z(mhD`=~%ii!dRu>Y47z+KgjfhOh2gl9?SF>^|8?}Zb!cXE#18rjg2;;J=**Kul{6u zj?C@-pZNgoS5#xAFM|{9egkj>z7G>X>QkWo%-rmYWSr6mn!6k{^8iwR$;L(9=)b*l z$3?%j_#yuT<{tazjf>u9_uz$bK0b_#US#DA+1v;4bgW(Gb@zYKxadiy-~BIf|BZ3# zA0YjK<}ZMJ-vaGtvfZzjWB$O}OA*Fde6VzW9Okh6=VS@V2iU~vX6Uohf zyLhS3SCk4rfUIB8e%Qav_8dT(gEUVjGW`LhIY{$tqVxxl`U7acbb-r3+;`bT&f7Jg zGY6YGhWS^UzdjZJHupO{jsNF;5c&i3h>rCkxNG14G-qKP-H!L7X_&{h->tr{b0Eag z-ZhLHZf^24lP5j6!Q3sjKll|5v@zR{=?oz27qp+r+-K)tacy{%`Nf78#6Pw&wg?wemH ze<$57`!k*W4Vizo=yZSSsh#p45uSzn=^GTUrPtzbrt|)jW&ge3Dg5`nS@Og^JHt6@ zne3l;lI(58-NIe=cF9j)E6(^A@wKbFqL0G$xXQy6Xi!f5kKMq9@)+I)ef^PO1KHF?CR#lQWGIK$-%G}OshUhHg^-!YKQ{Y%kKEZk;0IMCb8AHFYtP4jYhxj){^vHw=(=d$@Szj%!JF|Xg< z@jhtbKYYLVq;uBV!Fn|NeQuHcwH}_WU$&=bnU~wu19EruVT$JgZ)ewKO6Oah>z&UB zE&K}cwukqow*0pDs|@Bt$CEdrU#;KSuUL-%6Z)0a_y3fBV*72aUE2NtqwNo{^#4!n zKexXjik`*K=4$5lVXs9Lhq=Ew>4>AC2EXapVV=jstRH_2^C-4{{3+1Zk1sX(p*Xt2 zWUL=wWpZ4LmYapvf22qFs20sOdGd(pRVK$Hq9aY7IU;(y$`lXq3y)%>h-nm`T3hb{BkU#ix)0br)jHcg~ z^0)K7p2gUj@5K36>iYvb-|Kh2*P~zUe6Qd6Ua$F*|KRuf(&q!#`g}k#_@1x%$^TvN z`4_%X`hz{?j#>~$--cfCgGWy~;&kX0re|#Tp1)JC;Df2DckI+Fv~KY4UN0!SwO?&b zck~vlr{s{E>jpd55ik#y?OaFbvi$~O=Q@I|-|SpR_+PS)@PAC-7&AwDh3Olo9T!K} zL*F>yG3<+nzG3>uaOX~j?t|YskFj$e<3Cd0c&qCh+~=^i+t>Mb>L0dGV&^`Fo%QoopnqHr{loN;o%0?4v)5627k2sn zxh~)L)8+f;y0{}_c7?>N!q zPYmww$W8wG;Qo$}n|#aQ{*KR>{LtY3j>}B;{T+6{0QYmu_x&6o_j7>U&jE5jN8R^x zT)YE4#O>|=tzq|boNpzF{TvP7&jE5j2dMp`ZeRL-4v_mfDy7TzcW^%k$o(83!vndW z1LS^=)c14D^!*%=xt}8&+~>jdLdaaF1hwDa^^k_|^T2%}7M|S~LQdVm`HjTSZ}bc~ zztQFAH&Q>p;q1j8eV*UQ{QSl|pVtU}P6On*1(5lx51#AbxrK(W$1LxTsE0u2{7Aot z1DWeHrJwTvn=I{C2j@I8-w!fx$T^QT z^Nw>KbNrk~@N*tcyT5_wJnDYVV~L;hX!tpg($9H-EH6;)VetHi&H?-SOzP)6K;{o* z{y>&P=I1=-`Z*8CY9E8=L0AsBpTX``v-=tBUWu@72j@IWKj*P_$T<&~^PC6FJI;B) zoaa1X-f_-jB@TY!mv;L(kHpV;%-_K|kIeOuc|-INnDd+m%sb9`K<+r_F$XVP_}P6D zoL?yYoQHF``y;rYANFcrI_F{MLwHUCoojb+76?RTy`52v(XpGT03EVTma}uSW zM_D^Y=L{h8yaUK{5|#VkJVxgvAoH9B&Y94EGS>H-jg>#hJSPG2oCL`9f>&YOwfiWz zpRBHPD0w+n{detHj=N2{fH}{tfIRPzj8lDNelEmm=RPEBgN%K6I-EU#% zO`7j5i_iD-D2<6Mw*WF7pz3v^&b5?o4${2xb1fjA4Q_TnlKw^bnUbao-Cj zb)0Lt9eS4OQ}$F}e_|Xx20iP?(6i1(cQ?K3KU2@T3RgkcK3eOare|?q?L|0iVe%(j z?^<4qsCRwc^{zG8YijnlxZbt77E$kd$n`Glqov*jJ&XHlv5%H|7xvK}iT2gfyB7W5 z*hjl_{%261+IhYf?}gdU^R*p%*MHFYTD!N4dKbv&JT8jl`Bcb!&Zonlvo$@6dKbv& zJjmxf$mcw0Khv|!zNow21@bu$@;MLkIbXWow8r%=$b3#i&!XN`x!wgmisw@y^LY*O zIiEYY4R&w0r7-!oSJQ`fsd`UCl#2l<=_?PvE5cIaD)^r$@Z^RYNDYwx>F8Q=4f z-UaIU?0Q$}dW|!H)CWNOnf@a^*!3>RcHY_aA?d-ccWrjP3+B>;{TyrJ=U74e71?;# zgU72rAhSL|>A|kYKxTb}!E?8)56G+!Ps_VmT~0e^t8#Y#kX6pE|3K!s z^2+rtkb0N1Z_A+mM7;~<(x)d%4@-ue%S|UrAD<=t#_kofeU7~gC;IxuMCp4lr``qf zy>ON5U8UEv$^sYp5OYiEEUX(*WvhV{)Jqom+-3w;(F9D=ENb@j>{Uv}j2Wj4L zy$ht?1==rN<#H+R+nsdiT^AlH{mS&NALHJNKij^a%_kjk54yYQVgDKXewy=JJM}Kq zGv=*0{(%1(=a+WsT|4!zq4QWf?=`{wTDs0ITD(*5`Y+MDY(9(gbj|?kx$g60ko8>m z`&J<9x$g5~mFCIp9u?i^;`3su>vLi7z7vk8F5^3lau4#k-*A1d8l0!%zHP`%4`{y} zWO_jMACUT7GT!xT>21A}$Gd(#-t}wO=Tg__K>OLfDAKQ8pMxy@+Vwfe_Ots@q+h!} zSC>1x4@LU5>vN^+V{2TWgDm~p^|8wJxh+1A23h*G>vM_pwBE@RT)&>+`t=0YuU(%@ zU7rJ`U%NgBndt>Nj|NhoYq&lKavrU6ea>n3qo|zSKV+5j;CvSAJ(;NIB1nDC+1KNG z8D#2nAnP@C8I&I7^HG`WbMxF^-SxSPT%Uu?`UR=afz;4SP3^|@?&y^Z=@7^1h;U7rJ)Zjj|#x;_U|p9AfeZgRO2_npzH&yC5X$C*B7_mRCh zj>DG6rO(-SUv|!;?O^?~q4mxG?&rpK>T^5wxt;plf6YC0Jl~l3ycDSUj4?i+q4_X; zzgo||pnK@-9((FJ&H(ax2ini>tK;(yWIcj>-j##vkoKIgd+zP|X7}1@-on>OAv2uB z^&-%oj|E7*2;}oH^Yz8LuP-if_b%H#c61NYed+Eq*N^J1A31GZkof=^KgfK5dVaco z)ELL_)8!za+aS{q+IP}yp3L-~-Zcn+Ddy)OPsNSJrf;#lLE2-UjP{Vt-tMvIJQ8R> zlc{fHx_2%Isc+N=^(N|dkdzi^HK2GzaNEO?+K6@pVyMyq6y0awhJ3L8m@h2eGx<44veHi!sw13~`!lzC;;?sD|de_PSHvR8Zd>`ij%Y8)qyb#7g=x+>O9xvq+JQ{GpEbyKdZV%?PY z70vZ^)q{Oqb)m1T9y4TJb%n31g51vraz7hr-vzbrGV*?+tvk>M-F{%p4)(KcGz}Z= zAkls?Bloj`+|LHmKE-{&w!Q#zelOELv>fDqHjv{JNcW(PKXwlh_p{Y~-`YjKpA9ni zvo+iteT@6rAnSSJ``IAddrY2ae^@%BTl?5ju?XGV4-^)45C1()*xUFykarKcuXoVA zV;@)F;C?mp*LzWSbQ;=&-9K#k>1*y!D;1vIJIr%zpzi5)|B3J40=a(+WWGQfFH_t% zY~Sm&`-Wd?#C^lV-m4r2?#h5XA$P2=PWOFnLFRd5H0#}H{sKt- zq>_2xmeCw1da-X!ddO($DGBsFD{qkPx@U~sVV#xkU`~An)VkLYJ+bb3V(EIK)4pfK zaRB5v08&o@+0H=fDb?V*DfL9i)DsiGcNpYz2V^*@>wTc5w*aa4fzwOK^6Z_r0 z%LPdHAl+B)K1fe&*Yi}4uIE8NWBF_u=jGU`&*h2l(*jkF{IlM!f~*(nnn%tmLj;ue0YzFV;cn z9`;T5($if(OkD57{Mx^EKT)3f{x6XA2HG$EH|T?G|Ii07M7o;ozg-`+erfukai~6M z=H}1H@&T=#nSQ8!1QVkK<9P36d>_g7%fZ~%t&41;^h~FHw@J^j!Fe~%Z^HZwKS8~L z_A^rdtWVT@C}?`8>4|g?(miNDGv|D0!}V2=`YK3$6{Nmext_V%^;O7PpLRVnas3d~ z`t+oT`s(CKsz;bpuS{j%J9CosRmcoy)+Fh@nTG>19FXD6ouqaPncbh7KMlU?uBcazdXT*h~lOds9%g2^50%Jx0!PacE)eE2Me z-H&-Y9`7cfo=m13K>MXL2E%1I3p&HW)w=X|C)6zqr|CaOx;UQ-GQFVv@@%r!$3dEd zG_QL;Kj4#JLgk(pg-@NPyMg? zo(J^lqtFO@*Z6r5$b6oz?PmYjd0*Gg?|%GuIG4I}U*f;MFY({AJ}x~Q-yya466oi8 zAMknC#Lshp_RCY>?+BW|*7r#v>wTb8ukY)3_YHRs>V3f7SMEOi`}FYwdbfQ^JO?dZ zM(Wd`-pjNOZhE)g$6W7De4QFJz0lUP_5Luy-yb^nAGY=#24ANJId9zXb!uk-^&a8t z)R6Ta;d(M;&D;CF!_xO1I{ToHbKV%T^5OdqE0;m(Sss4k>(tHl?abGy=lVJ|Wa{T2 z=Z!(mH{kmq_PrmQ7q#;qMKzJ-7`9GixlP-s@3S}cL$l|5`WETet$C4+l8a=L^m=Ci zSq`B6Os4*xLf^Ib3Xu9ZNPQfnJ|0|;UN}kf$B?N<=dMTBT^|OiM}yR(FLHexGWF<& zhqK)EamWm(-@_?A9FXCFoIeKn{teo%ca7`kkS*LIP1N4nNc|h~Nqb?wE^~bxlpg8& za7dzMH`VZd=K6Tuxo(JFUJlXAR}Sjg)XS?OdUoRaEXepk`%yG+AnW-IzgI) aG_O3JAkzujFYVq%aw6_~$Sxi45C0EM3LJ$1 literal 753376 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 XJD!%MZ={avqW2GCT1))mzB+%QT*IqIh(E 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

      esEVSNN`Jtk=@*!AoPkp6cM!W4)Q`;MK9- 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

      e+Np^`~;48tSv>l0E`HNJpZ1`gpzfbfw>3tMYBD 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 z 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

    1. T)oSk}oN`UzIn$-5OlOcDK&b@F7a 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�#teEC)7YI^(RmvenNe;Dd+{wLbC zHh&oEE>b&^3On;~Zf?PjpG*3A^S7$M%FmY$bqk8}OGx*VH@=+5dv8&G9qE4Z#+T=J zON;W3bU%6H%X2vC!SWpL(*32q*q`M&+*1WT)%@MyYyFwrf@-_;%|CB5_hqTKKJ6;c z=VW~EM*40`k-lE2!h9d;l26`q(DkL2o4J?8kG|_vmM-V>7WcbKK3PcZiOP zA^PM!Y1O}eGq=8;eoL44qf7e1SN-7E)sJ-1*X}mwKIeg(yH8YqpMB1j-i`F)IfIf< z^@CqmKhi~?ypJs!<^Aie*Gm2L(QoP9NH6IJU-g4uS3lB4-;y@UwJ+IR`&SQePq7oR zgUNdu($ji?hZgzkj1N4y$S*uMyioYn`?1OPJP~+jkw4w|!0#3LbBz!DRgph=3qG#| z_7wTkjSt-VwSwKb#s`is@|PGN7#I1^7$109k-yIPz&ne4H{70|4tL)w@<$sV_^Tp+ zuJM8YDDsyWAGqzW3;sW2eBgcsesMmh=SyzGeP&M#abD(gJK%B8jAqW~`mUS&{lxNo z&BbN<6U;e^>#UFU`A$dQ`Cj{=^15u__xjt0m(zFMx=g=@=cq+{eZLFRcb(@Z>>w!0 zKi6mexqiEH`tLDL6y-m9qD=QaccA#5s?2A1iOTw}+owzy*PTWFWvtg0?Y+>ae0{%X z*LqZ0{^Fy{^mE6Q>G{W%>1U5G(|y;;ld0wOfApabKe?R#Y#%ykDW~5$txW%@PyOz7 zdO7{iedztaP)`4OA9~00%IP~`t)^I?U%8-6UwcuR{;&^Sd>>ZY=YxyO^4DKdrhkMP zbJ1RLT~YGi-(F7F?;T>2P<{Vazl&3#^?djOt>?uS=)U_(U&9=`XkX8lEXWtnpAvuc ze5*pbp2Ja~`@U!YlN-zW^*#QAyuRmMpnuw@|Lgn7h4jArV0GVZAzk;06li_!TcGth zP=W4yf7$ok09{8e$m{*A(ZzA`T1;T%K6g6si6Mc%=gX5%_&oj|G6CZv`1*W#aPPUC z#dCU#dXAOzdm+DPQ4j2m5Iv~>V!rp2z@36|dU_?`bK=gxdE{S*S)}g61#b5~<~f}NaTz8+kJ!j`%2Pa=l7^NmxG>FPcQh?OSzifKKYj{#W^b|ceNg0M7C#I0w=50 zFP z;Bg~R-$DmCXY&+1Lmc1Wt`K@mgZsuI&K)-u^(*vYIA2EOXEnIHgg&>yEfRVm&QBKl zh6eX2a5~~a%5&mcJeM&1p5fDmzc75)a1+qaZgevTH1=!vc8~88!2j+9|A1rG3x)f9 z@a0ZM_;CaH)%DLd?h8p$@{eHJ@|iA|7^X!z@G;D)p_HBd0hWYD%fYNe&M`cepa*$}YYA!l$IG{bRvAbbS1h%3wE7>JupPg7Rz6a9*0|H}t@7uEseDK=}#(P(0TY z`hzzxPtSSoO6vwo4~MvSW;VD4cnIpv1CNpVjEA_lV6Po0?UDE))B{|OcE0Wzz{iTfXCJ$`KbBvTnSS7hq93UI-24Hm zKS0qRHEyQpLt=ZzbF}>0&D_8-Xm5+_TDg%fCz5w};rn?X$^AXgCtra3Mzs@euKWbJ zKjZ{OPVg+y(YVc3ua68DZSJx{IekjHYHz_j?#oQF%^6ofk@rCPMdOB%jtplHb6+Ux z^Q3F~+W5Y7w2FM65!?M1jDy)*xbLIhs^#|J3*DQ43$@#xQa)P7bYC&txP|+U+@JTk zezfOXxNV`QyJriRO8Os#LcaiC@9V)Y-Pf+8r*!Lr{cXKp>dr#TbxDnLx8u)F*g$HVSPWuT^&Kpg_f$EpwGZIHY9lwDp57hA+DC2h$ zQ@$1VM!TZEJm_EafbYroz-vAMoiShZHuL%1a00HA@VOeNwem%_kE6L!uLHH~+E|va zJ!X1h*gCb*9p8xSgl}X&!S!0|Q?Ac?9RVKp6s|)+El0)pz;O=c&Kp^7;Kt){eF3KL zqn?0|{fl@Hz8jW=Shq&IwT{5|7tu~as~k|}fVZQ((KuXpVc$oFvj@4Q^~&k(x}Nm8 zt{3>F>v|in>+LD?C5EjF2f0yF{>mVhzjF}FpV{?3=k?wLwH|9T|#eEaqp!FO%yI)v<=Zjj874qA2eg`ly^g!)DK$QcE zK1pYM4RQBvDRIT?c^l>#8n>X2>IOd|%Dmz*e1B9>^?1HVlmMkawgYv31C;q?QW>g# zCb{YDF?plgfhrGF`DinhZ}&V`Co%Lu^&d#Po6&#J>OWBYZ%=t%X95(zTNmQoPx#?M z@9-h|Q-ypF)N%mj*Pioxa|!U%?_!(){z>uy+n+;uf%2=Sw}*TmL*^MGCn)(mum?L^ zl6Z6X9{O+V)XiNkdO*K`d&0IB%u~?+6OZ*+xsE2A>o_a4$a~)Lp^Ab_~6bkoC%WitsfqfUMVHjEi)b zULO*m_+7=ej$!m4e5r2_WV;((8D{lt`ok@3+yZL7VSXax8~7ZzwqSpqv4!>%nGb2d zS+PZ*c?9Wdzg@7@<}Vrbd!V*2P<~0ig~qc7Dj%r)aJc&KfyxIeKeqV@Q06ZlC_kCs zDD7=NvTV3sN2~LQp(CA}d`aMTosV-%@T>BVML!k(fSvGOF@7&%{vh-fX{fYc8|pl& zdj0Vk>00?#hH5{_ajpjDEp0uazMt2+A#^)pgi68@I=^Xa8bSVu5z3Fojj;Kd;i3`c zdQ3^z?9Ai&7fEFVuhT#+FHpqOko%Y1AL%$pXhH+|t&)CW|3 zK-Gu*N=L-e^UL~fLAMiqSHxSp0nj&k+14d{w_q50*VYfVJuPtG#QMQ5SUL}8#E4TdMd_$3g_+>^e-7Zpfq20h(GyF#&t{T-QoHq>lao2VVK`e zMm+Uhcl#IeTq*Tgod@q?^I)v273+7(EbK*l5c|DQ&+>boVe7hm;7)5mxs5OM*+Osm z`*k9>K>ou|>ibVv-$@KTP{${r{DjtdqtQtgxTBy)Q1lCm-Xss)(K2rYvcEHb5;nNw z!5=sVdjsKTwSOLlxILv$xhK7T(Ftc_dU`L){iIrV?lSc6iy$Z1_4WWoc}{l@Xn8Ix z{2xsisI<(dg_aXQB|ZBI<>if5;mdb!1m%2GL5Vw&8@4OuWk0^~<$g_2&hM7=s@~*K z=KCAsO422u1m(M;f_*m zE9dD7|0Jx-3(5``!B_DdLQuZTE-3He3(9`1>wvN^@;ZzYilAj5rqGI@WuK+cilAj* zq|kyz`^VsY5Ya1fEPUyYg3=EJrN0SE{}q(+Q&9S++ep`B7ZsJMD$kM>w1eD`A$`lKWsb7%T650C*Ok=d>+qf1m&D+ zL5DZg1!aelpuCSIC@(q+uE0HRQSZY)CtuE|ko3=C-MW~*m(|;6-e7tco=b_`c2>?m z#Pstj!_9GTCHZ5}A}8nW7xmp%C~vi26~~oDNbftY9D)ATu>b$xzob6@FZ3_*^Z!bJ zk>?i@pYps!P`+;<{{LU>M~7j#;Ct48s?V|RTzTOMFX4K65&F;jcupmEs_%DU&LG%> zwJ=~$gn0sR%sO7cdg2Dx@Om$uq*yls{jA|z8NN>jIsu+>UEtozvCk6pTj2oLDi{rL zGX>)T?oL5Jz4+Uh3#Hw8tB&Jj~weM9|EiM-Rk_aJ!<5A zFw%?n-`$|6{uS$bR*vd(D-U_mleY|V+t<6Vjt5a6(u?|P`H?R9@+N#Are6Ng)&r1U z%->$%kC%M5PEgZ}bkUc0VSluwo8Pr^W~LYECA|fHUA;&beR(p}T??$~^FwX@U}#BS z%^#$TeBO-vW$|YWH zb|bx{7qqTtRP}-`t!LPNHM#GW^^&}6bJtzZ?`(7GM|w#==vN@$4Xmpd`9xoy40Da$ zb?U7{!>!!I z%ldkTm-KWuZRt)xzV7BNb-k^(-L_PHc~^+wssqf^e9Xmu})l*Z*6j$7wI`oZo4A=RFnHmk$w&5E*9xcO>R<=9yQV(TcjuA zTtuZA;H&41bZtfYsgW)z(Cyhs9k*A%Hqzao{Pi-7uUoxoq)Q8Ot4ED;4;AUwQSQ41 zy4{b`aewukQSSdyk6Z@Ut-g1Zd$}l=@%+NouZ?oQqnvEZcdIvza_6qcI9sjPiQBk8 zYC7r-O{^}UeqIWqsX%uz2g_;MNi(mt=k^{SI21|k*?~k`Cc5^XBc{sUjB<`^gzUZ`s~` zN#tT;KRM&)Jv+JUAy-ZB1})bm!K=U@vyT0)Rxdf_^JEwIP%$6qdsJS-8~ZDEp&npe zJ)ZgV=F#paMLnSR_yBQBvlwqjQxCANo{0JLp3&~tMLnQPdYZX$Z%%!AGS1yD`7BPoCtZz$T6-HmZ`sY=SCo%Q_mek%-u!9zouYh1 zx}Uu9^PW$;RYm!nbU%6H=PjRc??B$i#C~$d&zp94?~7iGCm)jTCvW_`d3Wd5N&h1D zlQVvv?Cyp`uBO+M?k8{jykmE_t>{gO{p5_FckJOlRn(i3?k`V%-noa{wWI;*zY^ufv@omtUDhInJ;gS+?VR*2cP{T za(lkmd%x11M0#F!cSlrTZ%Tc6&pxiBo?h_j*S=-F&HGYs%f31f>rVEquix*hdh?EE z_fkFm;LG#aZlKx$)-8X^{CU?z_ijBs;H#dViRSNqef-_e{N1m<{&+vtn>QWcc73y6 z`y5cdZ-5-@<$(J7Lh8vo4{}G;(+7U(KBVg)>gzeE?03__^t<`s`gWp&Re#3`4RwAXY*eS6^%YA0`+ z;(lMx9{44DpjrP@{);~9$-Abw#<$R(c79N`Uv`7fa&w>)`XjMhy^ezZPl2wD?-}*w zJyYEHdV0Yx=>=WV3%ah}oci*ny zpEsT8Zi0L@y&LppxAx9MYw{uG^3IdorQhqFUv`6@4!WN|70TsZC%Joz`a#dBr$3`y z-gA;$UX%x2S3aj)-Wiwd`wHo5d20R}KToE*A4&aGuWO!kKY8P4T~po4qI^cWpSNm`$p5V2TRHYEfqp9-N!m*&x+>*f!cFK-^|UM}VbU7B};uA4t% zzPttJ>lX8aE{;##pzG$3nNQX!2ffoQ%42;}*i0HFYm;A z%E;d@4#1c7)CJXb#R}!}uA%PKdh+1Q`cyYi)}3qlGRn(3>UGFhiv!SCf|m8sy8dCE zROIuP&D=x9e4tDBd!Y3`7FbtL%=~$ReNII^piAunx^8~Ye0j%a?u}x8&~@cg%H^G# zxlfAnpzF$4D3^C_=C=J~Z#(#mbhW+~RNKM$vVJ@c^3`-%FRrUUr(E8$xjVL?zm^aD zy3Yw>%I68bV^+u~`>lko=CAo>{JdjxcX3fZCEZWn_<85%?z8uye^>8ME2R6$8$WLv z=B^a|)$3tMx}Uu9^X6f0eo;Om-A~^5dCM?&Pf*D&`+Q9dKxPu}=>&oH;4D4&z=CvW_`X$v>#PrdbD zmFot-)bB&e<;fOqXUNOGG{LHTZ`_cdcWmMI61kMvPtN#xC+yU-5B_1`*Ys8>mv?R9 zX4R7iza*bgF7MgGEvzRG{%i9ZdiCd&%dzkO+x6tZFUg0L%bSP07a?CQUpMHI9}&~@ zmf`NtMLEzVxtQsBGTaUQb3q^Il3maAykoc&^e{#y@cpkH`o;>&^`H*rsp4)sK@-@HZIZn~E0~LfiBtgOwT*EbpI^MfiB6VOwT*Fbf5W4|N3pKZ0SaT-;MO0 zBz>Dd3AwJfzL_uY+R~j|FMqbBJ5cf?{b=SFvNu1{C12jNrE3FL>!&R@yWrQgi*%9C zoA7J@D(=L%PW4N$73{*2Z^Fx@x~xKI7*dp<7&(Pf7QaH-6q3x^EZdE2R6$ z8(*H^{j?~bk?tpN{JbZ0Sy4VG-A~^5IrfvjS&*;Fb%S4b-WyUrPe!=Bkk5P4)%?Bn zM1I~e!hKwnPf7QaH-6qZ!j1TAp&cru`^g(W?;7F86y-D0{p5|G_l$58i}E??e)7i8 zo3?Vt6y>qMRp@^5#?PC#a?=a)Rk?2P>(*;T`MhH*=j-JI|4`hA)ao^*T;92ryRn`; z_$B!Yrz9^>cDTf5&B z>~>bWhYt?*?D=3aTC8(<--4^VRZ4Bi+h+`N7xxK+O-V zmw!5*TkC#+u2K5DeBD~otMQy#*V_-Kz16MTxNfm?u$p(P=WOHtRHX0S#wEYQ`g}G0 zscm$fphmy8jeEZ+ziAuyiPENj)V8hx?|anbCvNM87wOh*x&C-?^|`q{FYegZ?JjbC zo?CZ=zw6V5b%9Rg*Za?H-Q`~1eHf`s2MSgkyJ5Kb_9XuD@PTxQ2_k26X zb7siN^Wd34c@8XCjni7(8DE|Q&l5R3-xcg9XZ*ZtJNNZMdN=5MLD&2Ny`(_b>}1R* z&y9bHbRQD?*)hI6H~ve}4(NA&Teu&On7(An_8Je<7ZKaD?e+P*U%P$%`tI7kT;Dz0 zv%Z^lV0}05!1`|4f%Tp2P_FNe9m@5+6dUL9OR^pKehiTBIqqQZIa+$SquNd49W`DB zrQJR7KzXkUsCxX48ovop;vh+P)OZt|i;WsdWk-!SLCp`;_vwI|KiWy-H;H#LJ3G1m zhxemAXx&c_R5_r;x$rlHc+V>}d7#PzRURlm4^+8qC;FG~M8AMnh+pB(^vmz8{Vhp% z)_x`^ahz0k)_x`^@tkBk(@&tpb&~I_{Y+5e+XFwuxG5;VB-};&m7u<-74M?;9nIK9 z+u7s!yu1hICyZvi<2idN-lvSF9zWW>y$|dIrC$qP`nYqgvqrnk-jj9C(ex`CQ$ra) z5U^mwe> zSNs9WcqT|c#=3)rpN%y?#ya}ZOKUowgNvWhvT>}Bis6dgte+EW{cq)Nw43k7`T=VF z0JVNL?B$c;q=Qy|xF_ubRZqO98+i@d1IT)|^mI=* z=vwfBbHyLvO@``Uwx`wqp7aB>^5f4^zyB=h?6ZuUa4*UOwY>_o#tmqeYcIx4w712@ z-WC^o(|_u82grVO0R4>*w0_r%Yoy#&etIDFhX=VWB>sWFlXRf=6QJ6UEFGxnz$*Xu zA`kixg8m@(BcRFwwI2c1ugXD;N1)1Q2f4pUKA>J#;)7||A58t}!IX;+pP?Lg)VKm_Jpr|zvO}!@9^!JfXZi9&XdkHd{Uqv-4%PTh3aEa@hpL`v#-Z9jyg$@^ z1bu$OWX^LUVr`tAGMV=MWV;ScX1@T<>(FHOi+nQUGCGWY0(IOd&^m5_);LKIxpTv5 zN0#StEk|-5*LEcBrbn_KfO@?FYCSAGlJ!urbfEeJlzCw5lSjJk|Bg6`k7BB5x(Kdb?A2j3C_<1j~UmZ<-(J?k&AH)6(T7C&o z>l3K+7JrQOhhyB)Vi)vOL)tmU%4zbIV`x7-R`W;mkJbA0so~mV^?lCTx>QEG7H{j1 zr61U*!13ldd*Asu^Y1v;Uu1ls{F3-M&SQc4o-R;+(F~(KarCm|IRDN*Z}(@P*L}$A z){&G z{Sr{>yWf2g^ogD&>yKAIr%yORvE84*`-a&k)VGtIP__eF?Ep)5=AEGBOe!bvegMdG zs!p)?S1mn1LF**}>O3B(_W?lpCD`{N&#wh_z8sy%`7e<3-xC=p>4}^NFFR5F_LUPk z58ilUIWBV2wYV5~6757MS=^q)xB#v8iZ4}P_Oeq z+0T-Mr|NqVg5qxyovQCa2#TG=pQ`VlBCO=i*9}!eKI!)g{ zNq|bnr|J772~g?uG<}~W0V-WNP2W#RfJ$el>H8@OQ0ee=eV-%&O1mZT>H0p2pnL(q z19_i+y4HixpZ+bz5r4YAUm~da($n?*k_4!9cDlY_k^uGoAENr3e841EtJiH)wD!RtQocvkG;>yu}=C(z%L>dns5_Vhp<7l6vo&(eDLK%Q%0{P1k`+XIykRQc#^ZBGwWK2Z7b**Z=qK&d|u zJn|k{4>{Y$!LvEugO*=3-{{nE+Bq(h@wvLsAtqfbU)wpFFGwL{vNIRqUQG*u{~_Faki~A4telP@BfT#qrR+7$CK!7ru*D* z!i@j&p3e-`-`zZ;q<_Jb8Pu20;P?a-dr{;0s>g?h)6VC6MlrEgPi^NjfA}TF7f{bP z0?ID|%KK!#4qx6&lXUGrKzYBcN=M_qM0=6p>@V@XAWy8>pJ#TW3pifJhUo=5K1Rzf zV7`js#tZn~P)@Ar8F(T6tz4+%WVGr+%4LQlFXDSdA+eTk>_yC%U8Lh_^tQ?6hAS?v zzfZaIV$M&S)@lB3(53yvpiBFSS6*!XUBdCU(u?w9p9g(_^gE#Z1S_DE{1VRZfI7}s z>F`pumjF5b8y#J$b`zlTtF*t=HR2XGi7!+8Z7r8^p6HEEF5|jpYW@N(?cLUC z>Dgtp4^+7VE%VkSzl?qWHN8M{-a3=>*LbGRa}%KOqh&L-zI|n;+Y9~PZ=CsG_H)lH z*MHBn+(6}5 z>B=nDe|WjtZ)>`o^&c7Ce7ViHFSqrp%jvJboc4j#*Go%(YfFqyFQ-31l`GKN9+k`K z7f{m+w6;fnIokoK?a+9I*1Hd{aK}nJti7WCbLOrq_}qB?74$buc)g4hcho+JU!c4f zD=5#G1sAN4>qnycd}_EhssCKMi}@C;PfY)8(?8ptuKH%1{@JE~w&|a(`h04*cD6eo z<)~hts{Oyai}?gg``XvfHhXhej&Kg`0JR)IEyuVys@F$zSf1H)+?VUwNtmx2Sh6#3 z4((LtuslGmFQD21s-0ET>$5p5*T^gDKbLR1viy8~?3L6XU&(q)uXNo~Z$PyJ{ORZ9 zyk+Y1nc>K*>Oa44x~h-P%)vKqbt4sR3L6_=l z?A2!PYL+9uns$I%jv3VJJrK|N{fevIx9i#I>|+OX$<9i%lV8p90JXk=YNzoU)$7A+ zw4VI5Ys&i;V$#((ThNAw3HT-HHLR!X8uvKfyGVfY-npRa2TFS<;kE9QTaXUabl^4k z7P`>de+{E?*Q#9~8P2}8ydT1ouK6+VTKZABmVV^dx>e!_P~LYJWI3;;A5pv8Ptt*! z4pcvY>W5);WV_n+vEiaGm*0CyN!R>X`ephNU&s3`pxkFgGp^Ho-W!g*zR&wG*O&G+ zFBp5h>A9Zw4e|9B57*Pb0xk2*)>+rP=MfJ{g?a>a{*qsB&k^P_e>7L^c;Krt-v`Ps z@pE}!n9b#U8L0DRpw5@`xpx0JSKnJm!W&2f<^6>uzJcut)cQ9|`1r4rvcs_Vpyujl7QpYP!)LsOgm(_5RKSdEas)^=3EfeV7L-A4q#& z;r(Fv6|+a$gO>e0N%R%ozX55FvaUo7pyoH)1Ev2andt{= zy3rn}>Crrv2gv)GdDI)vV|jqe2dcev9_tUN`i%BK*+-RB=CS^O^oO(ut?BtZwjYrF zVLs)e`C7gNDDmWh12;gQpU=3;nZ5}q`|T2->IX9Z=4*fSpr^>ZFI=GdHUVYdnb0Z^ zH-<#Oqz}N8usQqo>O>Rf2hm3kWQ135*+8*J}te^O1jz>Uwf6W8;TZ4K? zZ?<)qo7vy;o3&gXsQoRx#roGR>~E3LK<#h-7Pc2q+pBU5^8>ZN0o9Mp_(1J%K;=ib zGG2hJPtqQ=_NVw(Teq=vqdid5vs)RTK=!L!sW-os@d;EukoIn4e~WH2d!#*R?N9M- z>~BEz$7m1K^z=5iGf?9msCp~pCqS)VAlEG|JvX~R)oZi|YCj8ar(K|?8|{Ib?r&!~ zfod11c2nl_K>B0+>~_{GQ1uz@f$V3uvtDyc2g-RX9;oTj9c)*iwrhTe`F)4=C!z;m z`(bn^fKTKn6EyWCmQ-=b9Y2&z9mweqLx zS5jfR2VRUbGLt-IKZ_UII?zI`Cl8wIKnvN={6hA#)M%jgvuq*t0%acMfm^Fy@_oLL z?GMzr2=Asm@T>6G1GOIjH9fwY{Q$@~@1<2g_>8-|8JFJVfO4))0#rGm%2n=Wya82T zfmS)t8durfj5{FXvX^GLOfI~K@dwoSi|=tK$~+0E^EIHfhtN8o^Y^$LB^{{pKurf~ zdUlW6+XU3O1Tx<4VH|;GyqR2n591QZcr!WBDi?N8A5h~GsB%D!OQ6cd9gNEv9U6z; z8?NXmzxUhOQI5-%9c-t(gK-Juys?9ES)es8M=WAo#)}x2K=mhG#JJ2BS^O~FgVwkV z?`2&2d+9guHJr=if$|eRyokT9^G&8ZE{&Jt#Y7ME?jK!z1ZS=vBkIXy0~X&8P!8#g z?*}ZtAJBOA-f+bOrFo67kgnaItbBm&4BOre}v_&Vz@;8PksaD05CknR79|zqcP?=re4(!u%#7c)#C^r+_jeTkmuNjDxuy3kakq;;;3AO&fBT&v z2YgWI@KLuTZlwj)e$%7w3F8;(w)jzfk0|kvx{Bya9(6wz1T8NxC8_Z{9(AiEKj<}r z72|h4>RvZm{RCgyGs!Hy>ruB}(sQGG9(C^<{jp&980|Ja=7xL#+CSz-8OnDggcg6R z=t1uy>FHx`Z$p&>E&dB%&;wO2draG_b&>79?W-GJI|;A^`9kCXCbkF(u?+D=`M zv)%g8ZQ)Y3PqdWv*SwVN23p%KHh#-ewi{?|H*fr8DccRS`UzA&Q%mny%66+5-3d9V zU(jc$pT_T6%65yEvE6{$9zbn3Ll4yUh?lY5fGP*nb~E%qw%aoO?nCREW$t3Nw@m%> z*)sj!N?W+x%@lsTob?5~%4kJTx-D7mt`k1!n*~$jcPw{z8~w0g#rU1e-8YPWN-#5i z*K+r)(Ju*xPq^0%3@;@@e}U3e?dNdLdU-(dxGD) z0RCOlftn6H@_m`NKH=`bHwlyc2{->2h-2W#A_r{$4DL&T1A0J5U!y+Yr+<%irSV^L z!yB=m9kl8Lw&HoT2W}_w+1K12hU!;=uJQ%jy1wT27P;{2Y;U0Qo4(F^2F?Cp>FL+m z&Onvx__~`Y`3v+U&>l3~{p*a6%;dXFFKCV5_!|~K->~@k2KBalgL;v!c0j9M(5koc z4R@^A1#0=iZ<_z#q(0DmPr>;4H~G8|sPk-~j!Qtj-T_;+9==7n@LRUN@Ga`Ae2e=h zfSk|w@-;vBnm_(F<$%1teTVYlckKE?^q^;{|KFj#%6Hr?M&Et|;sCUqA1c^k{6`GG zRmAK&vCzbEIf9pPoUj6|uAf7Wz2Of)anG;{( z_ySZvfpWfS5DI3{`33nS8*@ud>pi#L*Rk* z>-$#D@3UPi-*pkI*tsZ}D_4Z>u-z15Q4^(-eoMV!B;{#=Xr3cFS zK}q^!yZ`$!<23s*<23pS{Riqk9iaLj|AcWd<0sl4-v30~%dhxJ`5ey9pOnwB0WJR2 z&M94K`f}PyfO77QAj?a64|*=@BWnDq>i6MKmG&c_E}z@k^mN%CXr9ydblL7$96W_z z5p4J?}~T2|p{J_u2fjvi+8ymCqeYenx*fepdEp>Cfm- z_A|Rr`I(L5&)9v+Gj^Zy4C69-#^UQ4i?3(wKIIwHWBD@6x8WJaWp4TW&zTR%`;?zE zUxoYxsPzHV@&oUdc+4yvDCa2&t?9sTXuMi_{&Q0GCol4 z0yQ1@GtuiU9mu$S*5dYAi`!={ZlATdeU9aep0l`pj^&G=v$%au+s%8>(C=3~SN|NX z&gazLf|Zs(C!ItqxepPj-@64eURJ8zP3cNKH!A^ZJXKbzT@U=V)+6PTjCwp!*6*Um zRqBTi4X3RtpVt+WuHC=4tzx;-RqBriuDJp8H=z8I3i*QKN3@FheP%fF`TFO3H9cQ? zKD}V<^JeFH)@%B_`sIPNLw-`RbfBD%_xYo>Uq)n=P%U1B(gK8yv?uuMfsewu3wbL574FZucyAY@FkYtFab)x@jxvMqvHUGB zvHYMpuYQU1iu5Jc2T-r~m6zPETE3T9ANfm8?_a{zZshf-k7zaP1t{;!C-G|5OS;KlzMyvW)9_Z)X}GKF@Ug^%K_gIoEDY z`TEklM(y?Xmo@a?Q!WAOcm$Mv-))sOj3dJYDC4>ZY8(Ms{xxjhd=2XjsPk_i=fAIV zeLQ@X{R1fN)H>o-cdFD={3`DcfZBi3SFK;Z%Jv4$xa`l@`?c&fwxf^N>UGm^Tw6YGuxG747ay}u-NZQvYs>9A z@HP6MzQ*SfK-qVY0JVLA`rO6%9;o{ffbvVS*VumHueqKMd|2))fI2P$wSA*s^Lh=G z??QN>K0iu-&34azZR_loAGGENYFy-&AIRsLmOuUt>tV)kwA|kRM&}29!f$mxP`$o& zH~+R=?kT^ua{pH6Nt@E&>i1nd@IBd2kdZIQe#~^C^}alOo$XdYl>;s3%Xy&IPxLzF z)7Rwm|3t^Cf7(EGSvTJImh*ZEKOJKkpk z^*%D}Hotq3es|k-rrZ4PHorm3{c6@tJHRT<`|57m$-8L>sCJ?^Xs3YeH*e4m_*y^l z8?=+X!TNdo4XqEKzoGLrzv6%0(0|m~huHbQ?nU&kZs2Rc1uOrT`f}3k{`dMmPXbiC zK;5qjl%EIc`xZuvoP5Va`0`$jAfH!IK1qMC=U)oya}}VRBb;Q$2Z|p;OTY2JcZ81C zsh@({58`#Ir>$ij-+uwE`BLL|tmFGIps8;i<1<^Q-$U|1jnAC?1SsVbl=C?~P`>w? zL~qhg^P8O4g4T5d|EBfpH!bep)bAnr^i7NVH`)I)rYAtv4^;g?>VHe=BzlYTKrJ^= z?*h2ApQR{*I8nt{hwJLpw4H~ zKeK-VmCpaH{VIw6;->yX;^HqX2axu`|EsLK{>9?8S5C*d*l3`}0Z`g45x(RDvb}rd zG@mybsQH8zc_7yhdegbiX>@M#K$QpTe1F_uwcUO6SJ#Si_!WOEpC8-#H=Z90ERB~d z|He27-*s=?gn9+?y7aEf3(fta@AA2AWHeCg52*VOsj@$XtMKK#43r(gT`@_D&ke=o0df#&+!-^=y3{_iYTl)I0l-hf(fKz%+P z=eBPnXFY-Dz7C_)oaHT`)Q1PH^#)|U5ZZsheab*BXZnF#s`2uHyGi6KAL#jDN%n!h$0sP? z#Y(~+#vM@W52*Iy9>(3&9=AgDfM$O){;VGNuJC;ixgtGm!mallzC--Q<2M{>Pj2e6qxEqW?hkzp{z`1J!?^`k!y2{~I>B zp&!Ce(CUBq5AsL+gZ_h7KjVMU{{kxC|AYRAAL{ivi9fXc7av-jerWCaq3yr;(Dq+^ z$Z~i~2Xg<#hc+MiP~*qvAL=;gH~zDH?sLyS`^3*j)-E6M`Wk=4c_mP<+bQ`8ko|$_ zLhCq~eZ=w=P~|}Dyb{QIGx_*m^mE3))GzN1SNyBbdDH(Y`?>O8rib~H=wrJ+eC(Fr zjCKUA@##NiJIwmn9WLzyTH7Zzd7%288x8z{W%a;xc-sHYm_}B2e|^g93f8J{laz_ZbsEIMDejkn10V znVt_0&Xsv1Q2F7I;NMbyp!yRJv3MO44E`th=@6C^sPfqm`ddKt7c}R&L+EclMEz}x zh6cKBYM1~&koEzpT|YE92zJ_%p@FWKg4T7J%21XMNV`L=+(TKf@n$R^P}BWpR_@KL zeKxc9+04qfxt2c~x4Firj|@i+)BZMQjMOr|1>QvLZW^Zjv$`I#VC*oKD;^e{i>Z79 zl<#OHsnI|_Zym<|lMf5zyn7E6jY+(P_1i51`Hrp!&3;RMl5W9q0jT2#Q2S#}z6a|4 z4p8((jlZ`(L2g@j!iF z6R7X0wrm;bxj>oGU0Viv&JAciR|_cll0rJq*9rsqo@Nq;!6?}u6@{8Fi9^#Hs$LIz zlEhsWvL1o@ya*_Iqqjq=SHlS-G`&{th;*&oQ%2AqKZ4~1YPo^zXCneR2O8%lQ!X75 z==;_{l>>6T84<`i$R0GyHzG(-9-oZ}Hv6^gZ!vy8BGC7`fyxJ}e6&>{=cy(@(YFbx z`;mcS#{+d=Y;1Bsl>_QNd7#Pxxqo&m#$mcu!2PpESGEdd|7^5sE2}rd*;{M;)auET zuGQ1Lt*u;Jv%J~Xmf!eM6Wb5S_9N{<>;6F?%h{yki14)?eG|(K)bar3yMhT&%LCN% zWKDs5w>1H3y@w;|2awmlk<_1#{CZC&Lpym&^siEpkx8XPjq`%t)x}PF5e!dO; z0_u1kZd*f@kGHjPZd>M0w`G2yj_;LinIFjYwq9iZ?Kp1w?KnPW+Xb?&ngBID++NF> z0Cl|;sQZ+o?Wq^2@^LR}zI6LQ)>jjt(wXT2>bfgX_2i}psPf?sHKcz#1iHUH-of$W=y(fr)^i-3CGe7Q0)MQspH1$TGpd&VR=Ae8%(`9qq35 zwh5@?B~ayox~>eAefZIg-C3{RaKauz>API zi<}z`R5_s58&LJcdj&cV2dX}x&O3lAC+T7@-76TT>tuV`^wpe6K*y6^{0% z-#~50%HHJXds7eaL6P^L##?o0od?aTX%is8n6_5QEse@?pQ|G;Le-)4*FX2x^c%=>QO7j8qn19d)7A-}D& znehNx<|~QuJy5=1l!O!P`aZ$>#{}w&Cj^P;19Bcgep@nu`uqgy1M2)9sQR)AT2Im2 z6L>$H8!nm{l)gWelCG6+=|pRviPk<7gH~;yiPk<7t$ik1`%u1h#D2l^+CKYP`|M}! zv!Auke%3zwS^Ml~?X#b?&wgqrNr68=d;vASmO+o)?^Fz@?H`oBR~3`4`QNrb{ZIF& z{|omIW{Uq$?oa*9a5Km896p#MOPFQCR3Q2R%G0R0DQd;!G{ z&iAGNK=psd0qU>!h9eIQO5e{4N!R=zi;qa+hjV=C|I`D6JH`K52hx9kApHlb|3LMB z;eo+_#Q*d_`kx(0|AFd1Q2ht0|KUOOAE^EV#SYE~rvE_of80Upua6AZ9u$lK`kx(Q@qbA0KjQy}LoEIevG_m4 z;-B)ZBPIohi~r#yi~mU$|C22KCt3VYviP55@juDpf0Eis(n%KolPvxxslUErxN(y9 z@9Owe^}D-glJ@@v0}rMD(VOEpznu(ukVLcEWOk8gI=h9nEo|J zhliUVhnpXV2a7{_PlR;qc%!|^B_;>@Gx9!3YH|yW&P=Y$S|2?}us%R*zW{2#Xq=*P@&*^K0zU)=!V-eL!|}px^5Q%6JmJZTWJ;3CHMqb+zC4h;&Wg zlw+t5ANk?^^0BRt?*k^$@$@^kbfEeTlov5@APYmQcd`WyF{q~j) z)cOX>cLS63MEYH^bfEeTlm! zim5?6#_?KxS4h|VUOCm`dn)}7Pd2?L({Ip>@000QZ0SJt3#jp%p3M4McCy;TdCJ6% zCkM9`?dPOx_6MFq`w>vqcj8lMAE@;L)c)g7VYyRF2Woo(wSQ!%(Ei(}s6C$>PG|`p zfPEhkYj&r!(5`P`xziTf1!{W%wSQDvtUW9}Bkh3_|IxTQ|A z+Sk%k(jKV&F+0uL_cXQVbHfRz2d`-R5^Hv+oNn!Vy0!1=w40LlK<$r})2)3iJtK|t zkhQ->?|(*bpQZM3E-`V!+1lUw`O|zh{h4w${qbi9d@ug&VDP^r-p{5# zK=nsx-QV1sK0@TebLdZe4*da2eh-xIf<`mWQTyH-t~f`>r+)r)o}$ z^nQWQ=i)E$xg=1Y=e4C@(E6)l0$QIN0`<9J_Jv?)EyowEp1u&s{%jAv)Kijw!PeEQ z`lqXWG-JB@=e^;I={lbE_jkJaJKg*}*Ze)#{5{wFJ=gp_SL?SeB_=@nYx3E-=I^=Y z@44phxmu4&ey;gj)qkG(d!G8|z2S=Ube!vryYnpW&a=2X&*JWj7FS=ixceg8IR>q9 z*PE_!mwnOvA|K~32lD;a=S~L%hLz2S;4>2;&mzb~18Uo!tL zF#j$v|1L29F0l9^Cg}y{pUGzzn12_Te;1g47ic{t`32@*RsV(N--YUr_l7Gj)ayt8 zcn2Tj(t?#2S{z+yadeTz(M7@Mq<-RyERHU+IOXU1HgiHz&r5Cmy42dUs{b;Tk7it^{&{b>;xfHn_xJZQ^Y=3Icc%F})BK%j{?0UiXIlIb zlXRx}Yx3Dl^LM8CJJbA~Y2(*S^S7$so4;QD^WJcU*Xww1|L_)f-r~+%+|9DMn`Ln~ z%i?a9#a(YY$FEuD7x_M$W#iW@wdZrg376}2y=K4pa*MOeEzT~tIJ?~9>~f1U%C%*e zTb%W#bNsr(;_C{FuPbc)x?W3W}AO=%)dG2-yHLA zj>Qi#N#~en*93BYQ`C5^ z>hYoBv}?7UYI@^qS-zHQ%jIjkmU`1`sTU~aZ|k@=kn@(JWz^#7-MPKH9L;Pipw*;u`KdI3`&hw29ujBO>+HIFojtd?j^kl^T_ETAc;MKT zM47)Q>GgIWa=nfZNoI6@eeeL{G+FHwOC_>pde~tM~OcvfjgatmkMR>k+8+?u`a&y;qFR=W$#BYQ0DEIbHyDzXy=d zz2~#u{e0FtQ0v__xL8J17+PI@i#FYsP{S9O|+BW#Civ6 zeML8OJO}E14^Zp9fGX#2X1xQo-hnCytfp(dgVuV_Z)Uv%*^alc-e=sR_3XXjid%xo zvR+jo*6MpD9#%`-`CD0DAnW;7t+#0Yt<0AiuDvxlTJ&VZnx6HyQcrrD#UmE`<^C76 z)PJ<>Hs-4sZoG}_u{p7(XW;GT&+S|f_P4YBDz^vvon+wg@|+*2&rdVs1ONOL@C)=O zedtz%Op@Qu_2%dfqQAq|neQ+=cbJ_!g7eglrDw(m(oQekBzgl0{6aiOfLy%L>@4KEA86V! zzF)|7IiT`W;{&;VO}+;`PWB;W3+YFAH|+t{-iW({)nYHYoA!XRzUhIgH#R=-0pSCM zFG#(nFEf2>OkZyKfU;icfvPXOhjxIvt_M_oK-K5(QU6+J-4nd3^>&Zd-#u1;M(0LH z9h}z!S$`c?e;rnT9b8|FJ80hTeP4g^R5I7Fqo* zvie&@d(k55jg1e~bv2;s1yZl+%S_)I)0bO5p!x}9{oQNzcQ4nq!h5L?$ojii{cD|d zuhrkZ!R`$>=c00Npzpx~)jm+aJC@%Yj5%NW^Svz3hI@n8HBQYA_@dVXzYRS&7nbrs z#?O7hUql|X-VXs~UB?48A5inf_i=w0Q1?>-wLJbl?y~|aAE^9_*#WAZC+`dXqw#QG zu*=7=2manb4^%rqwUgh+{bE49PKEcYzpW$g4XE?Ufb05a|t2WLtCcroQ$7IR-UXx#?|WO*$;Sxo(YvD)=OEeBBj z%NBE=8BoiS(_ZU_#lekI4$!RE2UM=D%noR&FAr3|f$C56RjZe;TD^QV_`c`|pZj*d8vKvZzm)voYknZh zWBFstKlQ7@t0E6t_vHXJKk#kI57hiX&7Xdi`{IDymuYnNRqpG{slRo@SA#!Ee$e#$ zLB`4W2ZJp?5x*WJ-#Nn>Ep*E=Eo!E2lFQt<`n#K%%3IN zAG$l1l>J(|gnq@3(ms&==TYlFk22jqYVq)>?w4(^JgV0>%x3SJ@c0X*R~jMJ6J7-ztr;=arSrTvrKhE4(z0LkmeQ|i8U2ZuS^F)s_9GwXyIT7#v-VqN z?YGR@kLWAQto=+LG~3VghRa#rXt~*2Ztb_++HbkF-*Rie<<@@7t^Jl;`z^QjTW;-V zayj(ks6Y>tc8waJ(E7r8u3Ddd+7rR9Z`SGeEl&guIBKJ}|2<*t_(ZwB+Mb}j^a*Q6 z=EFI#){akDJ2IaK|8{Lh+VvIEe&Z9t5%v7&>ElP!*Q`DNzxLh+%8si#6RmsuPc6w- z$!f_zvK@ILCGX|899kjo@^#+mX zndLn8MwTn&E{C-@HGXeUIj3%_))!>9d!V)J1z@H9Z@kINmEPp#0leCCe2eP!7B7Fe#p@I3_VE_=uUpi=Zc+cbMg8j*^{-pJT!qpBy??nr8GAFILx|tZ z=M+x7ndg<`YRFyg@yIuOe(_uUK7o9HE0qkS9NxlmJPG7`VnEhEkn8_}TaID<|KYc& zoWg@|W%};*+b(ynf9S2cpSSw;i?{0f9rt_Fj@n_z{VmAkvF(og-$44=Kt8WR=K=XX z9B|R*(}4c{9i@wJ_2a--+c=cos_Wg_uzah4et~mk6XEzNq8z+r56%w>KWdIG6#we&5b{f)L)` z;J%4%PnQ8LzX0TSPvSY1W3KU98%H5~`<+w!opb-OBN<5lub9*OfpcDuki8z~++T;x zawJDQf1thp5r9mWOAn+TX!>O9JN$j^RJit?jsN~%!MkF|?(^UHPR}QOr$TtM??uFa%@0qu{*~vS3fI1?@#nDf<#iUO-sSd21B%IJ4-Ra6 zm#+UVUC;F)mA>;Xe?J>YI|yXCBnKeN6~DW2j=e7dWd8>;9nkk9e0Mk9E#HT9!H*mA z{Y4<(0|8q5#=f-vzGCOy{=PVn$J6(yp5Ej2)P9fND|wIi56JdDN^ zuA#lR5P*FCK-O2T^NKRR+q^$a-`4nw@z>-wzkcU^s_*xCJAlmdi}y7?YWV~Co=p6H zuOFblU-f>TmqE621;fuwe*CD8AJy@rjaTycQ9m9Zqkd-Un2$@4ecVDN;g==H8qc?K0%;$nk2Uzda-Yoi zox?F*=UC(au=E|tK+1*AU-au_kQZ^E0m%27+8^}%XFurWfXw%nfGkJfabCaU>9D`4 zpEvhG=jX)-`Fu0rFW7h6f!0m~(Ar&=en|0x52;;zNYCqb&1c{4`DM3j{@`|hzbU`n z-**D?eW&yePq*U^pWn#u@b(5|JDPhGfCVCm-?loE-P`)5lrf0NMSP<7!_zo*h?x9dBG<*XbNrIdyza$D!x(Li$DJ z3z>Ea=e z=!E-!kbPged;NOhUVje^NW0s<*U#@m-;d#5UxyF9@6Ymauiy0Jo?aM$_TG@8mD`Z} zk{$lI`w1Q4+E4KQyW>Oba(8^#_zA!7^b?KKKaPF@wENh#{S%EJw04raJTw1^Mw9*L zZ~Z=Z{H?dkv?rVW3Xu7}V*77pA9Q?H>D!<5^JhOP`}9fg2hg+r`;MP$*UOcD{*!Jm z`()b7LdO?B*9a7=lytq?E6gI z=jG}%g+_<%YC-MF^;u^@?MnGW z_I9oYsa`pnvr zXHU96-;q3blFu(d_Wg<;^!(BX{rnvdiuXz1e$aUUkURj$>vtaHb)PIAbpId7`iVcS zcJXQV|C3L9`GEBQf$snRo$F)A0JQh*4DJ36+3&ah9rMS&l#XjpH69qm+ow*|<`Yiw zJ{F*_&Lf=i`prE(_M7x_OUC|^-fw|?4#g?=zkv3Bek(cMSomAC7hwQ$z7fduK+a15 zIWGa^JOq%uIh-bc!Ty!bn}M8HY@cR*1mI=dCq?pkMU88Y|l0a|+O&*{9m{fPYTM;d=*yt#P9pAV3{8OZ$G zpY!<7?C1P>=bvkQ1mjEwWPbtvPslU#I$nIv>o@uP#x;1(8Ibjx{=N4bAbE56d#1~P zmR|s}-xRJ7z{19VAj^?H>g5IcJ{6MNk17uHsLvndk9s` zflSwt9!TB{G<~w^G3{q2Jo8xNgRoDbaO^(+(Zcgd3NI({Qsd2`5RWMuFUAs%tSI>W zlTD9%K8bMePG`?boa?>O^G7aPBA z^#b(x+hXICS=D+Cm*;(}ZjL-P^ou2Xg0bYl3I?JU`p7iTaKk4H*KlO{AK9?RyI|pPw@lz`A zQ`!gMDZk(Fl=?vr{r&%^+@Hj8`jh!nUjF1u8aKbxcpk^iFKOI#eHOl?{J!MrA+!A1 zm)uT6wsA2z_9gFMxp4E-ypL}COI+@@zb#MueT1jozW`dkyRJn#KBuR>T%D&IV^%Jp z@3-Unta#eX1@!uS+RFo(<8=CE>NB9*i!XcqLgv0&K&!`O_m{oCgYbkO@0L4vxm)g2 zeqI(oocI0J30M~m$wjZ z{tE42S-!Gd3)5ez`bAs5;`tR{@p=UQq17Xh^_YCs{Su(<@0bDU7XewH(_dwMW~t;I zUv+yOBxhfBzX&qxJ6C@3vwr^6vz{I@{h#z%xAQ>Sd7%4c&+@uYcAj#iy?-5mKZs8*7}|NQe57gf%$YC%>GuHbxasXWrvDR57mqe= zKHHG-Qy~4EWR&+8faIq@o*zb=w(lGEm-O^N_luOiJ=%1?Na=H>1G-=2`sDN|>md}v z&0|d)ugmro5|_(%c3{hx>SMggeF>BCCg;h4rEKGWD~$90OUxj1-0X}uxt}zU{1^DV zRrcQhc=OMWS-p%mfBIP)|Hr+4i}5D+mj=?F1DQUa@bo~YpPKOW=|uAvaDE1SnPGdv z+lMd!xo;%U>d|DjkJA&p?@$OgFKdo~$M)*MiP`G@fB#tvyNmS`5lnu$fXC;z5%I^m;3oZwjUt%iS$6W z6QJpn-OG93AqY3GXucWsSk^;%{|nPAnt$>l#2t66XmWr1Y(*2V$ankA!t9FX#a4fb z_oM@dR;WBHo80$4Udi(^AlIGt$y`60u4Mk$@3P77^5iR-UskO2=LzJ#^FZ4NANyW5 zZU6NwImeF!c^qipeF#7v59c)b{iC+h0htbXiKPQxZuu1FG`WxN-rcgQ{ z<4ZuMOIJ6!UwByEY@+;Gdv(+N2}9q{XtnzBYOkM859xP6wta^JkbXyep4aQ@^O}oR zuaH@}PxZP+^}5FGMZ8A!x<>W7M)kTz z^}43XeU*zfs@FBD*EOowsV4UwPp4F`Q{HdGlUEv!bsg(5r0beD zDb2;mr-{d-fpq0;LE3YBns{mSm z%!>1yzkvJ$(BtQR{%GR@-uIS!E@-}C(EaBZustmRdH=wH_ZeU4_X*^E0$E-l?^ALs zz0mJdm;rg8K;9>i=K*=2lCyB3-zSjw2{ii=fYvXv&V_z|K;9qF@)>>Kg}kpVH(b;_ zI_Un|7y11Gd4Irx_m^Mf_Xl*p>${(MrGyZOvq>g8!)>g544pTnLmbR0LFzLd|Uaf#Jh6kUn4p2cqj zf8X}Yjp!v&BmDbo_H27Gz8%+l9@5>ou^E}ZTkcW6 z-m5XJ{Wn~10cQB${a`b??9|U4u`3^NcNqRd)4u}%+=uhA?|j7e4zypE`tg|^e!j_; zPu6jLa;)j!Y04cpVDG2?`;PQHCQ*S_UsjK2fWL=&eEQ{kw*3}lt5=JHBTN^q##(}F zfOh|^*Yf^VuUDUFM5nEO;g#b~;d4uHFL3jr(fP8~x7uO<6C0f#?1I zpk7{$x_G|T3-B9hPu8yNdgXKdwmo;$kNJOJZ+{9qN1|i!Bg%RUsmo>k9oS+ufPNZA z_*}rpBOgDcZ;$Z40+4zj)8`}J-+`7tcscdSX~~7-hE1c@ezwxvouxjAdVT}y{q?AK zTQzR&^J~@nRrfTa$I*YcBjGc^t1vCQq5=8AMl=O1?dR2-y`35Ixdipcy-V~*9bd?* z?dHIY>{wfN4oEu(q@4q@K010Xb3OY;JC}^`c_mv%+|H%K6J9^v=YsmPdh9-zqpD}r zquHwfWc>qqy?E503y^vs_35aW56I^Nv|qAYa&X*mxb|FDdHq}Nx9w;|Z^d&tiRbbx zo{K%F@3rUB%H1Ai!T@x?P0tfD=MjKU*t}7p=ey|b%H(@tQ?hu37=Zp9^n8Mz`+hy| zws5W2fA_h^E_a{%sGego>dzg>e1Z1MQayJd^+4*|dhS3zccA?eJZH)s#|@{e&;1HK zclrq!2h2}+!?H#==g~de@JeVjZ_mB%SK#*UMn5b4l`p{mc_-xCu?)og2++2u7#-`{ zoASQQE?PPp?-qcUoigbp?d8ibPMZD^JMUqW%)hYGn;-1?**NjykpcN8$`{8g`9g2+ zKP^E2Ft2A4uGgpEiAH_dDc5(ehvRk~8$Vt-=z6KHhvSv&LC^buK1Ds8bssox`Mnlx z#_Fl`v#!T|{t^7E*Kce_hhEa?>hC~3o1gaw8%ODX*>k5I09KxRPFWZlu*Yi7i$6JM$_xPg9 zt9DmFzQ@Xc8ME!${{`s%I@R`R>3P38zm<&eK8k6#FQp&U?RPr9faAS#_4O|tH~UuX z7>RyyKsj3Ji1#BL|7km}>z4Ox{)C-(}!`e&UTqC(Jq79C5{hlmpE?ivX~u-4h?G8ZJm$fmGPlZKX81& zam(*U_-8hPmF@k7g}38q(|BaOvgEB-g1?&oWVL4e{p0Yf-u&Bpw!IY!^RvDlzv?1f zXDNU8s>_?vkJ$0cn$gb!uiD;>wwioJGkS^1*Pdj@L=H zj`BJo6&@Uo+E{N`x6iHiD9gPtI~rL$r0mb8x1M48OJ3XaFHHZM*JHjI`nO*R{lg}q zz3-EshH=@h6Y^1hmpQB*i)@|aS=Wun{JK+P(a*l9@4C?2eC`7Dwm$5#Qzo6HTv?w6 zAIpAOg0_M8fm`Vq%bN)U(Cc66Ap3i8V^RAHu;Y+@o!OYaCpi}V4(c@vW6{qq*g6l# z0QBeJ`6S2uenLLx_qTJL<3V|UA$7SNw+?K4(EJng69f7kmV9>o#PYuF_>X;I1m8n%Mt^F@ zPniV26?%)CoBl7UH|ZqeW9omY`o)eBUJu`CJR1F*ui}04nxE22M!me#qm}X=fZu9A^Ed50YuCih zW6}TG7|^bhG37H>%cs|V>^y5f#LeT;FAmIST=|UG@=-fD?B|7!aP36&qCxi+Pk264 z6V-f1C;Yzl`+10m^ZamTB3gsl;7 zUvgM-$8p2h3by}l|2ij%{t)xSHb3h;^HmYL4*!1L&PLRL-hMB{b1^?LLVxWaN24+C zujRN};vMHk(NF!RkFS@&PyDS3pI`qWWN{1f{bu;GCLZp`17!Op$0X;D8^$Ip@t5miuFCmo zyWjtUd3!tWWB6zD0^dx#9vkEbqa9kk51N-L+i%4`M*32}RJ*q8ymm{q{k;(5@W(OV zUhl^??s7f}4_fn2(XW04^9_*gIeeq@4Zo=QhGp0`!lnwoWAhHd>*cQBb-ve~kH|G2 zF@HAiyJ)~X*#gqpukK=-1!rdBlJA^Eb(`U;cyi zOSt(qUupgCwtwA-ZtnBDFhO(nIQ}j6KZ_gK_5R?{IIoBG!J6j~Pljy2tPp<&((eaS zpG>&F0`&P>@szESQ^yV9KmGpN9hbSkZTD&R=9Tcn%W>TN^5Hnn>SbJEIF4f;Y}#6i z`8mUJyuTk^kM3rCtn5esVzd!`{x%=44}2T!#U%U&yWWQo_cNY$;FRn@JmGc&Nc#Y^ zUzSYxyc>{uAoW3Z14z38v|j={LAfovaja%HHe!vU?Bj97dwvggU++4gfNm&HTR z;yE?@m|!hOuP`hc(QAPJ39q+Ux@*#=uY=p+>)lT7boq9m z@r4%r_%GZz5}6-=6Xq-6$D4Sv)t3HGo6+0)^&RQo(Tv{Pug{y&Qy)b>_co&syWYf; z=C{A%m!W^M8J(d1VG|Jt_j$Lw){R7;c0B{(7Dr(|yGEi%`|}CX|L#ciWWPQiVfl~G zW4_PyUVPY{k?2{IVW;g^^3(#xig^2LMlg??bZwexLW(jMIL=~1u$GGE9)JSbo22j*KlzZFLLJdS6h{ya|c zu|@^tpBj`e^q#M$>(+1We2WiQisQ4R{yfWkA^+l_e4!thZ~grF(dhr{JKyGEO)j5* zS)Ni~ERIG$h<;MG6TIg{`K?Wk^cNKk8AQ->7_4rj74AVOJAn5ID~bC1swnQ z4$Px^x9IXai#ynPH|`s&%#+*!x=j0lINNo58eF$)Jm@;y=PM!Kh=@t)@Jk{ zV6V2nt{FZ5JiA^q`hQJ+Uo*N9Xz>TTpR3n;oXgO7uA!|TDC4uXKJaVBXJ5O!Z{08E z>Fig=5e&H=4#;>PkjLAKGt4U92ifu|<8g+z?!)47j5h&!9+2@qAme?7;&+cLeg~QH zyIAXCfVK}Q-s|)D-G0UG+QJj)Ke*qrJ$Kt%t~ed~M}@y1^?ubV{P?cNUAFibeI-7*QT{-RcnKQ)uI=N|pP*eOyZyQ$ zjC(xq$oSxRWk=aE#>-zVMNB;xYH~zx-Wjx{WOJM-A zJpp+hknu|(pBIqv%VdJ>WoCMU{lWYi#xGOH0Q7iB&yTTqti^lm{oQcF{h6{|h1}(` zeH}Qe>lgB)fX=hZaxHT|3iikSE6o?DnlA>@Zvxsc*)2K9ULCI4s~^CU1NckUi#`oM z>N?ExyaDq({~68K_}CzO)gQ04_~k+P2mSHPetUM!kp}H(I5HAlg?aGqeWRb6+`aEZ z>c@F+eXt!b*9V&)VRk7K1|Xjo(0-<8{|8$CH~+xe>#o)6hskL4&?{j_fYuN3o-g}b zmU{oUxc!}scY1nT_sZ)B;Sr1r1LhT5ol%x+VGex;<-4q0p9nqUEznouEr(Q|-1S+3 za#;U>z1VH`AyIt%^0Dauf}HFh<8>`A{u*3AoERIto-rTua?E2+zP}vMv)@8rnV0C( zSM0@6w-;HVay&j3J;r+X^G$E*ld*A@BgE+cT&FbQ@oBX0(aZ3hwH~v4zAd!#-+v6_ z^!!A0-_tfun}m7Ovc1R4sLy~ui6e%V&hTZBlTFK*Z%BlQqvZYVsqJ!ky#r+&C0D-y zTKWLAU$SY^xDKQp0y4kTk_*QTn^so+E8Nt!7x;Qsdw;4s4-G%f z^w*`!IPYw6H2Y<3Jy)RfL_Js7H_9E^yVF&BcO{%G^TVtTFZfrD=yUMTe)Q;`ZLdVL zH-BxAz3aDUL;vi1!#^{-%kcqr_W`rJ@tF6AsWFY~?yuSUQ{OjIb}^M6Xy2ExbxZW` zfM>3<_qOHV0qNfX>E9ieU)K?yS;D_7WUm)%_PS4BvDc@(TrJpPyPr(BYxTI_S2C`C zKJNFGj{Eor)^y-zp|}z%uZDO zO6ciVLSOMKAy@p$eY$=}*S~eb{mR_awF>!_LhN%PKSk$3re6tUeFEuM#>>?Hmicpn zOusU5v~kbp&3b+v{mQUReze=Wo_%(?XP;#^^JSXXSALNB{0sS&K=(JL$N1>)XHL3Z zg>1iMtK`&i!~RM7AEn*C19sNzsoB{N!OlJbJNvI;XJ3uxYIgUZx}Cl1@n&=({F?0# zf?or>ym+&CF_63%NM0N~ZXEV5!Had=;>HzTJYzLv_ty7vja3 z2dePmQ||A!Vz+B%XK8m=V|~B;UH3y|chjDIb^9c{8>9!ieUjbn$nFB&KFRJvcKalI zn+w;vy(;@j**{AAxiB?e^^;@qUg#@!chv1>E0Nt5?z&udHA`GtoqGWj`^B>hMx8r`ifr+xniG>_WWC)&yszPm-&2aBKs^ff0p(c$a)6SJ_A{w zK-%Y2_IZcwGi3V3LG~F)`wX;S0{&0GxFh>~re>dunteW{>&KJs7Xz6e(0*AW`wXNW zNPUof26DauXukx0u+K-xJ|C;v=R1DX?XcNrdoOkb>)TGjK0g5aZ1(!Q%|2hXdL;S@ z^OGARc-OMePu?j%8Av}FNI$tPKl$JiezJ})ApTSFllN8qV2cCMPX;o61hk*|!SpBR zSwX| zJ?0rIelq6X?AJ=tj)%?T`+3V2rhuxo)pWK!n=>DYqV%PV{u6BC!4UD55lU>hc*Vnq;JF6V= zGR?aztIl^oPrE+lcDMK5pWExpu&&2`2S$7LnRfm1Wj^1L%B~05bzuOqUjglheLLN* z16iLy+V!^V`mF3aWZLzP>^hM47HGc&^SHF@h3xufx3A^>2H0h@yCt7Huu*n8m0bri zKcM}xAiEBv9!Pyhb{**R$g=COXWqndx`aeB; zeUioh?z$JT5Fpl9nRv2)y-sD_(lp+O9kgxz1G&m~ZWTTL;8^XKU-0AP-!(1pUB#Yv;Exo^gHAd~Mwl zy~Qg+d2v6yI5Pd1bN`PCFlp{TRY#zPiq**r>k*LTW{1HJDXQ5K=1jo zId#_!S^EAsYLSgq*Fy!DyY|M57uos^TPIb_j#bw~wOu|dz4XO=Z9P=J#Cj;{i^V0@ zLls&Nh2sO)L*Y2rLxCUluWy<}HQ2hzSBI6+|NJ+IBLL|~Wh*^C2$}Igp#74=D?L8g zS?Te?Gb?EyyY{$nxqH8-{Jbna$Ne@S?J1D?ZIYZgZrFWJrF>VSeC7KnTQ_4q8S50j ze}2!lm*Qkww@|mQw$GyV2is@S;+-cCx@`L_nq1CPUyt~ry)Skh?EM9Z3kIP5vO?nk zkmUs0FM-|na_fE7t<`bh${&|skF>U){-@yI|1TfJ{*Q1^Y+sV0fA9YP(7)F__|U(1 ze$yWM_w=uC)x6C=Gyguzolj)&?>X))dOWg}ThMcz4bavbW$~oul_q`OKXEi3;PXnd z>V()p`ti~VyD%Q|p9QoM~?b-Gcj3f3w*l-*fjw3dY zVCw}9hx0_^(I1;#7%-05{FBWK*?g0&Q{j9O(0;Zan0g@RixSNj0Xbg;tj_~+z9`jv z(RR%jL1sE2=aqn*FWRm7qM-RA#776t7j=5^(aQQ5=s90BSDP<_p7TY}SLTZjogF9T ze9>vm7ZsW>+PuVkQKI>x>Dqh|^qen(z7hw3T!{m0)Vxo+OzXZiUlcT7)Yg2F(Bi1H z*FZiGAni4f^$FyBQAgv#oaT!lbG|6od=ZfII6&r8XgrB0eLR`+`5qfLYRBznicoNsfjYQ)KkoN`T z^@GL}AjcD+{gVBX+Zs=fRmYRb%|33}c=D^i)`(t;@#J6Pz4|wx8`${ry*{2?jrhX{ zU>{nTU$O{r7{(ul@dq^e?t8?~5q}ttD~JOO#}(RH<0CfSmE*|Fw|QL2+LIjT0+8bX z(0&Qx5#%qq#+$Wn_q+ThcDc)6Mm2sU%RSBwtc)wE#v35@K>OK#ZWgy4w4a;VQ`^VQ z%cb3W_+b@e(XufZS zUk5Vv$qFAYfj+)UpRQmz1JKJQeOvF#0Xbd*?Ux*u+|m1Tcz@0!lx5s%@~3@VwDIyM zf4vdC3ghMeJNIn+1B{n8etx%)msedr5;d?UYWrm)(du{LyJ?8u+5KO=SL@1vTvrA( z|HSm&t*VUTA&UqSlu|=K8YO*M;G` z!oI!?$aw=G&jZ@LLjdwUj8yB(wrhPEWUem@T3-g_`m$W>%T8-uSs~oK#QHML2U=Xa zvc7Di$GPkKcJJD*^<_cp%QCGmYxmZX`FdDCKkG;jhp%l80OvVJ-S%ytadIjPnc?+ za7S&P5PHrNLSLCDgj|^?+@g89@Vz}R__fBzrTAS7;~B?IAjeH0$4wx|O(5-xj<*WU zTLLYetzWS70?@|KELk3X9`C2_x_r5hqmVg{rptYPbjNZZMS+Gd8a4yla<7 zYhaI!2lBkOkBb?Q>4BEs_~3``bhPrBY<4UeTjAqxyu!!doj$I0$KTZD?)bY!<6~Ii z<1dioCXn~t*7ysg9!Pyh<1dhUAoaP%Um*2B>f@DKkK*f90%ZFoct4%vapJgP_sZ({ ziSKHtXg z%nirq@96yMaD4XhIV+a4-dphsUr!?pK<6>#c)7ykpU}JizQW_PiI2zSzA`1+{xZhP zOg4UQ`^&t>z500ulh5Q2`$916nGK}NK4{bcB9!Pz% zQv6(c$keAR#m}XOOnqDa0nqum`~$3irQDH!aJoAF-|<2p=WYDAeartV#{aAC!uOMH z{D(g<9RG*o|8V>tj{mkFTID^ke`@1@Tl_rNx*eg-H*;J7(oO=oE(XYP0myYbMQ=T) z&C}WZH0Nn!#WjI$pT%cWUx#D7nCn1iwQfhU%_no+4v^zWu5~-{a*bP#0kV%<<$UdO zja%49jr%_=XZc#ma-Y8jTDgoLbN(8#&0pL4O^#bYmJ?_{+sDo4wXqKy=e3t>UVFLb zwRK&jv*WFf$_FGr2a=xy$f&5@)7; zTs7Ip|CJj5C8xFVHuT;*vHMMqtyG*FJlpoqTrAY-r&kB z+#fK%z`iqv?>dC{!!P(TbR+xT$H^T$|+V*CD=aelX- zJ(;{H?Y##yjQeAM@^U|!GVb3V&MW+5&MOT4hj0Hp1J})`XU{X(yhaGMd4`VW6M!C9 z(0szN-u!~;H;h&16Uy(VPQD_FY+nrX7wkJme>2_)ufA{3wm(BQKacOTb>|iO{Dt~= zJnH_#PV8f{9Vh+<@T$if(aTMKun`@>caW}H-Hfg?xzUW?gtdrQUEYlTqsf;wqw6jG z_Ga|QCSTEv4w`&zGy3l)|9Ufe9njYE+5RI}AMx*{8QT6shPL03q3thZX!`>h+V{%B z5&s@WIsa46`?Rng&DICncX9gnZ85#g7n;8M9S*H$%Uy5do9|mVrtffI{Tc4v_Ve}c zaE$9a9R9tFaKgWTaaK97Zj9xa$9HN_p6>TRp!fAywe@O!`pSB>qrLZ2y0xvZxHr}TbktnViPExoPxvR^Cp?S{aSpN&p(@tUia7b{S1?A|JUBS zV_WBG^UZeL)+1X!w*Hv+3FLQSfcCTZZtQr-g?R7g=0Vqu{W~8EQ_HK@?RyW0`6tVx zr|{*D0JLAZUw|RY1GM~YzW_s9e`RRj|FAm=_-@F+@2%iCzqbOOSoz*c`F)UNg@0cK z$nUN6$^72RR(uZ{-*K_|VIsc&QTg6V$K|q~yWjsPw4NEr@2vpsmuy|>GUj`!KZt#W z`syvTUGC<$PjObnRr$S@LU`ny>UZN{FDu`TJJg$>wf2_9=W-vQ0K6aVCQHucK3_A_ z=SEk((bmPC8?FBpyw6qB+wm72!t;RM_A~33ZJ)66e8a12=_seVF7V~=!1D##FKg@i zvwr;`WTRZ+3S-bY*I_cgUDT6?R@W>07OHceS zx+>cBA8;Q*`fQb#zb+Rl&*Cc9^9+#nxs*PM^;}|4KOKAeG^YKZ*%3#ZKY{y#%=ccl z$I)ZJV5q!jLHYHuXm2!juo-nv3RxH z2_Wql(4X^aj$bpgtD{d~EqbfHn(33%tJz*dAv}0qbziZz%e{VpkM!Y}b?4WC;E^!B_a`U2bgn&^!1DdCq{Z)?21cdYS#km|g!hU4%|COu^4*IvVMd1h96 z$kcb%_&9m%n&?Wb56vL6JKVF6ZfHW~X%hsp#kb9OFu7iuacll7Uvk9Txl;n)i6qCaGQ>-@ZIo%iqd zy673~4LLKrPUo+a9a&n>@^sd@Jp|Go=E`?o`9ijQvqI^Bv|m8`C1dCF`Gi<_R{1O{ALyA6kom+HdU=4%2grPY%m>JPfGp3{gOL9eTVji(Yg38S1Y}U^$>PmRQ>)K^p)?AZMlfoX$4Q8?DylLEj)42;O~#+ z7y0+c<}a##e++tle+>G{b3E$T$qLucEMDZ_AA@Y)AIswPyuSeCeu6;zC0p0~euC+G z-%s$MA1~WgXuI6Ai+*0#S?}Y++N=Wp0_X(e5B z`eMo@pNo`FDPIqMXFSgM-5+5+*#qErYd*DS+h4%lF~0Xb!|x6*!SCAQce6Eq2ff*W z1?VgMZeQKGLKS`oJ^3BgdlK-%S8JP}C02xvd!edKpQyUvq9@;jiNXFTw| zX6MGl>tf-~CHP$`ez&8>@3x5F1>eWh-cKc;0+Qdg#qWURcR>3khsEnULhR!+klz)$ z?qcn_ef#>b9%J!4p#AJU9P&*d%L638+bVvSir?kpcPEzMcR23f)2#8k^1anq{0`{f z)9lIqJx%etM0l{q@7gtfw@>S8^WOIz{d=0?cbmlP65-w&zY8^fHzR(B^*#PQP2s^B zziZd{-9GU<@ILap;vDy9fcM*Y9gAO0iQhq{pIXz;;5hwK=*jQ;Wb!+mZ|TU-`qEKO z#P5LgkAQr>LD$d3?|@9dl)kO&&-QpA%Tvn5xz6u^EZ5?>?*Bn1zw499?*^o!KVGJb z#oNFO{r+omB7T=jzeD`4F6ZKR^Wt|v=C_nS7QdSkzXLLTB7Qe5UIv-G>~it4+VKFH zybNeRlgZ11_+6%aATyt9l~3(>fXsY=%m>JPa`8JL?N|}JzXJ4mDo>vU@w-g?4zi_B zj)~Xh!o4+q7i#=&M*OZVKG#{A=UKbRV(~5@`5ln_4oH3nB)?0<@217qAhRE&;&(fw zhfIACZ_A{IOnqDY?gsHY$ZSuu;&(tk#{qisyTjsj9pRZZ^kYkZtMs#4#Tw^#i)*U< z?i4o0$FCKO-zDOALHsTgziW%n0j*zTxnv;uT_PSfEglA$JPa~<7?3>dIgXRx;W+tS zDxMaUZ>D@9GhfKe7s!0e<87Uni{GW4PLA(q|J_RJ70@^PC$)|wiQ<-=fWb!E>d0DP}fXoNTe1Oac$b5jz zXI}Y0WdCoeMIE`C>BBzt+0^E=4)OE!t$CE|B`Yy2+M_}z^7U0eKa zRy^(o@w<-rU5)o8$HeP$;a=xurM(Hk<}#VaXlG4dQ9#J{;Kk zB>EBXyX)HGcR)YSd0yybV<8`*)=Z~?@=jB-Eb2r=^+lT*q ziPsgFA1t3kS^urCgV#M`=aq3A@w(*LSY-JH@H)o5);fPXEB{!0ZK}rCpf`JC-}|ia z#!>OI#PwM!eztwwpm;-z>VT{LHrO%zSt*|FXH`7#sS;HGc~?g)cE2lTe6cPkOT_n<(g&pn zpYwVZUu=sn&MqCtv-KinoNviEUM{{kuY4erFWw`*SUVmdlP?18XEOO>vfAw!kajFp zJP=4b2DD$6i!aWLFG9BT$)@u>9+(JE)c9gv}`Ts&}IddQ|vPK)Oi!p%#>^Ag4Lrfc!Mjf&@` z;(I}SuOq%UC%%{W_#OFP?7S-jlJA9Yke4BSowt$ifwz(GwZ+>y%6CqD4>He#Ouh#s zUn`I2Ixk+wcwnn7z6a!ah~Ke)cEtC<)BJq#z30%A@8vxnM|)N%-$msMnS3ukU+W;w zcl!g`e#s`q@e<*QCHP)0z6ZW${H7bvgWlsnHNJOLe6JASi!bna-qZyi&x6eVk|>@B zq#SyDj(iWY{j!eu6_ET2NS+3?UjUM)0m;+m#M2;?rvb^+5J$7)8Ibt^znM5(mM9+} z^8qp+Aj<<}d4Md>wBmV?SstL3Cpj#>*Ad?f;(L2*d=L5x-?U(Ep-wWb< zNBnr{7ln??-EsPm_+Bo)SBu+ah4|j0c;MrT=Z#&gIHK@~^R(V|T<%>*d@sM4es}=# zy-uM0vO+u%NFE5ZUxIiXK+6y0!N;{sz46!{Bv4hhg7%-jLUg zMT2;q?JsEjXxFV{&KrQ_4bZeY##pybefS2PCh{RX!kj z9ngNsX+LiJ=aJuSUV_&p;&szCUbnHgp40Bn_R}M;1KQ8_)g!M1vOGZYy8YsHZSlHT zyl(9hybj07>+t?xh1ZRWf2HDeK=QginY?bd_*@X4sPVeI#_NtM-?+DL9^-(J?U(Ep zp9{hxHD1@L@w!7gZ%lkH7M`f_y1d5gj*8cT?=cRT^x|>!gHrLT9f|`&rr%oA&)_(D z4fNz|eX{c>@iOSi%lgulJkP!}8G?8n(0*A**Pqk*K&D?xpX>VbJ^sh?lyV|o2V}XX z#p@uG*Y(Ndbpz6o*OlqgUVP8*za|Iqy0-MQ;&pX7ULvlyls;AZ9pZIB=au4h+0yYl z@;V(~GJe+)ubWdokjd+A6|buu50J_0fc7()ye<~61G=9oUYCg10qvJ{#Ovn7>mXbD zWK4W679Oebx=xMP9TKkt-y@HE4t{6tB1^@?faG;R@;V@S9gw^(h}UIj$Mx852Jk($ zlN#R}uG1W@)5Op|}T ze>C1`{PFu<(1_MAYlPF_k1vILVfz6L`Qz8mA6MhM?_tOvy*+-1xb|8 zVZODkxFC>mI3VM2vx*BsW*iR4xM1-QvwqX!igulEHNH4}&yVIHIka0`AU+C){$D%(n-U&V9mZ!B|wa|Li%}cCT#ky1OA2VHBuL`}* zD=$D_S+BZL>s7H%mG3zQtxvsH>s33FZ`FEL>=(oJs&Tn4bcyw<;E629j@o)v=(%1M z`pSCMK7D1q>K3h64T@XhyJuXl3YqIwfn2YO@11eIYFp*nTU)OhYU@>JwC=R6^{POw zR|T@4<%(MZ8Mg#-y(+Lg&bS<8u2+qR>ruHc&Tu`d?@u#akLv3#%lISWlZ-n;=6cLh zUkuly_OCb1+KM;cpm-zX{^P^-sES)6E;(F}iv4A>CEgPZ!}X}f%ffIy>em%-9Ii+G z?q82e-ibIR`67^hD&mp0PUEcjB={ubmIL^u%_k0uTiQ4j(zD~1+*dQy;+Ad2Gl47* Y(EVn`GxJ{j()7t`$%W#Xwf$}Wf8-gQ2LJ#7 From 2eaa278517c650580006adeaba4a304f70f18b5f Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 28 Feb 2011 20:54:10 +0100 Subject: [PATCH 102/192] removed build --- .gitignore | 1 + .../Pong.app.dSYM/Contents/Info.plist | 18 - .../Contents/Resources/DWARF/Pong | Bin 188683 -> 0 bytes .../Debug-iphoneos/Pong.app/CodeResources | 44 -- .../build/Debug-iphoneos/Pong.app/Info.plist | Bin 926 -> 0 bytes .../Debug-iphoneos/Pong.app/MainWindow.nib | Bin 1675 -> 0 bytes .../build/Debug-iphoneos/Pong.app/PkgInfo | 1 - games/Pong/build/Debug-iphoneos/Pong.app/Pong | Bin 66896 -> 0 bytes .../Pong.app/PongViewController.nib | Bin 3735 -> 0 bytes .../Pong.app/ResourceRules.plist | 25 - .../Pong.app/_CodeSignature/CodeResources | 44 -- .../Pong.app/embedded.mobileprovision | Bin 7780 -> 0 bytes .../Pong.app.dSYM/Contents/Info.plist | 18 - .../Contents/Resources/DWARF/Pong | Bin 158651 -> 0 bytes .../Debug-iphonesimulator/Pong.app/Info.plist | Bin 730 -> 0 bytes .../Pong.app/MainWindow.nib | Bin 1675 -> 0 bytes .../Debug-iphonesimulator/Pong.app/PkgInfo | 1 - .../build/Debug-iphonesimulator/Pong.app/Pong | Bin 153464 -> 0 bytes .../Pong.app/PongViewController.nib | Bin 3576 -> 0 bytes .../Pong.build/Objects-normal/armv6/Pong | Bin 24384 -> 0 bytes .../Objects-normal/armv6/Pong.LinkFileList | 4 - .../Objects-normal/armv6/PongAppDelegate.o | Bin 50340 -> 0 bytes .../Objects-normal/armv6/PongView.o | Bin 52200 -> 0 bytes .../Objects-normal/armv6/PongViewController.o | Bin 37916 -> 0 bytes .../Pong.build/Objects-normal/armv6/main.o | Bin 6424 -> 0 bytes .../Pong.build/Objects-normal/armv7/Pong | Bin 24124 -> 0 bytes .../Objects-normal/armv7/Pong.LinkFileList | 4 - .../Objects-normal/armv7/PongAppDelegate.o | Bin 50260 -> 0 bytes .../Objects-normal/armv7/PongView.o | Bin 51000 -> 0 bytes .../Objects-normal/armv7/PongViewController.o | Bin 37888 -> 0 bytes .../Pong.build/Objects-normal/armv7/main.o | Bin 6408 -> 0 bytes .../Pong.build/Pong-all-target-headers.hmap | Bin 793 -> 0 bytes .../Pong.build/Pong-generated-files.hmap | Bin 121 -> 0 bytes .../Pong.build/Pong-own-target-headers.hmap | Bin 793 -> 0 bytes .../Pong.build/Pong-project-headers.hmap | Bin 923 -> 0 bytes .../Debug-iphoneos/Pong.build/Pong.dep | 22 - .../Debug-iphoneos/Pong.build/Pong.hmap | Bin 1691 -> 0 bytes .../Debug-iphoneos/Pong.build/Pong.xcent | 14 - .../Debug-iphoneos/Pong.build/Pong~.dep | 22 - .../Debug-iphoneos/Pong.build/build-state.dat | 502 ------------- .../Pong.build/build-state~.dat | 477 ------------ .../Objects-normal/i386/AsyncSocket.o | Bin 220068 -> 0 bytes .../Objects-normal/i386/GGSNetwork.o | Bin 25104 -> 0 bytes .../Objects-normal/i386/GGSNetwork.o~$ | Bin 22364 -> 0 bytes .../Objects-normal/i386/GGSNetwork.o~> | 0 .../Objects-normal/i386/GGSNetwork.o~? | Bin 36 -> 0 bytes .../Pong.build/Objects-normal/i386/Network.o | Bin 14792 -> 0 bytes .../Objects-normal/i386/Network.o~> | 18 - .../Objects-normal/i386/Network.o~? | Bin 36 -> 0 bytes .../Objects-normal/i386/Pong.LinkFileList | 5 - .../Objects-normal/i386/PongAppDelegate.o | Bin 52664 -> 0 bytes .../Pong.build/Objects-normal/i386/PongView.o | Bin 55136 -> 0 bytes .../Objects-normal/i386/PongView.o~$ | Bin 36936 -> 0 bytes .../Objects-normal/i386/PongView.o~> | 0 .../Objects-normal/i386/PongView.o~? | Bin 36 -> 0 bytes .../Objects-normal/i386/PongViewController.o | Bin 65260 -> 0 bytes .../Pong.build/Objects-normal/i386/main.o | Bin 6296 -> 0 bytes .../Pong.build/Pong-all-target-headers.hmap | Bin 793 -> 0 bytes .../Pong.build/Pong-generated-files.hmap | Bin 121 -> 0 bytes .../Pong.build/Pong-own-target-headers.hmap | Bin 793 -> 0 bytes .../Pong.build/Pong-project-headers.hmap | Bin 971 -> 0 bytes .../Debug-iphonesimulator/Pong.build/Pong.dep | 29 - .../Pong.build/Pong.hmap | Bin 1739 -> 0 bytes .../Pong.build/Pong~.dep | 11 - .../Pong.build/build-state.dat | 707 ------------------ .../Pong.build/build-state~.dat | 256 ------- .../Pong.pbxindex/categories.pbxbtree | Bin 1364 -> 0 bytes .../Pong.build/Pong.pbxindex/cdecls.pbxbtree | Bin 161940 -> 0 bytes .../Pong.build/Pong.pbxindex/decls.pbxbtree | Bin 161128 -> 0 bytes .../Pong.build/Pong.pbxindex/files.pbxbtree | Bin 3104 -> 0 bytes .../Pong.build/Pong.pbxindex/imports.pbxbtree | Bin 8892 -> 0 bytes .../Pong.build/Pong.pbxindex/pbxindex.header | Bin 24 -> 0 bytes .../Pong.pbxindex/protocols.pbxbtree | Bin 1888 -> 0 bytes .../Pong.build/Pong.pbxindex/refs.pbxbtree | Bin 123264 -> 0 bytes .../Pong.pbxindex/strings.pbxstrings/control | Bin 262164 -> 0 bytes .../Pong.pbxindex/strings.pbxstrings/strings | Bin 345248 -> 0 bytes .../Pong.pbxindex/subclasses.pbxbtree | Bin 1896 -> 0 bytes .../Pong.pbxindex/symbols0.pbxsymbols | Bin 752024 -> 0 bytes 78 files changed, 1 insertion(+), 2222 deletions(-) delete mode 100644 games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Info.plist delete mode 100644 games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Resources/DWARF/Pong delete mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/CodeResources delete mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/Info.plist delete mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib delete mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/PkgInfo delete mode 100755 games/Pong/build/Debug-iphoneos/Pong.app/Pong delete mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib delete mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist delete mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/_CodeSignature/CodeResources delete mode 100644 games/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision delete mode 100644 games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Info.plist delete mode 100644 games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Resources/DWARF/Pong delete mode 100644 games/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist delete mode 100644 games/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib delete mode 100644 games/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo delete mode 100755 games/Pong/build/Debug-iphonesimulator/Pong.app/Pong delete mode 100644 games/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib delete mode 100755 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong.LinkFileList delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o delete mode 100755 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.dep delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.hmap delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong~.dep delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state.dat delete mode 100644 games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state~.dat delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~$ delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~> delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~? delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~> delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~? delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~$ delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~> delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~? delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong.dep delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong.hmap delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong~.dep delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state.dat delete mode 100644 games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state~.dat delete mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/categories.pbxbtree delete mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/cdecls.pbxbtree delete mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/decls.pbxbtree delete mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/files.pbxbtree delete mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/imports.pbxbtree delete mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/pbxindex.header delete mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/protocols.pbxbtree delete mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/refs.pbxbtree delete mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/strings.pbxstrings/control delete mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/strings.pbxstrings/strings delete mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/subclasses.pbxbtree delete mode 100644 games/Pong/build/Pong.build/Pong.pbxindex/symbols0.pbxsymbols diff --git a/.gitignore b/.gitignore index 55bdd6f..5e78ad2 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ *.beam Mnesia.* *.swo +games/Pong/build/**/* diff --git a/games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Info.plist b/games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Info.plist deleted file mode 100644 index de6f862..0000000 --- a/games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Info.plist +++ /dev/null @@ -1,18 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleIdentifier - com.apple.xcode.dsym.net.jeena.apps.pong - CFBundleInfoDictionaryVersion - 6.0 - CFBundlePackageType - dSYM - CFBundleSignature - ???? - CFBundleVersion - 1.0 - - diff --git a/games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Resources/DWARF/Pong b/games/Pong/build/Debug-iphoneos/Pong.app.dSYM/Contents/Resources/DWARF/Pong deleted file mode 100644 index 8fb4e503f21f07ecb3bedd8bf237b29f45f36833..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 188683 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 - - - - files - - MainWindow.nib - - AdpjLFoatIDWilIi9PNzfvh5IU8= - - PkgInfo - - n57qDP4tZfLD1rCS43W0B4LQjzE= - - PongViewController.nib - - a2sktrUGsYaH1QDnZm8fJ+r++xo= - - embedded.mobileprovision - - AVW60ZyDGk5ugV2sUY1oGuuYkHo= - - - rules - - .* - - Info.plist - - omit - - weight - 10 - - ResourceRules.plist - - omit - - weight - 100 - - - - diff --git a/games/Pong/build/Debug-iphoneos/Pong.app/Info.plist b/games/Pong/build/Debug-iphoneos/Pong.app/Info.plist deleted file mode 100644 index 08cae4c9fa4e8450d4d4002c37e5a414f3d30817..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 926 zcmah{%Tg0T6z%R21Vk7fDxhc(eBfi8JfJLHP{M>V5+IeC5RAxFGjo%)PI|_9p!ord zAJCN>+*oBXn*-tin3gsS>O9>YXB*42Hy zr?>A!|H*+td1!cK^wjAyW8)KN&rP1ckeIqSbLsMxtFzaxCvK|AROX>(=-SE}ZNS#j z@?yko2U?f1W^7un4W>LEr#09G$MqV(!y?p}%T0MO#x}qYMCS3DzDgNiV>`>t5w#;R zUZB=fS_7l$iR@4*r-w9*f<@}zXSNM|TQdp{4Xdu-Xpx)pL|mvxp6B`@*fAcM@?;F= zc-7UI6$)nRH#-_kc{s+iFTjdIy5m4aGnU+jCq((CEUz-o8c}0i|GOk7)P$_cTJH{d ziV(PwZ-MTCB`}M&7=@1`)tyFLovAHG%&~=#yk3N75%VF)73waBb={N`!hLKi$3yU| z)Pi-N3Ep;JVeoKl8Vfv!HV!5mDaw>jN9&W<6fbV@7;_`_NO;lN3=e#sO@rH^wHCb zDkO3Ul_vn4D%A4=#S_g%Hl9>5azG?ozp^4~5;}mLNR^Z7YATaT_r6tbnet32_b>l> z%I(0S9u!%v9-8v>f1c%`8XkCC5NAIv8MN~n%Xb-(cAJ7-{4gJFX zcnaUZ3)sLR-ovl(d;Asu#J@>586z`fmMCPN+#y-=fUFRMY!H)Jq)r^-k(cBRc}G5y dPvkTCE+MH)>XZ7V0n|POA4D|QiJc&g{sHv4A{qby diff --git a/games/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib b/games/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib deleted file mode 100644 index 745066bc49ae0ea32174d7d4d945caaebb21004b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1675 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 buk2S2D0e7#+qn_I<8j}l*?kW_l_&oPth5VG diff --git a/games/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist b/games/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist deleted file mode 100644 index e7ec329..0000000 --- a/games/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist +++ /dev/null @@ -1,25 +0,0 @@ - - - - - rules - - .* - - Info.plist - - omit - - weight - 10 - - ResourceRules.plist - - omit - - weight - 100 - - - - diff --git a/games/Pong/build/Debug-iphoneos/Pong.app/_CodeSignature/CodeResources b/games/Pong/build/Debug-iphoneos/Pong.app/_CodeSignature/CodeResources deleted file mode 100644 index a136eca..0000000 --- a/games/Pong/build/Debug-iphoneos/Pong.app/_CodeSignature/CodeResources +++ /dev/null @@ -1,44 +0,0 @@ - - - - - files - - MainWindow.nib - - AdpjLFoatIDWilIi9PNzfvh5IU8= - - PkgInfo - - n57qDP4tZfLD1rCS43W0B4LQjzE= - - PongViewController.nib - - a2sktrUGsYaH1QDnZm8fJ+r++xo= - - embedded.mobileprovision - - AVW60ZyDGk5ugV2sUY1oGuuYkHo= - - - rules - - .* - - Info.plist - - omit - - weight - 10 - - ResourceRules.plist - - omit - - weight - 100 - - - - diff --git a/games/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision b/games/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision deleted file mode 100644 index ba032bcac88353736ea51d9810b10c525c9dc847..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7780 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 N-2+B`GUB=6{|7+cMV$Zu diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Info.plist b/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Info.plist deleted file mode 100644 index de6f862..0000000 --- a/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Info.plist +++ /dev/null @@ -1,18 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleIdentifier - com.apple.xcode.dsym.net.jeena.apps.pong - CFBundleInfoDictionaryVersion - 6.0 - CFBundlePackageType - dSYM - CFBundleSignature - ???? - CFBundleVersion - 1.0 - - diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Resources/DWARF/Pong b/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM/Contents/Resources/DWARF/Pong deleted file mode 100644 index c342ae6de85decaebf4707948c5cbd8009afdadc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 158651 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 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~> b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~> deleted file mode 100644 index e69de29..0000000 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~? b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o~? deleted file mode 100644 index 50a163522009039ccdfd646a0ca08882c7ff6809..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36 scmZQzU|`Vsnd|TnlhV&G4bYsg?C|9Xlb7xOm%Gbr0rUY6F#rGn diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o deleted file mode 100644 index c1f147f79ff64f6a87001b758b8479223bd841f7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14792 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 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~> b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~> deleted file mode 100644 index 35dd9fe..0000000 --- a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~> +++ /dev/null @@ -1,18 +0,0 @@ -/Users/jeena/Projects/Pong/Classes/Network.m:9:23: error: GGSNetwork.h: No such file or directory -/Users/jeena/Projects/Pong/Classes/Network.m:22: warning: cannot find interface declaration for 'GGSNetwork' -/Users/jeena/Projects/Pong/Classes/Network.m:22: error: no declaration of property 'asyncSocket' found in the interface -/Users/jeena/Projects/Pong/Classes/Network.m:22: error: no declaration of property 'delegate' found in the interface -/Users/jeena/Projects/Pong/Classes/Network.m: In function '-[GGSNetwork initWithDelegate:]': -/Users/jeena/Projects/Pong/Classes/Network.m:25: error: no super class declared in @interface for 'GGSNetwork' -/Users/jeena/Projects/Pong/Classes/Network.m:26: error: request for member 'delegate' in something not a structure or union -/Users/jeena/Projects/Pong/Classes/Network.m:27: error: 'asyncSocket' undeclared (first use in this function) -/Users/jeena/Projects/Pong/Classes/Network.m:27: error: (Each undeclared identifier is reported only once -/Users/jeena/Projects/Pong/Classes/Network.m:27: error: for each function it appears in.) -/Users/jeena/Projects/Pong/Classes/Network.m:27: error: 'AsyncSocket' undeclared (first use in this function) -/Users/jeena/Projects/Pong/Classes/Network.m: At top level: -/Users/jeena/Projects/Pong/Classes/Network.m:36: error: expected ')' before 'AsyncSocket' -/Users/jeena/Projects/Pong/Classes/Network.m:40: error: expected ')' before 'AsyncSocket' -/Users/jeena/Projects/Pong/Classes/Network.m: In function '-[GGSNetwork dealloc]': -/Users/jeena/Projects/Pong/Classes/Network.m:50: error: 'asyncSocket' undeclared (first use in this function) -/Users/jeena/Projects/Pong/Classes/Network.m:51: error: 'delegate' undeclared (first use in this function) -/Users/jeena/Projects/Pong/Classes/Network.m:53: error: no super class declared in @interface for 'GGSNetwork' diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~? b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o~? deleted file mode 100644 index f554754c76aa4cf2ec87818f686c0c4f2091d398..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36 scmZQzU|{@bf4+HTteiJ+`ehlz+hr*4-_AJG;va0TeP1?*IS* diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList deleted file mode 100644 index 075eb14..0000000 --- a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList +++ /dev/null @@ -1,5 +0,0 @@ -/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o -/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o -/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o -/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o -/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o deleted file mode 100644 index 81617c2e2ceb9f7453e8c77976f500439166cf6c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 52664 zcmch=dtjW^buYR{GlsD(+X5T#L)fwAq( z7fa22<4{w`W+dbGk5(|=-?!J=@4eSvuf4zT{_EfW;#}uk6u*dtuf_4ur0*3z&++&4mz;YO zFosOe-x|Xk8>?hbR)R!hW21Yo84cd~w53kd^ZCiIJNFJg#N3?>_%}9|$&Sw)9h)en zrn2(B=jy)UeFEb@9Z3HSD%`%%IXt?bKkHn*Lis9xULLu^M3E6=W7T>51dSfP&$%C2 z!W+Kf+)7P4E05Ipcqw~)b{>~K;N11V?))`P82Wd19;H;_Xtq479>4Yx>2CMn$2E2P z?`q%UZB`yrskAhwwk=;p9{l^F<)Lr#@2ouXxdOX%Ry~-^8$af^C+eT zP+O0eKjvHmuwVF10f+yYmB;kVcmbnZuFc~IpU`Bl{#H1-JkOO!<<#`td3^UA=l(r; zM6^YA+q>Bh#2<2R?r(#1kqRxjGpH`*7J+3v6HBUNDzv)fX!w&ZKtGDjZe zY<}+kU>?hnfO)VUuc00oYBz6oJqr1BzC2f3?z4KFK6^cohqk7+KmG%GOqYt4;+g8f zEr<1BTk5~1A;z}0PbH7J#`Ym=%Y8L%nIn(#%yhPNraU;d%!Bo4L_N+hwz;X)(JYB_ zZGSwBdax}ISRQ!v{%YHzYZuF}HjhWFEf3eU1sR3%;BreBQ~9w17w%kn3?ZI*uq`cU z3+9HaUN6~6f3uZ5s`u(&T+&}km8{Kk zmGlim`1h6c{eSb?gqpBA7^Jr%E^=GEJ{G$hqqTumw7*XwjBx}P$KO{M<4j&OFUEy- zSM2>!1daIdk9cwXYH>aI6K8>AI=*dsl8U#>|C?ulzjy|C3*!0rJ^b#)ueSa%63n}z zemieOUo_2u=jC%d;Fr$J9ch0Vtig6Rcn%eBxU^EAfg&I zrl`b<#m+@7rFtkMlPaCa6~@ZBTeB?ax+~DlC`j_D$|Ar$!L&r4_zr3n#Fu6YlE<-| zkjK2(Iqe8OiQl;!`Hzdo7%{&gdgVVNTrf5^l`FXD@JYPXHOqVIq>GN|dyMeZw2O}F zdmQf~0=VcACa-I*M}{v;`NJr8Z=q5;<)T+T#vOIw*Ab_# zIfi`RM5^c*^BJb_=Azdx0BruU=#95qK9oje$a1zwvaAn$lFIV#Hnj$o6ASD751x(PVAA$ z4UC+gvB;xEiEKw?u5dh+&t=9Gds4gYQUDmiu5;0wX9T+gk?7le@kF-dqQ~Bc$Y}G^ zEDfHdj6$9#Q5OjvdQqF)2>U#A<$-kOF60T34To-mZ{W2&n?R=a;1!uP)cISb;Ygi#4u3!oJvs zh(+>G2i_K4hF1)H7lOr{mhl*2@fg$9M_5P>Pm7px5$EtCNyRuIF(Mwj953f^0SD2pd@+SZ6pv+!GtwVN1`3reoi3LDvXt_D zWV589f8RhMlRfF?t%+QWyzxGYu^i4$xOwX$e*_f7jEGDqaV?R0>_zd|`S|y|tC7zt zJe<#mNIcet=Xy!>PCPAQYM>_ZyfiWpia9KJZvs5#$1WQi>)+Q`Dy2@jNVI?7!I=sN zQ6gCIIk%h!YCOgSg1RRM;#(}Fuqs3NK`axU`?ar1q7UL<wTd+vx9lBazEOx;K$0eiNyo?m&BJ-Cm_{bZGTyPwl z3cA28_~@UaDWn^s)LHNl=RF9|f>O4U0u5a7%WKg9uJ;mll~ftU{R#&NG;TqHZ{e1F1&O#Sm$`G1^;UI z_+V-6)umh|8$#c5P|!y_^bp)dE{G{TyM<8IBXDIBkjuCaAofCu#Xs15U2L&?0&xp+ z<&>*$&EgTg02;q{(A97JZM?=~U&p_i6C_`xDV9*H-G>hYW7GRFKck06I46#RC@uPX z8H7V4Tqqjz4?hITMTbUovv&=#hW^lS zXtH4Jo{_24(6aP`vH79Y%f}}2siS4LbdePtT|SncFzls^-y?;@5n0Mk^cQEagD+j8 znDvO9hB_#nn@;6*V3sy$qZy1@Aa04 z5Rj3E*oE6Y89;5gVsS#IN1A6@xFF#gLIYhN`)Q5MICeUq)A`77d2 zgi9g7TBq=pdtW5{K`9Y)B_89n0Tw&FgbY^A|GTOT=EoWve;qRUD$J-NIfllIxej8H zHR!!nrL0A+*2vWwc@&zdEMWVJrT$btKb}e-bB${h@EnI5=h3xK=@{v>=^Qu5q2ju978>#vDOi52gyxqM%6| z8aF%$eY`(N%g5N15$HEispUFB+4pRV#jXe~1SS3lix~`6<4X1(XeH1ySoheKGOlse zpUJY}GSJo4*vvkxYhD&zS-@yDwgjsHDyEaCTw|-oa0OJ=b~x)TlE(GkaySFZR@d03 zC@okq{rmUH7Ju=zpT|hm4} z80kj9oFmx<^A{o6iChMAclCu{(#dS@=w!vMz9^Jl60BbFswN*MDQ;MO@qQ*RmU2h2 z=d51MIYq_ zYUs3R$tuEfB4o0lF0#9_t0ok3kwReW+XsGO(zP7b_zV5`kz+YX9vM)?L)mPmj9#41 zgV$`CRKyDc#Pnn~GlNBLC@71nPzu+QQ{-ht&XorWeOH5^7f-mBn-#EB0eyuu z=4`Qac%r(|uH~5GoiC+f9{S^+9hn(Fj)_oqEqTQ`k2ooBUStoZAP}}p3GAGOgiWU^ z=&C|6Ag-mLNf!`2kvo~q1VHRa#C9!3#hLF{p#ar$CF@$I6%Z#tG}?oyQU6HF;o}6(qRZ5C;4soWiaB`TFqs5u@DWtt_gW`EyoqDj%YBGR%WoQ{Nhh2 zFhXD^n@8EDvXq`JW82zq=%d9ED)c!VuH~dAAt_r$f$%6)0oIsP3c~t}ttw-Bm2C|7 z7G|)oD*M-Rt0G|$#=L6F%sX7z%|%p(3{Q#qhM!G12+0eeG{u4_T(^-=1V@1Mx$#5P@U(8% zD6|$)#)7wYo|4?q=IK-kB)n$kx9;%Uo}PqOu^Nn0yFMi8TiB_9gKbIWtC3vmPR#?_ z9W7%{q#i|rwr7fY$ljG>tC^c?O=>Se=Of@DtSsT~YlvLyWe-Vxpa#n523m`-OA&Ug z`6#=o_p^fD1N2gHdSo&MimC~=9p_s6HSz$u zV+K|^5LwwbUF#m5vV*`*K`1!@IW=1f<+e`~4jFu3u?UJ8g6~)O=z_6qCRf=#Q>l3K zVc-v?qSqiL=uvvowvN!mYrW#dUQUJ^*8DBoeDH-0e7k8@PYd7ST8D;q5S|Hlwby)d zCa(3$p9#h!mu|UoMWJ}2AWXtUDxE!C%6XmTT1TcgGOIkggMxgaLgo$Bj$J%Z7%EN| zK?Pmws4{5N3&tjjrKu5ir*L_#M-*^US6`d0Jzd`}Rkq7{L%h99Qde;vsMA(p$ zZphvyez@RsE9(y`8o80C!8#OmNF#(1$)E!cfSb*eqeUu~yayfU)*n_Z;Xtr4q)zFa zDZBMU3K7Lsj25q)$%5lsf2AS_2Qr;4P{VqpFzJ=z)(3UVFgGV`yVh6^$K?i zoBn9ZUM0#{-dIk@b71pSU|7FTd37voEWLs#!q)HqzUYB==(NEmtmD1@s!N1a_PWMc z+p71XJaEFJP!H`cmbjWYIS&=-88kb7kRC(ioNMrRXK&5sUEOTJFn7poMz~qXJF^nH zwkEb1HCeZ2rC;K{TvmxBXk7MCmb2TdOcm&A5XoUbU()jui6Qa@j-iDp-Zm zCtEHYoUC?LK-bpxG1PBtV3u1|&VnLk*?QgeGp^0JYvJLK&ZJ6+GKN|f2j-%f zfsAhkv!V*aE3&6#;bPO zR^0^G7UsFBDIh~Bf_|HF+>r*Xs8vQl%fq9CuFZJuC0y6vu5+%<80*Dcmuq#d%4~2A z^^vw)J_Ay?f+Uek6S^}Qn@!3N?14&v5h_u&wG+3l`2b?agH`3)F5z;kYaT>AOk26B znJKT+T-#=q&WEBazrngBbgLVUuKXBZFP*oRDX&4wjI}I~3|!k51>XR$jF*ljmyc`P z%9T~ud{cBKgm2fjP4~bIQ1jUd*>M%GL-8h~E6-zz+Z8VlJSYSvLx`P)Ric58cY17JFpA<-Q~bzIv{#&bIg0Ha0B z$sUbA9f}`jyqw4_&75Gvly7GgZ35T{wIj<0T_T&>rukEnnyh@z%Dd-WWg6XLk zL!*+*YsmFqu!*(}7v%j1OaVbYot-S^vHuLF#<7*OjVSa-gyyhnHILE9B+cuL%`4)O zH?dfw%|G#@yjEPLL;r^45GY^z%4MiIQ`o25u4!yx(w`E;A8sw^+AaaTsfl4s)#&TF zCZf$h_oMsL&=Zu4rBe#OLE(4SA;%OZU~M0~>n6$eG~qHGNfLEiZkz7LGL1IhT}SOO zwPBEb2Ix}e8XDHtbA9_dwFP71Yew76hLu0YToQS&EXKnPtJrRlc?3yw->~kweT=0^ z{0o@mtChM96wowVsT8~xq7)RX)WbF0*Ve!(79x5^KVeuqHZ$!uHhx@K3{pRX?9Cj7 zg$~Q2>^5Hf=?<1jDp<)?xKjtP)e0j$lWK-xYZL}T#Ob%OiGyC(d@{Q7YZ1Jz)z{mi zE9rN$ah;C8kPDF1N)9IOTd}ijZ2m*2;G)e!FUEz_*RI%j$z7e&(Ghm^dbHR&LrA?c zK{A@`kmV@43he97e3Wv;T zbdkpQB7Oo}y4$q;cMos?ILeA>OKj5$tpNuZ+nG<=H?7nuID~jGB{Qjj>Tj~yISLST zEaO>d*vM3t-KIv>8*oNY9%AfnSUTyF?KWMkIdXqv#K<(=-;cUYt2NP0i068e9@Amo zwDINrtaXMR`nh0?LVDPM6mYbDfj+jO9uYgECp8ne4(m2N54gkCEN-Ih0vbl#bczkP zt*Jk@J~VP`xU;t}vyomf2Avz&^+7PWdDnh{HW4hmMne^qSBNR{A&rZUryqkt-lP2@ z%?J!WJ502#+%;sXwJ+E08#1{M+)FB$743s-U!ibF<`Y$FUDv)+WqXL^6X;`VuAxL~ zU!{dXCReGBcDwdQjf6aY9I|LwXl=h(g;t2-)mlQW-D)izf;f3K&*;;>=CAMKm{AH( zm*8vV+ME7fVs1dO)WcJ=wc7F`DryLCWxUbXlC;~lIc#B7ZYN_6dewLeZ`%1!80FzGym)G&0( z66y|oYA*cV<~5o$hMAn^0MAk)ZEn)~(!MyYGQafY=C#_Fv~I!FdmNhJEpGEV&5qWs zX_((DlTi2{on(Tt+uUqAydWo-t&1o2Kt-;Kmd!11T+T)=4={r6Q3c25R<$rU1}JPK z>Mcr#&FhsmGy$waER=G(uZRL}bDJt$HV|H9y{JehYfl4;sLD5QxJs0RByfSc%5*6E zO2w&~0o}Y&JLuB6@JFSL&@gO%hhmdj!V{kSXKj9)6k~_l12?y8my%v)a+$paSR%|F zVe=*QVW?{+$;_Svdx6XjrH*?>D7Set%~DE1J@_cpjsZeK5lBgGY=f%myxZKls*D{VwMJ{QAV`z*flA5NSnnbqUprh>f~w5}SMCsvm;0jz!e|1?7C1>X~dt zY)TMG^QTg5^;fd=NQ>|e>rg(Q%Bi^8hBEW+wt<1nUR~nfto+uA_ z!b0Lk#S!h4k3)kNY#nH*hz|)hB*sML;(w3h08eOQf_Wi--fSRFJ=;K{ZY1Q6J7=i2j2I!61Xf zL3-14i0LaY10|(HImF^JE@6reF@A*<9XeQalsa4jg_xOAN2i3@6vYmfgN+XmRLLbw z;UQ+QTrg{n(AJDWIOYPCaxd8mLp+W4l|4$&sFP?6RPWoigC(QNg;bQYB!wT#HTEC1m<}9nhquW@;3pm51U3&C*DV6^(SF|JswI7LWs7HLYC2OpaJA0rJ(ke16pW zC+iYsbHp+UP)48w65o?Tg*{XCWx?J zWYq`3CCt7FvQmxcFR(k5?true2r`|p;4wSyR4~X&Ogt^j=c7Dws*n!W$9okEv;`(u z*o`2fDm&7j&!w?Q={1-5B|(Z|$;YrQ(Y)lN$p)FYOLM_mC&E6k-Dt@PD1E)&Ijsm- z;Y1kDl1KDl?^75SIohF0JhB}7=_&=Ui*&An{p|gUgk@fZMESU{AkuBBEF|Ltiiiad z+x2AX7>w{#uDZnC3IMObDu~k`{KymcXf*WH@m04Li&F#8`hqjerA7Of_@IKZ)y7w0 zv@t%`eCZ!h?|T&i6ePY%M1WyqyMsQyPf*lH>eq>?){1e+JU0V zM=B4WM8DdIuFj(HHcxWk99f3)ja$aH| z<1h#&F&%_rJ+WUECh=OS=xUJ!(FF%qNTPZmi052lV2wmHST5PJ?3pfcxyCP}ebL{@ zUE&IjUJj8*7!zY7EzzJtVW*xAJv=V9VA%c>2UV(WVwuw-o*v4Ls{<{dhg5oKfdxEU zIZ-SfWhJGxTWIuC>p;l=x zOk7#a=04Cn)x9OIRQ4P4vCrVR#BjG@Lp1gywJTj>JPyB=CM92vngWPP75J4*JOkXbm=N+GBhpmp_8_}O1tPtDZ=beg+# zk&5&1Bc@i{dyOp^SIx8+0grA`VteoP4sMFhUAp*s2dIY@m);)?LcGaIS$zF*#m#$DvpCiUT#V{AB zgV3gpr^LwYw(eJudOa!WqP(Wkn%jCn!8B-!g>eH<|HFkM)&y35oiK%lqF z)?S_4)QzFDf=22@+j=?2j4DvfD|+wFk8Nyu>YWgJV7`T$O%`54P>ia_1Rd&p+cq_r zt=g+%Su`7)v}hLMdPNj5sTR?v&KuhlOC%+FrD5=}XTVnHHf~Um$Vj#`Wne`tYX@%J zs9+I_z~P=ykE>bLc!#2ifHW=|R~|%h8#hUOTqch)$jVHr6C)%9+B=j&ZEV*(#5CR* zYh6h%3doz-qr%=SBK7ps?cpjjzn>9nUp_Z|z&FB+G(2Z!rDB=h2-s+jXT_2|7uHY; z#(p@`&y@0NFrEv^wXWq5qxQ}8@bGFc&NiO*0+ukeo*J$>;X@FZ#DOEIZ&h;7zayw< z7;I!%wnXR&MG%*YhLKcoY<))oRh%Ddz52^LF)P&tkCYGoDJnSEaaJ{bx(+TcCL5cm zJ(Mj`8wWC9(+RHCBxRXSB>81E$AOk{&J4}K)hFXxO-hzo6?jRO``~>;ageMLrYC!f z>h4yPm1TAv2aJ0ReAS@`3RET7rd+ED%qD#g&({34s7zy;}dceGWl2x;<<7y)MR5?#X+TL zpMV#27FVlOYE15}CLoK>fWEXME08J7_M`6O^s;U>;aGGAq%8EmIY__O5EmAnmT-nM zA(@&4?j55k-=D9cxAg*g^i^*h+nTC2j%{maZ5-RyRc##Gnrk@}|A zYK3uQ6pvJN&|*Kw29n)|l!Q#Ig} zf~gr!!&Rj?MMb9OJ01*&f<$|%u(ZNBG)l(&u5=w4nit6zz)Dss-kOE69y__F%RaV_ zuwD+^H!)x1F&_0=eP{&EIg^;r@ctv?cn8KU9-{{@I7@7|q@|Jpfgb~q(bW!>gnUtw zk@drL7&(KtBId<~FZPD!#d0yx1k}Q9U#jYDS{&r0rWCz>*+nwt;?b3K?c9EWb^)h@ zI!1C#w_kX%AaO<%sI-TtI8?7R+;6{#wn`qN34u%n=(aD{nFLOZ64Le+&5{kLhF=4o z_p+0g+gENBxY`iVYpmfO(f)~?zIxluu*iu+JDGZnh7neqSuVPgZlBxNsM{x3ul9$vUPhJ0>b|6?@622Pz| zJp{eK8wT`aq^ju5wYqdTlg{9Ks?=cnC11VWpH_d2NzfSUT=GJna1iGB4h@@maLXP( z1fC|x*+wQ~ZWMTRr3%7j%ndhXk}w)`W55uCJtum`68h1Oks#TOzX(b9SRd3$c%z}stOfvKG)f$c)|(IiFd~KbZbg=npLx7 zbqPorYSvCg7iJ0v3er?PdCjkGR*zx|GX;-8%pLE5$AFr)JClkbyc8Oa0~6ABU^8Vh zcV4D&VWO(wI#oM&DO{MSLb0;fJH_HUdle#bEQDy+*{2c0DrIsdDCjy((iZ**Mi@A1 zXKYC9l#!g_a-AxGM}#{obTU@Ae7)+hpo22-9uPWE2{6X4vrU0eL1j+i*1ueO z&d%GQSkORKV}*0ts5sC=%@kNrHe+3aQr@93sGMqH(AR=wgW>Poq&UztP0-sugJhRz zl6-e`A8ya6jpRD3Nh8efvVx2ZZV{%kN zgt%R|VYNV`LJHFA2fJa7rceEW%&MMa&xw*PXh<4&1^NPN%C5 za~^?GWIoV3Rw|RwtDd7BtMrvR5%@d`3)!eq2cj##&hjqS*TLw@KjZ7_&or?xxV~P? zS966J)xC2(RnkuH=y?7B(XJs|#onGD+q8zRNvr4*v>Ue>9D^(aXCdt}+Pd@v!6xe{ z>2P230T&w8er#G7>U)A=H%}iM4dBh8As9E8q!5d+sYT#*LPVi{wqpRBRDDw?#|EgQ z+hl4Q6%*kWEY9)ZS-j(Dn@mF^8o6)RA%*E>NXgJu92H#;TMZ`s=X9sg_86 z!;1w^>!TXj4sGEADOvnzE(RXxn|Ovu`g=pRZVQah%}=)Sg<;bd%-e+kK>U6b3dwe z?^!9wlVh7NeFZ)xu)&xFjvkVem{ZV$;n{7rnkXF$VTsOw+-|_py3JNIVVuHQQqvE^ zvS?X0Tm6J{k~5&g*=fuP>LEjLesdM{&YJoRF*aSco`vWs8(52BD_LkBcB-SW*5e>`F0DeOM?+ng zt!-f_F=#l>9KdWL3p2^41`u03qJ`5`qtH#jp%OE%%NC0;mepC>sWxT$x@^4&x2a~? zL$Wd9+#4KppaDl-wp4`ERF0WA;l?WC+hq$!2z9Pt2(pZ!mvdbvdI+)RK|A$tb6qBA z2(3DUyWMJ6Q(nWm_1gu2V51CLOjCoQ3}s5FTBiLzJpEKHLe z)H}yBY3kP6r9wm> zrCnIxG5@GO&sw@J6D6>y#f5-`3u~{Y%4OGO0tJ?LY?Zh8{d$Z{mSzgaT-Sb|M53a; z9c32U0Y$@#k9mizum#&<(4uAi4=5hiKU$R{G4qG{as`R&j)KJ9uFg2 z4JrT&+yfk$c3lTG7K_@871xcfLmH1o9K-boR!-Rx+*vAT#4-;krf@gte<6 zAyl@6)gM1#Ndp>mL{ni&>jej3|4Wrxbk}8mmf}JKQVDqz7k)|Eqz>@4(HGZswdN;Y zG;<>A+*Q+21gjr?WcgWLY0QBPMm*gSyUeTvGJpXiFM#`|^!VeRnG(9s=Lx#5)6zi* zBwGspwj|^v=pJYs#6L=AnwgixmuEVMEkDCD4?+dhWu_$Y;!)5w5^t6xao*ARYbD<7 zMdG;Q;o~OCE;AX4ua1Y$_?xtz>Y9UVB?fbaWBt4|2}7Jx7>Ge^6|71FbhY6eNljzr zhn2uxG71E7fcr}Y9i<(LD^a9Nhj1gt&XSjCoti$Rgx4z z8;A3-T}PDz%i|Q4vWUVlKv$})dDo<#rJfd_l9KWh0W_!3lVPZw)9bof&*|NXW7{ao zTV~g|u48gfVe{S9fNNb>UI7ot?H%Qc3JkhBk!(t#56=Nb+JZtKF=$O2imWA180zs4 zfod(Mz0-sW(J~cui-Mj(qFb?4`Y=a|B|Tu?RniQfi>!I74g+4M03U6B0jN{xMI2-e zE$E6KZ+wZs)X5s)i~?V_LWXC?aR_KP9Lx{!)F75WT-L-Huj{y;oqWYGIl8XvgckfN zB7>Q8RTi5+z2~}4YOlNous8Pt;3)@|X1TVd(ele$4DP%!| zaM-8om+0b!=>sG^@dd(l7s)}i`ANn})55Oo930@B=E{#YKLs3P6m75Z^%667t4`PZ zbh14SRF(hf-PiSg&EQ$Yf}oN{eL!QLV+^#QU3csI^LQ_x$icm&>mH4HK`_Wsj6jnO z*K~LexULU!vEv3=AGoiiHvzh?dlmFDKoj5xl>FG-yN@Q$X!9#ou!DLbQVvF&uKP9d zt5pcHyN0noq*$+2VSyRf_4Z-yf*$~?SGoi{xa)dAr^4$1dggzn;kFb0Ps?k43v@UGuBq@_yV;`b6AliH<^=hQc^JCrXzI+1&P^x>n zRR9%jnt1&~U@IP*N|ns0?7B@B6&X^PWR(HbJnOnm4y6z&>Y{FwIYnwDlVjXUbt)4* zMS_$}M{v(6v_B=+ZBnO*kYt^y5;9-nZWBC3bcAd3I2400Oxo!cq%ON|lR!mw1RGY~ zi&Ka=Ct){H$rjOV5~zrdTDq87ht<;QwalbY5g)6Jfr_Bw69lwwlSD;+1m%I0nkf%p zsY!E82&Dkog#LEjCT&t~3@p4vZK!l_S@f>Zp6nS6^^$__WdznW)0U}vS2f9YU!W#g zv3`p|#cRNY=gTf^O5W~^mP&fsEV+8^+OBTX{X*GGWo`EgRo3#XQ#p%yOW#e`y;3)H z>U<#vg0g8D)S|lXRciJZs+n9Xb2qx=4^;- zxN~Rw7jMEGqJb1M3>%g0(clc#oq1;?=@MKU{Jnjs1cFgIMRkK%&3BsB92}k{o`qp% zb1-UBFfHppjPUHbSK-ulwa75IEK3mDls&{VGuCA;SQyFN*P9r_w`ftMpl08>-WT2rX z4Z@bT2jUH!tBM62*;NYedQ2jtez2(m9cYirUTR%Zens>n<1`{ zg6k=0l&De|#rdoD3S?eXAeAUhbXV`0mWX;0$*n67W(zZ}=N82jnLG_&UPuR`<}JIP zl7d7mHy#qqpEs>tPg&t2p40dgy7W{!s-kca)5R8nSlnvSGo$gC6msFB@7mK3Hx}3M zO3&#JOjd2e(67PA(>ui8vy=QNw_)*8@9EK3?!H_FY7KEcNp(r2Bay#uJlJIl<3{Av1n=DjMb#|_9RL(fzk z=(7tNT+ac8;Yy+pGNS>_C<9cbSmA3=b&_7LD3c+S!;tXM^$Nd2;kxIC2%EpF^$cpm zrjbL65hq+~4ce%p$+bo^!3B0aB#gZi z3+4zPSzmYs`Zg; zjugSBat+?Q74J!Ag?($VIZap_EBEV+c*_%#N1>g5V7zWB{v^xa9dHM)T{F zPxGs!tKhO@-jj!n#TkaxVgSc_b$d_#_7Az|=r!;GvdjZG#^564zYcKqFJecIxD?PKC4MY1Pzivf@OWA7r&txB8XOD zkS7(4-&G8eL#r@UB_}xlU2)We=@0FQ@B{ewglv(?=M+oi(5js5h=y$|$=_2v5kmvK z8l-P3lGrl?BUlz4-XAep*?*SKO2{PUX!S29Tpf(4&IEJ&F88# zIY&0Xui1!w)GJy0hh^39OUXY_Y+-JL#`#0?Z3U|%i`6N-G+t1+8b}S!Ll59bvBNiXlAnEDW1%x@cVT4;5GKsNrss?K&6@5C0{_SDUKg`=wjn zy24!Ye<-dn=w3Z!2x{{7@V~40Vr}*CNo`S!S!?`{6j!XTHMp}D_{)kbVt|KhU5aBE z@QD#UmG+*htdf7MNkk;5NupmHslxuAVvBs>Vf%X!MG?hz$v;s!820) zM20NTS2Tgj51|>M`-z}@Ur|(o2%+GcJ$Oqix%g8>5=p|VAl#6GvM3vpe|DdrVCqhssJw9U& z|F7bT;Al>0Isk7dKqN*l>#K5dhJwVs3>go%*}W$<-D}tDT z)3mB7apYay{_QDPR7O<)Kf#V+Nyp_w2czbBxc4M{Mt#;BmHZdY7V9~_3KRiS7`~jK z9H!1vPBq}Ysd!k--klP3P!R=#Oa4rOSiK%lv~fBoT=HKPj0GH5cMTkqms`Jao3vix zjdQxm|D#w~yu2}jgD8{X=NgTb8pkIUaO4oxGojEW|4o5dinD+^+5B1j3&q5GgcTj^ zR*=iU6#Tq%U|I5~0)H*iowqazR%g5=M~)LttKdUi(nS=4C0PX#+Ce3?OGXR@OETVK zXXVJ{y^V)bvd+?AjaH}eOqOca0$tKu7F;rFDX@s+EoB`wAzMQ3;LplqwJsSmH1IL; zmI}qEU}%-WqK_6`a$Rzs;ew-?g*$*7JhTVSF)R>^Sy)%6e6({74YVWPLi!ZL zM-j*t4R_ZiH+~YQwpP%glj?RzxT15R|ri2qzTbVImw?LPuXqoP|i9qFZaU`4b@! z_g|O1Rc}ImG6WFf=#uZIsvIBwB&7OQNts}jA6)Xb$E1PJ%tjK)J!wMyvvb2mah!aQ zS}dO<4z*Mw-SZ!-$Q}F&T(tRl!oz9xJiOiuiuQ>bG+iverocyhU@)#O`7s4PN}%li zY7b6+T+icbyS}8F+nPYv+}N2G`#<&cux^8yrr16&Qf8Z4gWV3 z|7qg$RFXt%)z6gV5l!-pB*8)aQbkWoBtNAy?^yzLunh2<3V4nHZOFpSn`86qeZnJLk^IsO4_5)E>RGud89Pb3h19_w?pf;=ezCZks@lyS|qYUHp$&~^G^{iWN`Ky z1%VO58uR>}x0|nu>K$`aKG$%#uovf`PK}7miG4eDyLqiFXBBa;oLs$DIC^!iGHFMA z+;+1Zi^?(VgQ12g8t#2YXS=zsQ2B^Hrs^0MOu*&G8vz{$J=(Z!6K_0j;t{rOmQJkA zwA*dFM7Ub9Hp?|r+svIs+)HZcz39gyicBwMLqK4G5qqzt7Ww>oy6eP+=wHSD_ zX+W-W+O|~@MA4`SxLMBIjud5^qJRU(#EG}J{`Fndivx!m#^8z)*KVWEw)k*}XonYE+q*cX@tyM3R z#3c)daZf8W{91$>Ia@c{kE4dce zwcFs!#L)?^q5;e@?KbM1IdT-Ny+fvfUT7O?hHKxh^Fx%p!Af%Nof==y!f`7h55OHR zWO?J0t~Pwu#A5B8fs# zk1@g44thw@xV=|_qDquD8O=Qmh7QL#+xrv_+6NU%wnBYRwLItAcPk3jhM-~m@^L)I zV}Tb96$?jkbJHGMmiUs-WevMeLm>0M%)K0r2^nypmo4U1{YYQ8{5Z51Y=t?%UAAQV z`v{5GX?EniLg0ocFIz~275sJ@`Z}_F94ZH4&vq?S4(xQKZaLYeY-x+e%dILj`g-wO zHU2`yzYp>FdgEwO6t`}d+^NFv)zoR;p1bp|TXp7smiZ*u|bp6P!Zdap5KFSP^mhEarw`=v*yNUaFqz?Va?z*V2jN4T0`}Ga^ z-bFJX2=^g8><>W?cRZ^Y9j^Bi`_Hl7tbuj9-d|T(9F3d|Qv60*Qq+fHf%}NYHc0F+ zEQ#0<@!5LU`>Auq%VL=T!e5~8{mtzHS#BBeW=d4(x0XuwjiFd%|7neF((Lu4(XRKg zzk~S~U!{~-o6oNI@i!!g4Pjg!#VWhr&!{(JkC%YwOVwW7`&qruvR6}~0s7Io-p`Q< z#g*`yL@&-{`&{qm??&I^Y=ob}a{7YiG>Gv7QNlHJMBhC#0Vi(P`_zXd(U2sP?yz#c zq~(l;%MrNi{qp0I=9(almGrchbb|o=rPKR6WF708Z<1(b8+*U}w!Qmaey_y1w(;B@UB}D`T{H43wtte05;K9D~O+KP;&tbJ_JRT?3x8uDO8| zekWG5#|V8MHCaCnPA76fgsX~wpVGknDoSW;tRsw%bq~6>yU^^&1-}i%x(8!zSIOJ2 z3oO1tuRK32mzS4;B_%@t5|8~8Sd@5-m*H<*i@YOiBP`+x{MzyRv0u#Es$$kw6|>fg zaT~8;jW$M@{7d*9@zlq;d_1c`F!_u4y@uaE`dRF%%3@bl7Q6f` zR&k z<}|*W%j=yYqr|RzaME2k7K)B9c26OG4X4jyrwhw1NaxFV%X0c)BU{h1B1<}E*UdlM_lQjrK2V8zKWjyI7k#>(*0S=R`5}WZ0;i0 zd>B=WMCv0PfW&>yE#ku>He|D_N^o2>G)Qp;up%H~D-gQKd6Cxm(uL9ZU){0ryvX^H z2JR3oZsEeq5QiP~LKls9FWk9s0JJ`)@y^X#0tDyIi9`mLMgTZ>ts7XHKunwfqRw9$ zS-6nt2wt$r&t%5}=N1As&x6%p5NWH|To%nkE|^Q}C0K$na}8GfJOa*J@1l$OaQ;#} z^wc}Il!;lwGQ`9ga{((5jT7s_rIBbnsKiBl{qY?OgP7&vYHdaBS2UvJ9Siul60pVE zZjD$KATM0FXkqrm*d)d4*RKXo}W`4>c0W6HoAP>7$gdkyrZKE zXVY2?OFQERmhP(WsAnTD2~c)P#OCEdayXpeuy*i=*=v7XOy1v8%&$84GG=Nd@_!aD z!oLyBW%!7>NP_!tIdL)*#O-{BcczkeSt?@68VUiRqeMNCOQ25K$u8QUH{%{cA7sx;=miR7ej zoI-elm~&|4@c7OBNLYb?E26N2^^DKt@|8<+h09264vh?_@EJG-2{wcq?`{G9TVFdk-boM?eo!i$v4bG;Yeu;WEkb%PWIeS!xJ zdO;vZf-lS|M*n{6UJ%dz{rj`{1WHBv6Yoa`kmoCU`b|R<* zvF~}9svrz^l$MFw`6zQ*R6MA!m8a==R-{JMuJuW-bw;w>sv06bq)0((LVjx+p}JkMYh^^fnri63zp{+2$+89pJ;0WRM^tMC}Z&*^iVA;rWx7vS>! z%Lw4SkL?{H8ny`SSf+3Xd`TeSMBId{LeQT)zLI!eb2o zhd##{Qj`nVf$x8!@EF7I>vNnT<*qO;-`^#1l^DaD^f}Iu;#L@!@9$A~jNzU79A`*@ zDvZnb7Ze_2_@X|?8B&f4YDQCY z*}qTsRn>Uvrz{-RlpcVH)D?Q~BmwXyanx8MPpHCFiAlWe5*N~6GLi}a?K4{7L~O-B z*mgxxkjpq8CK=f~=%|s}efaR8qmlQ}2wRBz#T>n34vnyH<&~;#Z{v22SpH+Sr#pJ` zc+V+$mM(R-$#b}u9d9uAHgq>OpD$INIwMhLu6$5lL={LS-=Pu9N@9MdK%bFuFIAxg z@iYUoQRZdh_yLteBiQKO6Y^x4GJ@ai(F&Cuwf|^+uf#*5gk6Oz7NS_H-;`n_O0}a8r1UWS&cSVYe9PKIEN5LNIUg%@wEY3hqxH+C_ zp9AQ=(8PE(Ay?M<&+ISvIeAyl7+xwH{=x#d1jqaP!*OJD9B*Jf)8(4CtPjCLHD5i* zcx6v;#>-xCt&voN#&aJpFwt>XPHt!rLg+756Kp8AQN-+Y$i(w@bryL4!ape zRZSXlbetnus88U^0TzdsRC!0p(W{{|#M-FfOfh=T^C0(bK~faoIF&ugImxfvVJ^yz z8fTpmQUeId_SH<(po%2FZF)Mj;5I3kXRAKFiab2m8OLwrf%eGlH=gGOMp>_=@>-$S zu6eEqXDc%NZBceu%DekPJEO$U-q~p#%m~~ZTFm1j8F=c+1%Me>4rY=Zv{e#~d7-!Y+1h()cSr9I*Smucgt3mHRpe|Ix#Nma zJv-*?-0-R*;R%*>7=odx>ZdS_scMHk44-3OhQYI_T^M*4O6JmAI<-%Fw`{HL(9t=2 zw0(X1q4uk4`rbwdDg5D4JOk7aYX>*YEHqzIqMO1uP2sZASHP#h^fM-@48FQN&N8~g zjlof?3OF=eZU|@jphu76&H;MOoEev0q}_i6j(T&Uv!85uMQRD(dDe}Y6Y8bVoCu}j zeIV7J2d}D*j05jRz*lsR;)X(aP4W8#wQ0)SX7-j!#nPWB`iHY0sOxBo>w_|dIn|%WPId_g>EOcoN(qVpoL0P|0 zr{>O{dpKdn?k{5XJ9P3QhYY04P~mfaHM+W2U<=_VuDkV{rhNhX(48vaYauBzsNF8@ zm4OA)i)pa+(r_`|lelv%pFM0@g+Z8~dQQb>A-X}zL&f<17Vs=dmvZ{8b6h5Xy8+Z+ zY`|y`oy2UtTxE1g(Xfm}Yw4e`y%4a5iGvbYhg zba+A}P#@Gx&=v5N@&UZ#y?FAJOKW{#LSnY+u!$1!9ra15ma#Cyj}AS>!Rg+i9p~OA znPbO#xU&!e6}pWU-3kW6z3bf&Yp=so@^-C|Fa&9SXvQ^L3@!2+gHLHpa-+Tl=lQxJ zE^19-3k8=6)rA}Uf^*M320aaae2?LG0C9hU_aBDhAT>Jv-b7sVan;o@-6A|wr?U(p zpWykT z&)@-nar{{C7QAo6?_Kz1@k7z_$B=F1kALq0jDK%@Uc>OeY&+Y?KjQTQhjLANj3<7mxrD!q317!p5MUp1yn@huMeU3d=$?g zvH0IW_=-LM2%%RWuaBA5>w7+*^CUhYfFJ*^Kpl(`$DMzV;rYw>@$YM)_z$6v{=nkD8;buvp8v+;{|Vu_pVPGGAzWwA?V;zLc<#6O z%MspU&+kR}>-PKv!mr!&?<0KCp8p)7SI-~d`NtOj_o3%E@$A+A-|+0!M{5=Q`zGeZ zfiDK{d}_k_xdCyU`)u#8;K#M{afF}4&-)_|{~9!K??bys=|E(EL&(Sb+u%JQJjdqa z4Ix|)?BRLyJ#y=?i`*8EG}ORo7SG4ax`IpG_ zop^sJ^u7sr3E*9f_>-addc1q}V7jQ`{j;ma`w`x~dJyj;_%XlJh(B%lEkfLF7GFU8 zouT-w#g8EV?oj*{7N11?ZK3#fynE#_-?fH^HCdJK!>BL*k5S9baLB?-EsR_EI?@yV zf`yM;c(;X<79OyW^NIKsOcI9E7Vffer-lFgL52Ts3!k&_Squ9tOj`Jhdldg)E&RHL zU$O9{g%u08Te!u-e?)~@pMS9M3l@IX!UGoWvG6_Cj$18ku<$R=)qJ4pe)OXsLnP+m zS23uUVvQ_D{_PgFSlDFYatoJPSZ^VXR7^*s6~muno-_QZg>P8+x`jWo@HGoxweV#N zU$XFd3!k&_84I7b@JS0Fx9|}QKVjiR7CvC%-4>p<@HPuiS~zWC-olK9H(7X%g`*Z8 zK)4ZGY>&O~u<%j~+bwLdu*t&Z7A~`}-om(r&cdH#u%#a@e8WQ8ju=n>Jch4X2s$F~ zFI&h@>k$6Dh0j^|jD=5I_@sr8Tlk2DpRn*D3m>rXZVOLac$hb(W}!n}nU3vaUU z8Vg4)9JKI&g*0z1K|bvkZm_V$!X|_)$JzUvn817oopSHMc)VusuUhzug)dw9JVGRm zJ!kLFTKJ5`KW*<%S;%di_>bHBqZU45@t?4F?ggyJLl*ylz29dcmZjtax+!>fT6mkq zpS1Uih0_+FxA#d4GZuf7z29KrH5NZ=??V<2TKoZf-(z8~#rN3z4hvf>Y_hNsA;+V^ z-s>%lTRiazZ$h{k{ZIT$5H3f!3E?t?NGs`y$MnQwdg8?pwj)H~hs0+(_UByXGM?!e zGM)F%^~iV51BT3}1EI_(gv4XMeD~__>z8yKVn{1N&12@014! z&mevp?>B|ugLwa*fZZp15Rd+TbVmr@gm(qIPc|SP{q$&k2+n%2Uc_Pe$0&;)!SYU; zfag!)WtTlaf#+N7nb|yQ&y+j<#Gb#2XQ9hT`yw9SNg9pk@8Nmao+;Nx)H$u~J7 z-{~H}bIP9Y!}C5qUwo%~0nhIvKAs=Ja{}@BU;h3G|9a1V8+!h?&@Cx54(=W8>mTeJ8JS(U)hvwRs|Chp`;J#dnRmFB@%H(9 zP(Sb44X6bT_U+y~ICj<+T1K<5{p>c&0EzwsAElnk)^`8fn?cT^GM>vE6;iy-(ng;J zA8NAMMwhoWIk1FUb@|x~snWim1)U`XYW%YxqXBc;1?EcT+o)zYuzI%7m3X$bVlFIQ zS#v=GOURARrcle+0GuiM4)yOH!#W-4+da5|Cqptcm7aNM}ujqN>-@SyR+3r?cXpaYfCYvS#JXjbzJ$z`Y0X n9cWO+EpOkYXCs4im*cJQxuJ6`;WHv$4HbOxME8wEz~BE5)y__t diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o deleted file mode 100644 index 2c62a7e6ce13db48bc25b22b9afa7ec31a651723..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55136 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 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~> b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~> deleted file mode 100644 index e69de29..0000000 diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~? b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o~? deleted file mode 100644 index 5792443351a73ab4c0ade497cdce03a2096cee70..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36 scmZQzU|>kSySRGM+OD?Z)~ZRtmzksLcHf9`*k{G`<*L_(?L8j*02>q$8UO$Q diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o deleted file mode 100644 index f87b3bf8f7579664b5b5fcd0aed4d5a9173223af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65260 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 - -N/Users/jeena/Projects/Pong/Classes/AsyncSocket.m -c000000004D69C48E000000000001E66D -t1298777230 -s124525 -i"AsyncSocket.h" -i -i -i -i -i - -N/Users/jeena/Projects/Pong/Classes/GGSDelegate.h -c000000004D6AED0D00000000000001CB -t1298853133 -s459 -i -i"GGSNetwork.h" - -N/Users/jeena/Projects/Pong/Classes/GGSNetwork.h -c000000004D6ACD5E00000000000002E7 -t1298845022 -s743 -i -i"AsyncSocket.h" -i"GGSDelegate.h" - -N/Users/jeena/Projects/Pong/Classes/GGSNetwork.m -c000000004D6AF4CF0000000000000DE1 -t1298855119 -s3553 -i"GGSNetwork.h" - -N/Users/jeena/Projects/Pong/Classes/Network.h -c000000004D6ABFF4000000000000017B -t1298841588 -s379 -i -i"AsyncSocket.h" - -N/Users/jeena/Projects/Pong/Classes/Network.m -c000000004D6ABFED00000000000004C3 -t1298841581 -s1219 -i"GGSNetwork.h" - -N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.h -c000000004D407D9300000000000001C7 -t1296072083 -s455 -i - -N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -c000000004D69B93F0000000000000A80 -t1298774335 -s2688 -i"PongAppDelegate.h" -i"PongViewController.h" - -N/Users/jeena/Projects/Pong/Classes/PongView.h -c000000004D6AD42600000000000000C1 -t1298846758 -s193 -i - -N/Users/jeena/Projects/Pong/Classes/PongView.m -c000000004D6AD4990000000000000241 -t1298846873 -s577 -i"PongView.h" - -N/Users/jeena/Projects/Pong/Classes/PongViewController.h -c000000004D6AED5C0000000000000478 -t1298853212 -s1144 -i -i"GGSDelegate.h" -i"GGSNetwork.h" - -N/Users/jeena/Projects/Pong/Classes/PongViewController.m -c000000004D6AEF1E00000000000016BC -t1298853662 -s5820 -i"PongViewController.h" -i"GGSNetwork.h" - -N/Users/jeena/Projects/Pong/MainWindow.xib -c000000004D407D930000000000004E05 -t1296072083 -s19973 - -N/Users/jeena/Projects/Pong/PongViewController.xib -c000000004D6ADA3E0000000000006D7E -t1298848318 -s28030 - -N/Users/jeena/Projects/Pong/Pong_Prefix.pch -c000000004D407D9300000000000000B1 -t1296072083 -s177 -i -i - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app -t1298855122 -s238 - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM -t1298855122 -s102 - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist -t1298767882 -s730 - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib -t1298767883 -s1675 - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo -t1298767882 -s8 - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -t1298855122 -s153016 - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib -t1298848322 -s3576 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o -t1298813363 -s220036 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o -t1298855122 -s22364 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o -t1298841554 -s14792 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList -c000000004D6AD4F6000000000000022E -t1298846966 -s558 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o -t1298853311 -s52648 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o -t1298846057 -s55136 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o -t1298853665 -s64988 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o -t1298767883 -s6280 - -N/Users/jeena/Projects/Pong/main.m -c000000004D407D930000000000000160 -t1296072083 -s352 -i - -N/Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.h -c000000004D6BA99E0000000000007535 -t1298901406 -s30005 -i - -N/Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.m -c000000004D6BA99E000000000001E66D -t1298901406 -s124525 -i"AsyncSocket.h" -i -i -i -i -i - -N/Users/jeena/Student/GGS/games/Pong/Classes/GGSDelegate.h -c000000004D6BF0FD0000000000000213 -t1298919677 -s531 -i -i"GGSNetwork.h" - -N/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.h -c000000004D6BF9A0000000000000036B -t1298921888 -s875 -i -i"AsyncSocket.h" -i"GGSDelegate.h" - -N/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m -c000000004D6BFA890000000000001022 -t1298922121 -s4130 -i"GGSNetwork.h" - -N/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.h -c000000004D6BA99E00000000000001C7 -t1298901406 -s455 -i - -N/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m -c000000004D6BA99E0000000000000A80 -t1298901406 -s2688 -i"PongAppDelegate.h" -i"PongViewController.h" - -N/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.h -c000000004D6BA99E0000000000000478 -t1298901406 -s1144 -i -i"GGSDelegate.h" -i"GGSNetwork.h" - -N/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m -c000000004D6BFC3B000000000000171A -t1298922555 -s5914 -i"PongViewController.h" -i"GGSNetwork.h" - -N/Users/jeena/Student/GGS/games/Pong/MainWindow.xib -c000000004D6BA99E0000000000004E05 -t1298901406 -s19973 - -N/Users/jeena/Student/GGS/games/Pong/PongViewController.xib -c000000004D6BA99E0000000000006D7E -t1298901406 -s28030 - -N/Users/jeena/Student/GGS/games/Pong/Pong_Prefix.pch -c000000004D6BA99E00000000000000B1 -t1298901406 -s177 -i -i - -N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app -t1298922557 -s238 - -N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM -t1298922557 -s102 - -N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist -t1298901406 -s730 - -N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib -t1298901406 -s1675 - -N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo -t1298901406 -s8 - -N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong -t1298922557 -s153464 - -N/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib -t1298901406 -s3576 - -N/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o -t1298916185 -s220068 - -N/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o -t1298922150 -s25104 - -N/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList -c000000004D6BE356000000000000025B -t1298916182 -s603 - -N/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o -t1298921889 -s52664 - -N/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o -t1298922557 -s65260 - -N/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o -t1298916184 -s6296 - -N/Users/jeena/Student/GGS/games/Pong/main.m -c000000004D6BA99E0000000000000160 -t1298901406 -s352 -i - -N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch -t1296319395 -s15453392 - -N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch.gch -t1298767883 -s15477968 - -N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch.gch -t1298916184 -s15477968 - -NPong-Info.plist -c000000004D6BA99E0000000000000445 -t1298901406 -s1093 - -CCheck dependencies -r0 -lSLF07#2@18"Check dependencies320615357#320615357#0(0"0(0#1#0"8623958464#0"0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o /Users/jeena/Projects/Pong/Classes/AsyncSocket.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s320506163.448783 -e320506163.895998 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o -x/Users/jeena/Projects/Pong/Classes/AsyncSocket.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@56"Compile /Users/jeena/Projects/Pong/Classes/AsyncSocket.m320506163#320506163#0(0"0(0#0#48"/Users/jeena/Projects/Pong/Classes/AsyncSocket.m8701333952#1821" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/AsyncSocket.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o /Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s320608984.442900 -e320608985.065137 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o -x/Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@65"Compile /Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.m320608984#320608985#0(0"0(0#0#57"/Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.m8617842240#1920" cd /Users/jeena/Student/GGS/games/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -I/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch -c /Users/jeena/Student/GGS/games/Pong/Classes/AsyncSocket.m -o /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o /Users/jeena/Projects/Pong/Classes/GGSNetwork.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s320547922.019677 -e320547922.108375 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o -x/Users/jeena/Projects/Pong/Classes/GGSNetwork.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@55"Compile /Users/jeena/Projects/Pong/Classes/GGSNetwork.m320547922#320547922#0(0"0(0#0#47"/Users/jeena/Projects/Pong/Classes/GGSNetwork.m8697032064#1819" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/GGSNetwork.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o /Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s320614950.479272 -e320614950.599456 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o -x/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@64"Compile /Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m320614950#320614950#0(0"0(0#0#56"/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m8620833600#1918" cd /Users/jeena/Student/GGS/games/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -I/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch -c /Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m -o /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/GGSNetwork.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o /Users/jeena/Projects/Pong/Classes/Network.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s320534354.402493 -e320534354.480753 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o -x/Users/jeena/Projects/Pong/Classes/Network.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@52"Compile /Users/jeena/Projects/Pong/Classes/Network.m320534354#320534354#0(0"0(0#0#44"/Users/jeena/Projects/Pong/Classes/Network.m8713127104#1813" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/Network.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Network.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s320546111.577589 -e320546111.695174 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o -x/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m320546111#320546111#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8615280160#1829" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o /Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s320614689.245826 -e320614689.351764 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o -x/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@69"Compile /Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m320614689#320614689#0(0"0(0#0#61"/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m8616796768#1928" cd /Users/jeena/Student/GGS/games/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -I/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch -c /Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s320538857.214200 -e320538857.289112 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o -x/Users/jeena/Projects/Pong/Classes/PongView.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@53"Compile /Users/jeena/Projects/Pong/Classes/PongView.m320538857#320538857#0(0"0(0#0#45"/Users/jeena/Projects/Pong/Classes/PongView.m8702108160#1815" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongView.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongView.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s320546465.378969 -e320546465.494968 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o -x/Users/jeena/Projects/Pong/Classes/PongViewController.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -o/Users/jeena/Projects/Pong/Classes/PongViewController.m: In function '-[PongViewController GGSNetwork:ready:]': -o/Users/jeena/Projects/Pong/Classes/PongViewController.m:45: warning: local declaration of 'ggsNetwork' hides instance variable -o/Users/jeena/Projects/Pong/Classes/PongViewController.m:46: warning: local declaration of 'ggsNetwork' hides instance variable -o/Users/jeena/Projects/Pong/Classes/PongViewController.m: At top level: -o/Users/jeena/Projects/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation -o/Users/jeena/Projects/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation -lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m320546465#320546465#0(842"/Users/jeena/Projects/Pong/Classes/PongViewController.m: In function '-[PongViewController GGSNetwork:ready:]': /Users/jeena/Projects/Pong/Classes/PongViewController.m:45: warning: local declaration of 'ggsNetwork' hides instance variable /Users/jeena/Projects/Pong/Classes/PongViewController.m:46: warning: local declaration of 'ggsNetwork' hides instance variable /Users/jeena/Projects/Pong/Classes/PongViewController.m: At top level: /Users/jeena/Projects/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation 5(22@57"Local declaration of 'ggsNetwork' hides instance variable320546465#112#127#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#45#0#45#0#0"0(22@57"Local declaration of 'ggsNetwork' hides instance variable320546465#239#127#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#46#0#46#0#0"0(23@13"At top level:320546465#366#71#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#0#0#0#0#0"0(22@128"Property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation320546465#437#199#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#241#0#241#0#0"0(22@135"Property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation320546465#636#206#0(6@55"/Users/jeena/Projects/Pong/Classes/PongViewController.m320546462#241#0#241#0#0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8702176672#1835" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o /Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s320615357.675679 -e320615357.846312 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o -x/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -o/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation -o/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation -lSLF07#2@72"Compile /Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m320615357#320615357#0(423"/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m:241: warning: property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation 2(22@128"Property 'ggsNetwork' requires method '-ggsNetwork' to be defined - use @synthesize, @dynamic or provide a method implementation320615357#0#208#0(6@64"/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m320615355#241#0#241#0#0"0(22@135"Property 'ggsNetwork' requires the method 'setGgsNetwork:' to be defined - use @synthesize, @dynamic or provide a method implementation320615357#208#215#0(6@64"/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m320615355#241#0#241#0#0"0(0#0#64"/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m8621773120#1934" cd /Users/jeena/Student/GGS/games/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -I/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch -c /Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m -o /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o /Users/jeena/Projects/Pong/main.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s320460683.547115 -e320460683.605167 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o -x/Users/jeena/Projects/Pong/main.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m320460683#320460683#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8627558368#1799" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o /Users/jeena/Student/GGS/games/Pong/main.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s320608984.269744 -e320608984.414175 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o -x/Users/jeena/Student/GGS/games/Pong/main.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@50"Compile /Users/jeena/Student/GGS/games/Pong/main.m320608984#320608984#0(0"0(0#0#42"/Users/jeena/Student/GGS/games/Pong/main.m8616794208#1898" cd /Users/jeena/Student/GGS/games/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -I/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch -c /Users/jeena/Student/GGS/games/Pong/main.m -o /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o 0# - -CCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib -s320460682.803946 -e320460683.114061 -r1 -xCompileXIB -x/Users/jeena/Projects/Pong/MainWindow.xib -lSLF07#2@25"CompileXIB MainWindow.xib320460682#320460683#0(0"0(0#0#41"/Users/jeena/Projects/Pong/MainWindow.xib8626087712#608" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib /Users/jeena/Projects/Pong/MainWindow.xib --sdk /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk 0# - -CCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib -s320541122.647972 -e320541122.987901 -r1 -xCompileXIB -x/Users/jeena/Projects/Pong/PongViewController.xib -lSLF07#2@33"CompileXIB PongViewController.xib320541122#320541122#0(0"0(0#0#49"/Users/jeena/Projects/Pong/PongViewController.xib8638250336#624" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib /Users/jeena/Projects/Pong/PongViewController.xib --sdk /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk 0# - -CCompileXIB /Users/jeena/Student/GGS/games/Pong/MainWindow.xib -r0 - -CCompileXIB /Users/jeena/Student/GGS/games/Pong/PongViewController.xib -r0 - -CGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -s320547922.133159 -e320547922.147945 -r1 -xGenerateDSYMFile -x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM -x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -lSLF07#2@100"GenerateDSYMFile build/Debug-iphonesimulator/Pong.app.dSYM build/Debug-iphonesimulator/Pong.app/Pong320547922#320547922#0(0"0(0#0#68"/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong8715120192#415" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/dsymutil /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM 0# - -CGenerateDSYMFile /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong -s320615357.890605 -e320615357.913310 -r1 -xGenerateDSYMFile -x/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM -x/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong -lSLF07#2@100"GenerateDSYMFile build/Debug-iphonesimulator/Pong.app.dSYM build/Debug-iphonesimulator/Pong.app/Pong320615357#320615357#0(0"0(0#0#77"/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong8620325696#442" cd /Users/jeena/Student/GGS/games/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/dsymutil /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong -o /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app.dSYM 0# - -CLd /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong normal i386 -s320547922.108442 -e320547922.133084 -r1 -xLd -x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -xnormal -xi386 -lSLF07#2@73"Link /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong320547922#320547922#0(0"0(0#0#0"8715172544#923" cd /Users/jeena/Projects/Pong setenv MACOSX_DEPLOYMENT_TARGET 10.6 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -framework Foundation -framework UIKit -framework CoreGraphics -framework CFNetwork -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong 0# - -CLd /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong normal i386 -s320615357.846401 -e320615357.890498 -r1 -xLd -x/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong -xnormal -xi386 -lSLF07#2@82"Link /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong320615357#320615357#0(0"0(0#0#0"8623096032#968" cd /Users/jeena/Student/GGS/games/Pong setenv MACOSX_DEPLOYMENT_TARGET 10.6 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -L/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -filelist /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -framework Foundation -framework UIKit -framework CoreGraphics -framework CFNetwork -o /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong 0# - -CProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist Pong-Info.plist -s320460682.801056 -e320460682.803887 -r1 -xProcessInfoPlistFile -x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist -xPong-Info.plist -lSLF07#2@23"Process Pong-Info.plist320460682#320460682#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong-Info.plist8626925824#511" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" builtin-infoPlistUtility Pong-Info.plist -genpkginfo /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo -expandbuildsettings -format binary -platform iphonesimulator -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist 0# - -CProcessInfoPlistFile /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist Pong-Info.plist -r0 - -CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch Pong_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 -s318012194.697806 -e318012195.224785 -r1 -xProcessPCH -x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch -xPong_Prefix.pch -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@26"Precompile Pong_Prefix.pch318012194#318012195#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8609309824#1706" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40200 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch 0# - -CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch.gch Pong_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 -s320460683.117455 -e320460683.547046 -r1 -xProcessPCH -x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch.gch -xPong_Prefix.pch -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@26"Precompile Pong_Prefix.pch320460683#320460683#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8630404672#1706" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-daqvhjvubgqdzcdaoqocczbyixke/Pong_Prefix.pch.gch 0# - -CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch.gch Pong_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 -s320608982.629915 -e320608984.269549 -r1 -xProcessPCH -x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch.gch -xPong_Prefix.pch -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@26"Precompile Pong_Prefix.pch320608982#320608984#0(0"0(0#0#51"/Users/jeena/Student/GGS/games/Pong/Pong_Prefix.pch7594869363256027136#1796" cd /Users/jeena/Student/GGS/games/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator -I/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Student/GGS/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -c /Users/jeena/Student/GGS/games/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-fangwlweeorbgtajcyzrjmkbpbgz/Pong_Prefix.pch.gch 0# - -CTouch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app -s320547922.148144 -e320547922.149847 -r1 -xTouch -x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app -lSLF07#2@69"Touch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app320547922#320547922#0(0"0(0#0#0"8715020768#328" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/touch -c /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app 0# - -CTouch /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app -s320615357.913404 -e320615357.916122 -r1 -xTouch -x/Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app -lSLF07#2@78"Touch /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app320615357#320615357#0(0"0(0#0#0"8622820288#346" cd /Users/jeena/Student/GGS/games/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/touch -c /Users/jeena/Student/GGS/games/Pong/build/Debug-iphonesimulator/Pong.app 0# - diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state~.dat b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state~.dat deleted file mode 100644 index 62f3970..0000000 --- a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/build-state~.dat +++ /dev/null @@ -1,256 +0,0 @@ -TPong -v7 -r0 -t318012195.634308 -cCheck dependencies -cProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist Pong-Info.plist -cCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib -cCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib -cProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch Pong_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o /Users/jeena/Projects/Pong/main.m normal i386 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal i386 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal i386 objective-c com.apple.compilers.gcc.4_2 -cLd /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong normal i386 -cGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -cTouch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app - -N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -c000000004CC128950000000000000110 -t1287727253 -s272 - -N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics -c000000004CC12246000000000029B310 -t1287725638 -s2732816 - -N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/Foundation.framework/Foundation -c000000004CC1226D000000000029D5D0 -t1287725677 -s2741712 - -N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h -c000000004CC1225F0000000000001466 -t1287725663 -s5222 - -N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h -c000000004CC1281F0000000000000AA1 -t1287727135 -s2721 - -N/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/System/Library/Frameworks/UIKit.framework/UIKit -c000000004CC12883000000000074D7B0 -t1287727235 -s7657392 - -N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.h -c000000004D407D9300000000000001C7 -t1296072083 -s455 -i - -N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -c000000004D407D930000000000000A80 -t1296072083 -s2688 -i"PongAppDelegate.h" -i"PongViewController.h" - -N/Users/jeena/Projects/Pong/Classes/PongViewController.h -c000000004D407D9300000000000000DF -t1296072083 -s223 -i - -N/Users/jeena/Projects/Pong/Classes/PongViewController.m -c000000004D407D9300000000000005AF -t1296072083 -s1455 -i"PongViewController.h" - -N/Users/jeena/Projects/Pong/MainWindow.xib -c000000004D407D930000000000004E05 -t1296072083 -s19973 - -N/Users/jeena/Projects/Pong/PongViewController.xib -c000000004D407D930000000000001A39 -t1296072083 -s6713 - -N/Users/jeena/Projects/Pong/Pong_Prefix.pch -c000000004D407D9300000000000000B1 -t1296072083 -s177 -i -i - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app -t1296319395 -s238 - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM -t1296319395 -s102 - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist -t1296319394 -s606 - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib -t1296319394 -s1117 - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo -t1296319394 -s8 - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -t1296319395 -s16840 - -N/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib -t1296319394 -s795 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList -c000000004D4443A20000000000000151 -t1296319394 -s337 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o -t1296319395 -s50700 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o -t1296319395 -s37412 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o -t1296319395 -s6280 - -N/Users/jeena/Projects/Pong/main.m -c000000004D407D930000000000000160 -t1296072083 -s352 -i - -N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch -t1296319395 -s15453392 - -NPong-Info.plist -c000000004D4443A000000000000003B4 -t1296319392 -s948 - -CCheck dependencies -r0 -lSLF07#2@18"Check dependencies318012194#318012194#0(0"0(0#1#0"8247620834010738688#0"0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s318012195.225562 -e318012195.372367 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o -x/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m318012195#318012195#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8603119168#1829" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40200 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongAppDelegate.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s318012195.226156 -e318012195.370994 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o -x/Users/jeena/Projects/Pong/Classes/PongViewController.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m318012195#318012195#0(0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8605157632#1835" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40200 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/PongViewController.o 0# - -CCompileC build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o /Users/jeena/Projects/Pong/main.m normal i386 objective-c com.apple.compilers.gcc.4_2 -s318012195.224858 -e318012195.362933 -r1 -xCompileC -xbuild/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o -x/Users/jeena/Projects/Pong/main.m -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m318012195#318012195#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8607991040#1799" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40200 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/main.o 0# - -CCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib -s318012194.391821 -e318012194.640624 -r1 -xCompileXIB -x/Users/jeena/Projects/Pong/MainWindow.xib -lSLF07#2@25"CompileXIB MainWindow.xib318012194#318012194#0(0"0(0#0#41"/Users/jeena/Projects/Pong/MainWindow.xib8608631360#608" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 4.2 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/MainWindow.nib /Users/jeena/Projects/Pong/MainWindow.xib --sdk /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk 0# - -CCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib -s318012194.398208 -e318012194.697582 -r1 -xCompileXIB -x/Users/jeena/Projects/Pong/PongViewController.xib -lSLF07#2@33"CompileXIB PongViewController.xib318012194#318012194#0(0"0(0#0#49"/Users/jeena/Projects/Pong/PongViewController.xib8608550432#624" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 4.2 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib /Users/jeena/Projects/Pong/PongViewController.xib --sdk /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk 0# - -CGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -s318012195.600080 -e318012195.632457 -r1 -xGenerateDSYMFile -x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM -x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -lSLF07#2@100"GenerateDSYMFile build/Debug-iphonesimulator/Pong.app.dSYM build/Debug-iphonesimulator/Pong.app/Pong318012195#318012195#0(0"0(0#0#68"/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong8610862496#415" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/dsymutil /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app.dSYM 0# - -CLd /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong normal i386 -s318012195.372421 -e318012195.600018 -r1 -xLd -x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong -xnormal -xi386 -lSLF07#2@73"Link /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong318012195#318012195#0(0"0(0#0#0"8610720896#902" cd /Users/jeena/Projects/Pong setenv MACOSX_DEPLOYMENT_TARGET 10.6 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/Pong.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Pong 0# - -CProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist Pong-Info.plist -s318012194.377033 -e318012194.391760 -r1 -xProcessInfoPlistFile -x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist -xPong-Info.plist -lSLF07#2@23"Process Pong-Info.plist318012194#318012194#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong-Info.plist31525678434287664#511" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" builtin-infoPlistUtility Pong-Info.plist -genpkginfo /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo -expandbuildsettings -format binary -platform iphonesimulator -o /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app/Info.plist 0# - -CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch Pong_Prefix.pch normal i386 objective-c com.apple.compilers.gcc.4_2 -s318012194.697806 -e318012195.224785 -r1 -xProcessPCH -x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch -xPong_Prefix.pch -xnormal -xi386 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@26"Precompile Pong_Prefix.pch318012194#318012195#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8609309824#1706" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -fexceptions -fvisibility=hidden -mmacosx-version-min=10.6 -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch -D__IPHONE_OS_VERSION_MIN_REQUIRED=40200 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphonesimulator -I/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources/i386 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-cvccpgbzzqrzqeehdffzkkoejude/Pong_Prefix.pch.gch 0# - -CTouch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app -s318012195.632505 -e318012195.634223 -r1 -xTouch -x/Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app -lSLF07#2@69"Touch /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app318012195#318012195#0(0"0(0#0#0"8609101664#328" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/touch -c /Users/jeena/Projects/Pong/build/Debug-iphonesimulator/Pong.app 0# - diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/categories.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/categories.pbxbtree deleted file mode 100644 index 7b4b0c70b10027c11636d6b766d9625766559fc4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1364 zcmbu8U1-l?6vw~M{D+w$Y@?*M7Li!(#)S)cNm4Gf%r4YknCY)YvKKE~*qEBVm~dg4 z8Eu$(DWQd=%*%zEXmt&U5|~B>muEG;@p; zhAjm#b}@LyV~ap@wv@9&Is~3`QPm(#|0o^ZDdi4GZ5h&sO;W@le`B#UP%d4nkmAlt zZ=0l7d!?2Fsr#@L#r>>YX&ij39gj^+la@GX198u=wa279d@()J$$+#iQ%ZuD07hdpos;iqy((5eM_EHkKT*K=WNE0o-XvPnBvqBL??AJ&wE<#5myZV z5om0b3Ja+PV$u73k5?m!{>wo)LYHU3)W+jmAlE>K@>Wlm#rEU--{ZfN{~mE@IoK{eeDCdg zVvn>6_uJEb-6q%XkwHC_Qc+xTh#5YO@% yCvuuo@(ibyv2N&h<E-~(Pr=KA1&ARr7XpWWAm}S`I|kko?HIm&3^(>IuEe` diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/cdecls.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/cdecls.pbxbtree deleted file mode 100644 index b79b2c5a3b7ebac87c6cd4c7f23ca28c1d3f1720..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 161940 zcmbr{2mDTT!#MtPeeJ#X-g|~r_9~lfQDkSYPzp&%LWr#FT~;Avln{z2REQASviJXe zxc#2~&vW1RQ}^T5`}H~deD>#a&UIbiG6z9$-#ElQcP1yXoAb2`P5De=R6>bhv zQ!Ek$FExq;S;$9K>XD46c)vy@c&SAs=*c(MzhDDf$?DiSo~1)4C? zu~V4NIAl|>#&KIoFW+8w-au~1tKW#1P`S9?0M~w5J`UstiyePVd`>aiHL{D(qx@KB z{TJ(>3cutl8c>fWG@>rQI%cczgiuxor-Ww-%YBvgn%sAvi1>VF`L^Y|thZbU)hc+6 zbR4w(W0n%O*>WoC5*L}OY(HcM_g@wF0YUIakw|dtZP&7X&HC%s2huxRBsh{c66`1( z33?=s1f8Y*NXkesTqZ|z-JI8g;E(I-M1e?<@QOOFj;y&H1fO$_7Gs0pN?-AG-7Bse zw%M>;9+w`~Cn!%v9^*rKTg3i+l#;&E!pC^pzRuQPW`Cj}IK&6yK9cl2?wF2_=|MjR zGL(1O=h&Bc&be2`_c~b|?^eN;DUsl_ua(21Ah^Xhx3zVRsfp#WUnrXo?IXu@`AK(* zuTXyTgP=V*ifbnef?#E_AoxAI^39*-_Og#3IY^ivVY|)Y_&nsJ0MD_(_AmH~zj7^?`j7wV;vdvg)hP&K zsvkC-kk01%kEP-gPliRQXH!LZGSl-#f^WH^j_!*V3BJxB2^L#F^R9HLn^)D%OqnA= zSM|8M2ASrJ{JS3n&nJllH?K;Q{qbyzsoY!Gej#}zcrR1rL4I6ZBQEaw45fH)yL!i~ zOlMvgYRC(DYqPT8?5Q9q_puF_XUYXZ1*%Yq&5kK4e3BZ}q7Ge~ z1wjhsys=XdWDFj*mpk$!mN+Ek*4yftcJ=O5{ndH>bXH?&CH;1~NYIpK#E|yyrR|nH z*%>1ejEt^Nk_YXi`vv>ECW-`=V?}~WGP=}z#u3+x<9cs|*W~cW+R7)!r>a5F7u{fR z(YePo)I$_|J`zj|$LrR{w2}Hf;R@j^I+_hxf?x+R2P!`r-cXOG7*{#ue%sl}F7{K% z_%T$U@($ye?tWLgxM5fIbGklT9$w}GVLc7|vCHzKiotJdNo`&@j0xPZJ(@g9$Q<|?!XeK`5^}#&*Z)$hnnwz{B37%*b2`X6bz(VUOtWUPQ<$`)}QMsNB zf|SAn!lJ^Sq_doYEVQ?tTG&k3l*Tlo2}x}~|C{nbRs{7sMg`Lic>@#OPs8(8oRd>aSSI^1(rnb(nr)Ob{ee zR|e2&ta@ktdOr7bd}8qk`;S$^e>Fx$QwRV1IQ2(5^(4LgrXbI+%>b&tZgSvJ0y1FFHPfpvL$=4IJ zgW#yNUM5zIAjriNRG>QbX--?Z(w9NJ%~+N>Zx(Y1%O#A*63g>g#b>PLb2hMv6)a#8 zaiT|pOXAlnsrg@;NHE&A<-*+h(bt88$Y=Re{p@ez{GDTe6n-UqSs&4l0q#49A*eq8 zFCKHm?;}>Sfo*)pPaNYcR~e{{HdN2DyLS`e@A|w36ZHM^={tFLSes4dx;rdyX{VkX z*PhOp2Ta#DI=(s=9kYtd+?}VLY11j4b4sVWCtf6&F-QGbrLM&_X511d+rBRn3F^B4 zjPJEk`_7awKdcuC7Pip;=ZOU6qO;P^uNcqJjMDAxWiL zg6q|AzvSX^s+6%>oqfx=^)AgVw_$5MV;6lAnD04on0-5>ZHmI&Bb+AuQTUloXah$q zS9jb=;jUQnGOjtO^KZsC&bn7>+s+G<3gZ)#j089(s4va~%jr{7DJR~vJjA{cEOJ1C z$F)1+(w?^E#j%PwaG4lSD>JrRPF>V^Sx!GsDRLE2FUXY5vih}6xz%p#IgX!-o2wS{ zd_fqGac!f58!=tWeg6=q6ecDvS&7a)+Y3qGvtjxHuE&$7?l(%A?6>?2 z11z5uUSO!@cEYX{vfL`UeZ8dj2jee4@hiV`iJJub6afiIL3*-tS7xZ5560Vm(X}c1 zQ<>k`AzoK$VZ8ZSSirUm@?e2;G@T%?^$M&Kk2i$jdxfWrd!^ayoE8~9d#3b!X1z|t z3IFDw?0pcA=VF^{#F3Z6Xu{gUt6VT(M>CG6qOE%~SThKt8%so%daL z64Q8(wBnPVjAUj*3T>T7?_k1m3CFo{t~Z^4SA$(SkDUQkM`>nF;8w3-z z!{Lb|!6<`ubI$>VEPr%O{V-1+f6+A)M1p1Vu!r?s+WAluj7`SD_w4KFoSC+T&;PRS z!MmUXmXlo3|6Pv+dF?NpEh^~ow)*1QZW;7?Sv#@ZB4<>v(0zito?$-mOt3E!6jv|C z8H+M#*I`-?=toQ0o+B_OKM@tocdv`L^*imfZSg#5fBzU!K|RO!&+OXn^Zh;j)pYNO z^g#=yZF8BZpzArjP29u;g#A}_akwzI!i%BY~C@-A0D5{$8Z`ZaTW*Bhvw zxAojGKWkKw5(ALF8MvsxK-Kpe{x-wCY%rNTc|(mXzuda!~VRObcEyF$@UN1 z?=0mLKHm*Zr0g3+1^24Svl@}$SMj^@Y*bKbqO^L>Y1~r&Z&y#nC+r7{X4S`yQf`GG zzCTD|z5hvEr@wxzpt#?VUv~@H-`aXDdA{>uy$I8rL!IlxYdo&Mh)3U3#%6i@Ilq$W zwmeif7O{pa+#!j%Lk2!%A)oSuvZzX3wk|dupg)!8npcxt`oj37|IYYM z0r{9oSdGG#*Qk5%u22TNCe1@xyGZ&6>j#zFn+(_3hSDyZ>(iMMJ3adm`9?b%Cy(6g zy=mr>>iO7t^1<~>F!^!wqYe-I(XgBoS5P06T|>ICo1Ds`2Gh7D4->U9HZZ1}_l3Op zx;$j#2;&_mIXKc7#-|fJ?@gBvnavG2!qlhr$;zq10?$x%r7!sj^CK+p;*Q&u$#E!- zppf;iEq}*8>)m7N$85W8{Uc&nzAIcxEX((WD~MRWDLlssCUSw3Oy+lv@*cHZvj$^G z5-P^*qandtGrW zBfm~mFn6vU3Hp{(Cg$u1$mUt2AWu@6^5mrinb_!WWka#LSAckPwOuAPAU z@~^(*YM=3}!OZjWa)tUYFLhH7o)>DRhy;%n($2WA@4w4!ddD#TN)-vVX|qdjiu)bq z^MZGi+swV~n>|!n$fvg#>yMUOzoi{`F8JNPmn_Hh43Skn6!}Cyd)aslla;l(y@b#?~{7M>tRK5>q}>hn3|b z!D`m9lXa|T4;%S{&Ftn|wy=%uG<5#=9nBkrtHW!No^@=CYg;?ZEo5W`lG#?(dK_UQZrYzhn2ro2p#X)bN@eGC zcKm1Z=Lh*yR$kO1eBThpqmF%f9G8V`yr7SG~BLKTlnnP>*IbyZCx9A=oYuglITj#z+k-F+nZ0*dwt7dbaeY%SW z^McPEyMeWQ#g}|{#j^?dubTV(ZroK5r>Ah7Hk`MK_H#~IQN%Gr8AUwrDRWSOJzM1Y z*ZK^~cGmCkI(=FBtZR~?zV}DUC6#!D^PY*WKh%AOGtTn+WVbv?_$qax%bSS#3$5vh zsn!4ZJma+Zho5PjC8o6ZlP7~*XM*rmVQ>2K=g&F@TTdRA%Sq{QPC`mO;k|@w#Ic;3 z^rR&zDM?OZGIHK=*@c<8pkFT{&sOV~PUs(6Df0#D#cln{di9`;_F0OU)^FuA7x196 z!u>yG8KU{1ehfb=A1IemJ$}a+^|}0{KxTD-UCJ=0`xSBT$0^QZ^p3^rR5lw(~yeaYtEtcDD^$eB`sO`0hF1JjM&<7Umk`yw7N*zsBwdV`1Zsai{(5ND#lJ zxvKNu%dWoGG;b**AG@oY`8_k~yBDjg$xC@25Ka-E6=pB33>^PS6?3?cI+NiVcJ?=fv7B!qF ztnS{47t15}$o|H|F)nPgvpuWrNv$lUajE4CeD++e#|`GV;6>t!T+H^&{-BGRl{@VcK8S$5V$WaSzKRd^Rv055D${lS_T6ImlQ* zRjPC4ZSgi=NJ%OChfOs;EpmK2`^U8?EHSRC&(xxgLIRQI@3Kw6zY-FY(+l?QX6NAs7CHvD-G zGbf9>z{m5oSLHjF$<*}x*fhKM1bHLDAMZb$>(tTSl9u;=zWaa8dA{i)PUrM>(pBla z@>CAtJgAg>s7w#{t0PSJk9dsS?s)c4{EGd`tcNzaW4Y%kifNP8w3}IP%4f?H$z{DU zN%`3JJA?I?!h{s!Q(};ftM;Ae2ruy}3*4iDc+3>Hu%3p`(w$4_ALv<9d#|l;q^Wog za9r-q`Y_(IoXYk^)$||Bw3Q#t3xC!J9}-Vm@G9}-UmOz9&h>IQr?2~Vw>;7{3b}7{ zUUdD;OU$o+eHf4MUBhR#H_H65-qsPyilE4o+Ul43osH_!SLO!dQbX8ii@wdaVOzD2 z4eBD{cXYaD*AIRn4n9XTqBxmKDtf}%i*ehN~Uq7-9= zdFdkNFpCAuBU%jks2rZQ+`Fvz9>RM?<$;C}PyhDM-Ve6TVq9=e_&u$#T*5if2gbwN zlZ{XP)d8B*g#nCa2FuuOd}ujHy`!AtlO#}g6S~L+b&Jc|W;gNe#p}FG58mMwy3m(5 zd4soki%0QTV0kQKsKv*8$W+Gj0TYvvAwm&_p~>9=$B4=U-bvCniJgq z*?sgMacF!)9rCVn7y068lg}9I9T&!9xG%8VrH|RqKWl&C7f~;iHx0e!z^)!q}^2)Zco&6j+F_mrT~c+W?f^?zg)pQ`3$=^ayn zFh9a~bT{Ui_aqVbXv$)$dSS<}>Okqh*e^df*}j1<`HGx*6X_!hMJP`#p5sNPx01H5%7*$hr!74g#MdP2=9#~{`BzVQL)}ug6P8Q(&U8Z@ zW3&9-#tzHh(K5czAcyFOcgO?lDL!#e+sa;Xtoh7-+YZsrw%7yBtyncl-@VM(#YDRE zG_Nt7Hk4sGTiMcHUrAE&2)4F<<-;8Lz$IeLl^?7AXWbk6rt;%a9jv+9Sd#gl z*TsBk)M@*6cGkCcQhvgpSo6xmdK%78-z*XpTs9}D>wQo?N>GMTOkgY{s1dF!>k;(1 z=KjKVPs^WYwU>JOzozOVo#@GH3}GbWn8}zap1sw-y}UO+ocHPrQY&xq2K|C*__q4TSNPWUI!BE!()8M^+Kjrn&UJrSXKdjbr7J5F z>d~A|d{y1tLi_lMUwO~9MyRB2_23=-)wue?`07zsb0zbexH+U*-J8oAw(%V&S)kr8 z<8^Im7r(DJFD7cOHcBpD&!L~>17@&*ZqIAm!ZEy?O&l1_IKuW4zSHiIK_AO0Y5s#- zd?l{Y)0o$=%W@CrPb{k-kT4452;W&I5T|Dj>gzNxb$ECr@B6P)?eoui3+K+Ma--Cl5~%$tMqT|U5NdkabG)4 zIYgceGavm(oBr5XMTe}$Bihl1R&=B#Q5xlr^y(^m`I%#!ArGnS59>$x8PCW>`Wc2W zf-%hLr9G;@4Va}4zrSA@@ipJ`3#Yln4T1yuGZK@U%;cspCF$Kv-HS3OVPaqPUVV%G zoU&^5aPAm>CUjfGYlwu1N z+4#18YlOb&Q{#DU{e3v^u>BCNBA$)AY1=xZs@7Z5ksf5N;C*9T^C$Zb=wITE)WLI zFk%0}Kg}(8rbJZmygYk}7impX8q%0L)aO}VrWZZvLN_jYu0OU#Jt1nVGO+&1Eo03L zWkFTW=`dU5bPrzUEygmPWn>nQ@SRi(X}X=z`E$o+{*fXRr&v#-)wll_e{^I;7N6B-RQ`Jcg^nHxesD_W@RiBc%__iY9TE>BRRH*HaVA-WIt*QiD^D{#&IQlR#e^hvub&_ zZF!D5xj{TeT3__8XBlZ7qh7|SL^b2G%uhoqzLd^n!XzlNp#Ea-IV`7Rt9>bi*8*j4 zt~d3?NDy0}z14D|WWEDuJ+Jl4malP>xaNj=g}JyxZ0nOQc;=-tU9GQS6|4D-l?;pR z^WGq0yni@X5A$PyJUAl`#~9Dw{hU#>|4;vtI6M5@_SMYh-HhY|=CO)C^kWF4n9Kq` zV*rB~!&FA_As;cG2`ph2b6CNrv`=jQuYJ!6+j*4n7*+ql=letLAIl7u@g)t@cqcVc zzhll_>^XhhY5B|xFKFj2yqj*V?satiZrW5I&(yDpm%4Cpnz3ZA`)fD()S2rIm6v@P zUNojVXMS39QyP{wXL#LX;GlZ4-~ucU)VWIM}?V zyZmcmUdCGSO5Im|d_{l39&P+fX{z>t{NTIE+7(Z0k752~3?9xshBVX1dPn>|pOlLP z%UMcm@5i3XYP{&>x!(L_i1rgdm%7P5+t+z+8ZuCy;@VH_)Hj(M_MV_WAg=qSqtiw2 zGH$DLT;-cP#yR_olS2HDxwoi1XfN?HD|7WTfpDELk#K`Bj&P;$GBdc!Y_2npOHAYc z`Y)`f;rGQ(#@F{Q^^S(lyg`@W&HdDe5=+zzV!m(urzJyK%%H>is44mwA~U6fqcgns zDPnHc&9$WWb&^}}tNc?5YuSEdhw(`G%ZJM6t%vnAd90`)zwvJ9A!W?0qvk2{{8$3N zQ{X(;Sa?gj`c}U$EV;pb+AGu0C;C|9$^2BlgJiuARX=l|Yx4Vs=Pu#AcRU|vQK#rL zTiayTSNb(^s8C%UmLCU=@#WmN3?t@B>srq00fd0-n_1LqXvA;H- zyRBZWk@xm5ZfPDPZ69;j@@5XQo7IfUV!WfnaN~=-ufl|4%BQ$v*~xxRahb&85q@vz zP4VbWmE*=%3Z5`tpVZ%sa8G7&x0N#1KlIdhFDIUP$SW_K|Bn^-&XEUNU(!BEmC_h^ z&S#w*H71_sdtP7eId+&faK;$I&Vu4kdhrN}<4z&YUs1j{eo%gg^qJdzCr+^6JNt>OltY@2%G_ zrwpW}SyOW$>+Rhq{0{ZFBii#@j@Oewy)#e0sc zt(+<-+a^&#GRp^FjC$~0xr<-wBTjjb`Hk;H4>B*3r)N^>Yx9bOI&h`5=ewlh(Mvn& zu0P(d9hH@yG3twa&#bObNMtUP?cvxGeh2QO)9T|--g_PH@fw#B<84oe|>cG5p(&MX&qPFU9BFm$@P-ml^z||HSb7n@Vp4L zAc=T9_|B+&icdxEx%Xc3S`L4IJ&ajQCAw{K<>yB^#oclb;S^3;-bQrG$;m_kcG>on zup)0Tio3Qo6Sn1=<@IRZ55CjdBa1XAGG>t1*s%InW3hB4kMA8YE6*$652VZXgPbRm z?Ya1^sQ!nmaKY6XQ)PcioMmFsOj>73W}Z{O=nxJNGi;T(PB+9MC!OZeT> z9pZG68sgZ55lmzbE7-sea>|QBl%NXj*~AXM=Lq+RmD{yR!%8;t9T(W+KBdFsg=K|t zT{mpE;d|uoV|upcd6sg*F^wFPQ{PyD1r?0Ve5mi9+}X3X3SP@`BVWVYkX*{D*6Lq?==MnC4k-s$&il;bH=@M9SsvHp4MsDK4eVoHKJR)s!Ak|aM@y}b%`V>!?E77R zPF7{l3gVNUN9FRb+T3~f{detdrTvfE-T}+s@(X|WUpNN}-vbq|90|G^=PO^)2l7P% za}a8o+tuSa4wz3I;fsuspg|VD8KAfM#~St*^80r4vam%|cSLeKANbWj$*K1G8=*Jx1Ke}H*_p3%4@d(??ji=1PONo>4 zO{VY(J2}c!=S_RuypoyBrj>1*)PX9rp&PGKpTk^a4AU9TdTHB66s_pXV8)T;ALX(~ znI7aAe{i3K;#<3ju}ipwRczpE_HdAsT;vW3r7IPg8Q|K}n9Ikk<_mW61HW*Zt3<>x zESK=}<8-TCUUvqyfX3z@suaX!#3vF`M}LAC`-u@WK3ahO~~AzTNWh zcRtvo52Dy!{W!C~SMLt#hmSkAu5&2HGknD^>S#lASVE0k%E-khRMfv!5^7^_*}hph zZK|s7aM(R_8aHyv|1dwo@#U}1>0XeA&WvRSJNc1gT;(1yltT(?vxZ0W!0@^E(OfX0 z?oEK`c58BJy`nw9nlq1jbB+*GhQS$PuInpmwm9DPz;|u09jd6^m2g_MQIVzHW zv%GSTS9p#QrR=Ag`q6?%`SGvP@~!wDBZhjFm~-bCZv67Bv*RoAYj&#YmL*8ZQU z^S`G*qhl+wk#mIkkxqVu^N&A|QB(6vBNxqKPjii^51Hd-#BzEF$-yvtM;@j1J=r4MsVCbE!&Y$R4Dc}OB2pKMSz(mG#z%~-;7I>|{-YEqDn45TC(sYt^{ z=YGmIK4Ud&S;rdIvw_c9$qH8S1)HecSoq$NYRE*{}H_n-8I2gUOkdsr=Q zBdMz$ZQ-am<+q-aj2yLX9s{|`YRXfUJcQ*EwwJ#;fBWxs{iUMbdusS4JcCjpEa5wE8VRt3UP};hfoH)lb)5Tv~a$$Hj@pdg}*16z6B% z!`x$0d3n;`97&k}6@8g8uGwqmjM`zzx$?4(Ys^tUgoUS?dluF&G}9jCMOZgJ7yqqX z)^GmIO-^!-9Gj$#k&I_5b6CMfwy~Q79N`pkzA*1_z4w^J99FP~&3wxNe&sBQ#Uq>p z{ipMn*7C6jAF_~7*+}eS>K+3b#~ilvGiM2k%QsFC&Ve%86uv8*?A&$Cr3+gb!B~999|*JkFXC*q^~;T+UFU< z8w}=61`)^pbY$d;^_arz!prK|CBomjT;M!^@aP@sCHK0(MJ{uNKRC-d&U1z^9$}w8 zy_RxkE(@5&5_R!Y*0P+{tmoVM%ACneVJEQ~h%2%A#(JrO+ID$;2;&&bcxEt-_n5#t zj3SeGgx~onC2cd(sAs*Rf@<1t=H22uL*J6q??q;651st20c|UNKYdf+eQ4gOpsRH3 z9%)|mg!fy|LUU1joUeYBcfBcV zytmcvPAxN69xOjD$^Q=ejj#0$*5CA=AwfssFYeJ!$JtjK0fiV2NYfWKs3Q(FHBo5=D%nY831y8FbXOIGEQQGDcQ7?1G#rtvH%V~N$0Q+a6Z;%{jEME_WFa4= z2-`~<@d&>Yv_e0yi9H;nl=j}7{5{o`k3D}>*JqL9ao-ngsNXA~y|S0K;`RaM-RB9{ ztw>D{m6i`>v`PI%F;*#qgqhsqae2nG?q4#DU!4Ccm%oyyC0x54)o4yT&JaT${Hy#< zUqk#z;MwMW@knr(7?x92@jDe#KkYlbKI2eb9?XHh)DLW7JM~<bD6+Y-sPzLdh~gA_}(L|A7S5?O1e_8L0&C)+yKjO zQ`B-J{#AL$*Eg?p-}J&G!d$}S{Af8M+$6lrKEk@u<4I-AJ&Hc{uzrN~G@K(h6pssz z*~WfOvYTIMC|;k~|BNuDx_gaNl%qOLn5yqP!ZNNin!oceaTpKr+TdD0@CSi==3uP* ze#lC3`HG$FR*lxq`YDLX*Y(Cd7Y#zlBHnWF&@+5shpRaXwF5{Le4|CQ!O??+# z_}OzlxAXnEazo_NIcYoZohdbm=Q{@($WQGH#tmMgA8)f+yZ(-3;!!N(`9yx^Rz9cH z;TXoc$HXajDPyl=&g4<-hZ(qHW*0ToReyc3l#!j}gg@Hd9hxU0k7WNRH z6D|`jpd{tkY}+*9P(HD|j@*{xa@cZV;auSfQd=G(9Kje8i%0m~*V%;}OCjY@i74qm zEIrYR8=r_@LVJ2vovo)YWK$P&qi&w*B&={R<3S&JNaw!d6PB@K{~)RBBnmnIGv^&* zg8R&4_z3-ld&G486s$z9)X; zv?~fzhANCF3oV{B7BY^xtm7xn5~a_`Og>6bo@C+?_G2@O$t&YZS&E2XcJYrvV#_^* zLxp+h?YOSOF2e4_a{M86;3Ta&O^$;b-#X8x~P5tv;Hjw5Aii=ucQK;X8-_ z^nJlaak@tdajirHUScQvsim$zug-R&53$wzL}jIwPQ1dS&t1aroG#6)EZEOcqUAF- zl7{T;D_}bpU3CiqR=+vS8B){{H^T2@b$7jy?6dti9W0+Er~OrV z^u4k0Z@u>_tp8*on~3N$ZnH$Ad&&J9JfqyJ>f=a3agtJ$dDVR`vB@*2`Z;&7KA2YK z2MwvnW8~q;a(&{PuEkb$dLP-<>&Hl}T*CLJd!=&?%Xzt^c1jlMZXtY$B$lt(cZWqp zv)+=4_HD8rzN1TH{aNePD9a*dQH;^{PZu`fu_wi!mHMLXEGDUVgza{9d+%j9;rMgh zApB$cu}DD%a!`Qcl%_H@X+TfjVAbO$x7Ec#4eiKw}^EtOJpv|62kllzY844 zF}Zn}Hjatw{G_DidL#XFWA&N5eBW9h+EzYsO(%Ju{ymIOtY#lq_(r?`l`Ayw;~9{> zoS|@E<2RLF_dGH{ev3!=4rZr5I-Kjae(vGi>Ye6MLFZVW@e8TroxB6d>w8${QSVgr zHydmETNoXpg7X!%%_;6()qCVlQNe|N#?bD*2XakbABy;!MSfd#OMjG5`w^F!G0gYP z(SP==->Yy`@Xi`(I^|jGq&fUNzbCn;zd7zZqw3nh_gwR7?-QT$osy-}*(@rEl|_B& zqI|WxBNIG>M9I5265#y)bA6xrqWiA(o7B6?W{>cG*suGZ#~;%Bi{H!Je{h#~JHle? zB0=PmJlf{CoBHX!59fs8Z(R4OzrCls2BR3m;_sCmNq!K=Bia^CB7R3m*)!^?biE{x z1~WgoG#Yo`Y3BDh&HY|XJZF2yk>CAZouoZi@H`{$u0F5c&Czzbya)JxvitYS@Vg) z+Sm^HP}@D~X!DEoXZ$FS(uzmehmDCR{t2|7Wa`m8bHsDnRzklqWtHXW!ugDmx6{?} zHB9)}yjtC>CoC;~d1t6Q>iKDss`I(1&-2~Gx~m>BP5WxtPCAK6E9Wn){$G7qlgG6+ z5|)%U;kP_N5xVlfeRd-`|EGV6ogMaJ+uiG*^*DuPHVdG3U4xoDa>OD>xiyw z|5d-0z`i5$;Sc`Yho$;QJoY;OH*ON|31bLF=+6iyF`qT;WTW=@GoK{zce9mOYmV$y zzj>#aGGzldSU%9)j>DwMre0`Eqsk~>uJ)4G*2DY=|32w4_rJy|{Y1PcJp+=6PVSjR zn2Z$EuwIKgT;?j*xyfzra-WD}qtVN93}GzdP~Un(8uKzqvzqgeB#cMLs33DJb0qG> z6o>xiE+iNK+DsXw&Ani3m}V~RS@aw3^YSzPpHVOP8@`?Wor;zbFaOkA@>7;ZOw=|C zozY%=pRUaL6ZGI57q~=h(ovAp9o?sozOAn^8tK`K z%OCkHxS;*Xtmop-&+GN9htKRU(t-TS zqK11vPG$1al=ft!xBZ2M&r+K3T~HX0@R^~J^Sd#O>8xfKC%8=#=QfdRR z=DG%(R=J0=&cRXr<{jb>R>zmPPIGliU0I_Z-I%SPbY9ns(r7&=r3$Iv;t_tw;eB;? zI#Za&fP&`#%(Xn9g7Tt}xa_7V7r4b?z9NQnWyoQ!Ep4}1NHXhB@K^qY`4QHS#jZ7- z@y^TZ8q+o!d&xlw+R&8Ryv}gO@eJw7N-`GEjr^{Wxq!5ihMy=%adJ_SWmF^lE>8MD z-)LSH(SNlQhiJkWly$AgHz^-^y1uu$9f#kSAGaM}%h<>r;!8tGDzZsBcCw#STq7c% z;!~a>jAT5g-S+@rM0wXom>*$1{c|0g;Oy#GZCS538*!usQ8`hlYI%)B&g3$evDyjS0a@>ibs zumA9Kuwjd&-564;rQ_sJi|G%aAxHQ09p>Hgr;oYjG4+3%_kus@&j+pCQcSulCh{H6md=!nxSvakM+ClOevoRyd0BRJ5Lo$MvI? zX*Ebzf1Bcs`on>hYE9G}qTGa{Woa8EY+PAqUxb^nEb5 z`M3YVz9Xz3V>g&DKBlkcEWh)~wJ?KR@USUa6 zaZhHxQPv#4pY&MX*X7?P|9|XM#1DR3+Uu(Hc?PU;!x+zr!oJ7wn7>OwK7HF0EG}ZM z$j|z(-wFRGiD@Z91sd{Ib7jdMeclho+rzAMPHS zmj?2wIe+)L@P8!oZ)^zbNBDm3KYh10OuUm;G(Iqb`;@3I&3sB4dGHDgS!asj6 z{)+X$_Upp%JMzIs{@XuQ?7`oCjn?17K;xJ92gg(Ro))n(`Q8Z0D4WjjZSwhicB=6| zsqf6>@!J(1W06xA``*e_&r@+7o0!s$|HW}n*q@uip}@NjpYLXj?r%>CuWR?|EMF0( zagFeM^GQ7GeRNx%`#RUENk27p@hKPo%$K6k&dZ-_I_5$#$PXf54CAxneH#s&SkylqZth zwP>78{EA8gg~+RZ6(wT%NDg9cEostihq}J>W+Dwa$jwIzAxCxR)0{Ra?g#nN!v0P);5qh+>ksVbJHBBDyZD-Tj`?@_ z9Q@6HVLZamOOLzm{tCw5isnpIp)l!qoU#mdOdVn1xYNQ@+@??^a};usg2(w%dwI2> zu}Iqqzen*tGg-oLde~Q`sACGNcVu?i@OvNIv&xTU+8}Sz1IS9Zjg+OVd~EWIrjwc!*!s zEcz#+IzRl|5c!0K8Or|b+G!5;ibT?XriyZTTA5OysdPQBYH<5o_ucKeiXq>bhe+g; z(exF~y&oEGPDIi<>J4{yncsGHKJS!y*j^57SMO_R(+#AP$~57RCfberB<-&4(vr?S z#YG*gHq7V2qdl*3fNS)fuDvjh_u0%5E^vT zX>8_W2J$JN^Oj>{x#vJ(Q(;lw;P3tm^CN68Wz_L140pZs!kfZ!4YhUUQ%pEVm_Ycd za5LZY3+H%)+eEYfb74whX7Vw@`bxS})p~p3I&CRzPh0Cao)&cSbdYch!)BoW8@9HMGv^^*aF|IekO%BC?3D64Pk!6kJ%n);lULR6qBXR~V; zIb183W8E{8{0RTw2x$y>J1EYE^x+@EDJ{D!uOzg5Rn{pMoM zMQP`WBEcIB?V1fioQ9IDfE)&CF#f zx2eGoJWC^5(u}rrq#L#A&AW`|J;pMQQKWNE)2j#Hx2PrVFY@UB2b);Ff6XFs8!P;b ze2(uftmxdkw%3gA8qN>@AL!9znw!Q}C%LPReQeuOPBe4CU-*~CF)gA+1uweCAbz2^ zdp$?adg0%k@!oxwv8aO2^cJ}OVC~K`*YT!)r`1OrJSZR!<;YmGrYP* zKDJi=J~Ggj2-PckY#LU55IDe zKzv$HP)C_Yf7>!dQ(o@VgrnL}e0iCld)CVoajvoDDyrv$?~NtX&Yz$qPf?m!+?PKw zggMAVS;~`+$0<$`GEtEXWT7UtsY-R?@fZ=}@Vo2g65bVN6NdfA!6Etw%ZbQGAyScm zXgo({QV?FR3C($dKVQ3*^+(rlWVs#5d7D1#ZpAjUJ65sYF0!x_SBgyUS; zfAn{sSBP@$WwyU=xhHEa*Rrh=jVZ`D+o#&T(egT4lbto>;eGo{Qj1o6>Dbb?e)k&8Q*IMoYjaj@W`sIrJWBti zcgBUS|ELZ1v3^uLH#T-E9~B&mt9(kR8#C13h5o;6QNG9Vi!ptu{>$@y&+OvYRQoU& zp19b1i2mxg=lzWGB5W%&7O;e=%-};7 z5!Q_`9^o_bX2R#Gi~7Y2GCdO8g4i`4Qygc1j}Kf*peoSVKOzb~cn_so;} zPQ`g;XKoQIrt@7l)g}Go4D)Q;IuS%S{tNrkpWjo;&x_iK_L0=SQR-t~bF60Ox7ltP zzgKB1!mG9yOQY?)s;rH>`Ifnl2waW+Uvsg6t~a5YGGi9Y8PD6|H;mzoV7lXq7_a8C zgnu{R?Bo2Q^x`%C-M9rSFL=zlUY9ozI*3Ab5)h9#jIsaU%`N|3TK~$vFdpHv{u33<(agP`q9WC(&qDYAg!OD=4?l90Q(WL0 z_gV0~K25(gO@4jMWOZ^D^{e_`2)!6WqdVqB&-?CvR^O4x>HlRIPg@X=@HY(|)S2E4 zqRU-#1HRFoe+a$kouBs}N8;H=<^B(sVdqanQcHk;nK`lrrHsL_yMc-ueA~ZBm`vIZNK}F)wzX>cYEZxBQZEIV_j(|Kl6I zy1GC{a`8hQY2hd*InStP|?}oI1zzgx?kH$bWx7 zkyt#!XZ3BvWfLrb2LFX8W|d*l+2Jkplmd((WbkyqYn zCy#zpo1%ti1+tQmqC~jo8ezGF?=1US9>j1)^9AwM(>Us19`Z_8AARvrbE4y1<{a0# z$pwDnF43O!u2XoB-}SwBNTZ*BLwKL`miq|D@S^1`WD<|?vxYzaX1DzoV=8TFLu-z2 z@La}GPH~Li_?43!AAMM)JAlmB%sIakGdsJmo@7n+$znf0vsq0WvHJcj=X>1ZXX?xrr}SVr z(^$eLZd1zpUZR8dUKX#jrMqqaI;jRaAD}kLrc*pO+#`n5)r$+O7 z4gHG8l^^%}2s-a2S;d)tvGzXY+rs0T;i0!=;zm*Zj@X)0QyZ$I?sl7hv@%!Hm#^(9 z7Q_8U<9u_gH1fL8TrR)4*hk*?Yu7A+Rs_W;{D2t%2v~zra6zi`$mLT4TsQWqI*O>uKr7@%E zKr`A=Of2+poXw;|rJwClj?%HrVkLXo>Gib4-$WAvz+8K4=Bs z`mTP;-|`XL``cTmx-98p4@cjDQc0H#x$dy?TwUTm41ovCqv%eA*^`p}7DQ)?PG?BC^?^;eOZNYKNDWt7AWjU3!9j7fvNIP)Oa=3J- zG`jRnX-w%p>EqG^(zwz?()iM#UV`tZ|Ngt>dA(MYL7X?f-{1$L>p$a>g6DaO`rOrC zpV9~QVg%FJmQ-T<`|eMPaGsJmJoJk;nxl=e+d5}% zY7c?b;h~s=#QPBEE0?|Rw6Qu|85=)NjL{x)Iv?LAc4zv{CvCm*Nqv`od+d3?K|5XB zSz$i;taGr&<^nyGduIP=jz?j_3_1S#-{?^7`+e!J7u^^M<3C6s~yf2&O z^yV2aJNMI1?|d=xyd{W@&dPq1disg7mbXeDP{HyJX;9CViK^>rmZR#srsb$QuVXo? z-s@YAs{2Nk|I=SopT5c%_jGA}2Gx1bF&*kICfMIk3@E3{Nl9d4BnES4^c9Zrzw6Y<_etWI#u>Ti;53yWX-j`2msRAu82``E)< z9H4AfWg^|qJZgHpUs^%BMY@$bma9>pxgIyqu8q-xHngHG?P$--bf6=xNh%+~{gta; zus!y2ntbZ)j(u%zvcaf$eK1V%1$1i+NNzdh? z4&`geQ+0hVi-_ZKS~gie&MD^eXTPB>d%xa~y!JWAKxeV|W(j@gLgO@9^b>2=nsX|X ziS)|p`1CQ?L$0w&BYqO!7+D^{y;}e6eO4iJ#1v$w7>ijZ4z{t6yTlhK8L3Qrx^sv#Tqd|zE2x*CKb`lK zHo!#3u#kfKwNi}EV$7$9b~Bik&uY85%zeH8E;YnRLoSJ(B1`lSl=)I!b`v+91PfYW=?h0d)_uq9#nsinOE?pcJ=kq$bLPz?hz}#bGj#-6UCK(%fsnxIhyB+>@v?{ zj>j!!ye;deyDn8ln<0t5>nR#lQ`VkO8q@JRzL(N#tKL_ISl;`e{(|xd?rlt7Lb;HY z+!Ul3WvRkj+Ro5ozN1#c|INrMHZk28ww&O5dxuHp+TT5O9xe|>m&+SpdR+Eh;{`Q& z^K*Ryqm8FyDNs1_I$<)}>y_IT|WDZN%}weg2X7pZ^SZ)HEtX-bff;NG=cmCUUi>sO9B+;Mae zgFWcac-9lEruIupGE<65)TRj!|Ay!=>p%QEq9Z(x`YqAa<+XPn{w>WQAHiI`vVFfU z9}6tcXC4b#!eSP&jHS$BENs~x#(AIKpb(h?7PH9CdQ-w;DrvgLm zJ4r~s%lln{P0n98Dw8GJ0J+GmzGmMM2Q95T-k3{a%W>A~i?%DH2jZZq=grCDba5TI ziSv5x_esl7NO!h(jGg73;f;(p)AhgJ|ABU1(Cak@XusA?WjV2Y1aX>Qxm}e1_uf{{ z8Elg^RrSweuNRjXdO$zVY0rmwoOZwXkoNJuHqy5}zg#+sb+prXXBX9HQK6W&%%6>O zLA?autGHdkxKYvd9BI_|+mF~*@E!O0(m~wdp2ydSZTSWH7$OgyEg$pTBx&$n_@bW6 zKy>PH((`NI)piZ;)%m0E$OrSFAU=9}e>eT;QSsI?ySkR%<_2du$9Z07Jv-RLJ~p$C zjqGAO+jx_`G_t*5ezwN)0v57}<-Ep9g7OIZ)3iKC_gvaXVX??5F@2TS>zZ%y1J^oe zQ~XS9<(QhM$iefx%Yk6IljrD~&b*w7Iqa9+yvMip^+;1=s5xCy;{BG7tIF;UfA)Jr zRh4fe1~7up_>RotsxXHqY5U|nCl8EXV(z-w_+p*lcZz-pQtPet+#{)6!=r=z9h8Tt z-z*BQR|cQqK3`5eajS}R1`?{P4CJS;YgKD`lT&=jGY$3kt@XPEzjgP3Z00JZsYX-w z*B2+=pM`6-`8{zgrzRI08>sgfk>wGzmpt;DkniNFqO^-x|0nUTSpU^u8t)F`G?p?8 zeq-=4g5Md;dr-elVxAy13CK+jo*@HI5u3DR;YkXK$?4kaOr|o0X)I(OlbOL-CJ_83 zr1b=2zPkG0q-#z1WU*%XjO8y$EFXEov@7dOsB8|e&Vt`i>7*^K z(LRFTQh8uG_&t@2_80u7%BgzR^S&0eLKuYF(HWcm|G%qZ@o)ddw`LF@jU9KtDz5F5 zLSDX={v=;7O6QY=EbQhGi@Y{gTHLxbq-*#$e<{5=n4kW)bIY%kV`1e~TG`cRKK+!} z+kE%By4a&E3Fe^d8kt|1Gpw8Ue{-C`Q$czB)qRQ0)lEHKBDg=Xs`QWUQT)Gq_e+gie6ma>c$9OoGC@*eMVja!`N3_Tgc zK!)=w6B)}ZOs5b3=`X50Hd${iZ?Kh}>}CsJ^A%UP%x7HXLr(Dl!I=7q^b!~Nn2)%~ zr~K7;o8-6hXk$B{TmJ;#a+3d4*WY;kF2OaFo6w9{=`u9^U4EvmE3j zn6GEm2NW=dR%oKV)0!^KBb#|b9tu%{@>Hij&1uhH&DA^F&VQP(N61GoFZ@s6m0c~5 z!S`i{67`+gf|e)IiPrR{0X3;eDT43SZe=uJWm^s3rh2okGvEj4+VIRcGhWsQd!ZI=Cq(0jcG{}8c~Dl)S@P}3Gxx#=WxgP zlvcdOZ*IILnscD{I7MRRHJYlO)dk;kN>Bn}y%I6$5zipT}{F)D+HT?c_g1e3}T>H5qf7^|duNfoT>@m09YmDI=ej(>R zeI>8HT^K8e!h#R$Lf3Wr(7 zW+qk;U($d3m&^u&-%tAZf$@u5VhqT<>xD8lrEI zJ{?E9-)+9jQ{^A$tID_s$<$NV z!OBm)?KW>Y$UFL#{$3kKYGpsYePmv~P=BpPn@e-ndMkr%*jCct^3lg~Kl<9<3T&QZlNk&kkeHP$v{2EqS#bxA%7E!8fi#iiYx7x(2u_eoyl8Us8Y z!DuE^j%w7TAwPX?`**d=PR^5DTTq{}WbxdSRH7Gk8A1=Qy~!w!GmxTO;bSt<%f1HC-+oIqQ5N#i*msd$ zJ>~q&`0z$L+kIC#(3s1ldrw|y@xC%=;~8TvXShqrv#yhU>|Bp82=4oT@uL3clDvNE z+??b3+S4?)ZcVSXl-8H_E@Y1Ma%8>C++ZHGReK~K#VAWv8qk6j+s(bXNS|xYBbmZ% z7PE>?Wc*Q|z+GirB7@(BxZ(NNowJtH_d514_3;>AW(*5`P3(xUP}Q7~`3SDB|C4() zpWdSnpa)Ayu-9=@m?~sGVeZNc6sG~rXwP(hf3N4l-} z*Xe?OY=i9+Q$3uXBy3nwZ-w>r9>>-`=<|$QV6zuQbLC?I}(NXxHP#d&o9@zF(!1x+WHhNW;UQ&mR{T zQJ>LonQJb<$2{?+xFRQyuvgtb{2BgKZErpgf0l2T|K~5cXM%f!&gn09+U`|;;;hdA zN7wheBMrhrC+DkU8c}D9vA>9WUfp+Dy`1|p^XoS(_r77BRr)UD{bKj?zxI_jr3~I& zXzp@Yoj20|HE_MJwK+T)>f;k z=Ni_nCD!$6wd(2P8++qsb+bpT@3md=*DIj?Ke!;T>f_n;Vu0fO)n5WD%xUK{&;DZ4 zeS+s#x(?=;J2DEiJRi)11+`bk_>h4(JN%^syuA7 zIfLo^jO)!m>kFv(i#)Ky@=p4SsUfst8i^Wfb9~=On@Hey0wdH>8vQkjER@^hW0pT4 zsmH(Gvz0-c|0p(vbpT~SA&q3*j+YyHytS20}T>9EjOVkp!jJajX&x*n~+ zz3KG>t~11OPxV*6<7>M|i-(0eh=~&J9V->C>|*GTN%WfU>%J(4U(vo>IQB4~MJvPh zA=lu~$^T}bYkR)+Tk@$-DfDD`XrX;P;y&K)j%i7S@K87HGF!#)&_Tz%q@?+&SS;T+ zvM&u{v~N?{W*pO*&vMqWjW;>Sdz|JXpL3h<__x=Bg1#e|BY&CQxYSLY?l%UObT57B zu+YJ3#yro5sfT6^&*`(*hWZJy-&Y(BW7zraXGEb3o7i|##% zNW~xh#q(rP9xROJ<2W;vkmk+ z>&@Zj7^`@O6!Y}=gIpI~tS?xiZ%`gZhd9m-&IhLXj6r)_HB=k1?m%V?)+aKCwcdAR zhPvb^hv~J>wz$E1?_EoTeFWtZd7H@8S<+bq(?_DPTPak%zZ(Z22Lc3)$Z zSa^J($CP#~1H?nNSJi6??<*;us_2IoXoq{XnUua8^Rc?suF9~*c297gZM@D~1b;!j z1oub38pjyNEOk`%2k}4`DzbnB(Up}pUh^y0dbII$as6L25k8CGtl#w7UF+m?ED2+3 zhx*NkM&?nTYusBqo9#0J+n&!tvbI(q@qCxc`&utGUnVGz;JXAVr|9>x%Trb7e&T!L zV&z&?Y^u}w`jSKHFu0$gy6+GjIG_*FcMZ4hnHpiCTW^V9-^EHJz2Nm8p1-z0T-Ee` z{n2%4>lNZi`u=h;E-fSNA>FggT+e<#v0gLj4dd3BT=pk^p4HY8RfxP6(YU7H5_;2i zrR8dir`3_y1!MQscYP#Zll}iBC$$}YW`irPBh7bz>}hRqjL#9zDx1aXNr(+D0wNLa}HJjzx@Se5!?q;N1ZmOGrbtZC?+zSWo%$O`#8#J(zP%av5IC(^?#1B zw7zE?Eeg87_C;k=L|;lT`jAe;DEhqLmZ7!zLhzTApbx9FNQ{Y#r(ZUQx@VqgY^?OX zJkf_1v3xI(EXLkk+<(`(r+t0D(Kbgqug$Ccsn<(Bf@SGF?LX^$eZuqVg!6pFMLO|0 zUvQmZ-Vxki(B1w=yyM(`i@wnIH^1mujsIEbeMtDVr3F@ zSi-g7@e=FXMpfGm@)7*Lc|wfh#1IkKpt43oYfH z1?u!QmUnmDe9_PO&;Z*QXB?o=4DrXy3}g&T2>wriEOVv$xOMIH1(bYFOjCmfw5BV4 z7{VB)Fq@z}g8t*@#^R~Fv4;=DRV%Ss&wjIycYMs@i3wtaObnT5J~P!hEV*e;NB-Fx>iBk9KkE8nD)|WNKX#~-vE)m6iLVbxr2h4{;~2siX0wJ-Y+w=x*v1>|U@u$P#S}KNnB}bE zAS0N@n=E80D@Z9HMG}e)eapeu^*9hC%N>sJkGCQ(?3#~I+UjdGt^~uWBL(&aLlmC@g=yf{;l`j<@{RhYn`~* zt`8X|4}BaPH@MC%ZnC1im>|h|<7x-}gmzwzmnhBtX|BOHP-cU)>F%!6G}a!pjSHST z%ahZc4|a22q@Ve`tvXR2cdLen3cMozsLZ>3JJ}0U%!k?CL>ua8OtF403Q~f@+uYkx z$?t3$^AGS7Gv=tP<*sMg_fPh-Pn!(pf3a~%6T7SO}-zp+$bY#(DSk7N{MNaVReFPonn(a#?> zhdE|@q#}Y$WaM+Nr4nEmH0DP=@eOlYzE(L;YqqX6}@S^y;XnKDn3k z4DIJw3Hx!p-!^tE2O|6Al!;yAXen=B*=}*iKghgCJy+L{ZqO&xFA^Tw_nd1`O~XT- z9P`vN<`IR(fmjKCm+ui{S1+-0WvlB3Egbuo+E6`pvR6IK_xfS;6#Zk$tge$J*M`O5 zHxXhY6glPx*N`iy>zXv8HJ$0r5XLf%c`Ro=JJ`n&PVpt*@ramJMxrcdP$%Ew7izpK9zkD$KRx;&yiNR-qKXrzv0@K zH1;li-WcmYP|vHRt@P37f-zCQe_mZ?3J(>wy%LXxg*s+ZH_CaeINTlz52eUrtl44P z>S|~Y*C)*tQWkPPq#lRv_1kF5F8D0HQc`7a-Pfkux7g0?ad5wI!S_7hSL}FPeYfAT zDJeG9;jXUIBEDCUPJWI=meKvrt^qmbZd2v2x)?XMO(^7;NBUg^F*fv>$T|tm@jEEb ztvpL}Wz~V%me;U^$>itvpA!t}puViTbC`2J;)#JLh)--DAr>)+MmW(4@hC9~Bc7*% z|G(pWC+(Lx%4RtmIb!VoSh|Nhe9n6`^86__Oj6H<)oXj@Lxz{lK`2RGT2fg)XJ{91 z(yO=jz*}Ovk=KsM|5?u;Cb@hB*9Ys4cWyku^#YRfMJw~nO~#=G`kpV8o%>8rcsyPI zx^b@S#I!vm2EA6|9d)onUU`%Rba>3UrFsh2cc*yDoOq+-UaKD&s7yUKbg8-4HuDtQ z>Esv^%17|KIPKbqT@G=HFUh9wOi!}GVxQMM*YgU77S`~6om&>st>m|7M5_R3=qH^40Th-N313J)y zu_U(NUOXul^N?2^m0^iG3cl07o8)8k`HW>6%h|!F{HJR&@svj}zSSxwKIy^$#w#r5`hI!oTu=vu}jx*kQZ|d#l7V;X+ za$E*kZ<5EaNblRm{JYM7JZ{c)=FgI^Ab!1`&%R<<)=m8Sd2N1mH(;y2Lv z#1Na;D8_c1s>D)Mqdaw}MHL!QgL*VE4s~H5 z#l`I3`Fqkz!S$E5Vzapz?9^3%B=)wL*QQAAH!8HbX6$UL?wYx#V7W7|dz{AO>XvJA ziA~o3<#lcM4RtBK!BHYS&PsCL^LV6~I3OlInB`pD^7W#T^%At(4JY*tr_@UW=hn(J zYZ-IFPU249E$x99WfTyHgOWwYX(4U8Y=r%!)4t1Tmqql=tF&*ia@~CFb`xW|@{0Mb zdKPoNSZUp3boyBga^gv!VKLX7>PSkTS&`cMPmzP?DMpyMymH?5`1+dm|AlrU7UHXy zV0^RWubwWV?CV|gfHx#0lYJfdFZ zE1SogrLmmbByikKEys|4Z{0T^IM?v{_lw1#^}D*}9p?2S%40YSOY5tNH_%v?*L6?j zleJ-3sK2s^@Hmsl>Fg_^d<5fM)c4ow+IAt^`CPhGdWk!hr%O+e(f(hSrjX_ush_f( zn=(Xw_su5%@n3xJ2(Ehs|BujPww;(%WTp^F#NvEbvW1_B;rJ6Uie-GDO*YAD9B!zL zUva%~iup<^&#lw`!o|3LFX4;&3excmzyH68g7^sTi+((p^%$PVe1l6>okKJ;uh8eN z?rc6namV~Xe&fhr1gFGgJo(B-@VlC8*vxd_Wx$4(A#g7c&tWIxhryvu2}vzH$T_xcs- zP2yT!Bwa-}%jKjm(jz#Ykam|yc~3O&s3qU)mD@(;R?M}%PaNw^=k=f3)@;9tciGDG zTobtJ`Ayp5qvnyHi9>UbBF^iB`#WP#4+}NQ?DbOS4a1E&XPmdk)=x|~UpT4ky`DS0 zxT;|;GeVgz_W6PSd*t`ps(!xE0Ox*BJ8x_q9$FV}-t)27)$RIN+K_TtAIEvU{XEjv zoK${h{^ERIeDC+Uecame_wH}!QmK9ZD;{DyhTvX+B5jQk_M88lavx~_H`V(u#+p;^ zbyE)eZA&ryI#+L9PG088i)%W0r>Z-4DVu#6w1te?LU5gdzb>p3TmDb0n(|;LT zOOPwB@j-kHBtcU9m5*SIJF6XB;|F4Q6_+c-6SF%h6J?i8Y=1u4^(xD&c$apb%QVHh z%D5-v8Nw#7rS;kc>vy!=#B%UCY%OU5={sWKEH{~@zgBrLSR+~XZ@_*%^DRFF*%X>SbRbaG>b z<84l2$DD?xgXN2pv|cUVxWCF{>BjtGiP-8Y14(|Xm!FhjdE1EL{rRL{dwf_r#jz%l z9`|^*phxdI`?4ztP59I=&hs)pJAp zY-~UBcWu15v8_r&#F*y?Pt(V(*JtauCsTW&b0vAZ!%ZIXTr^_vjmP(xqpeMCZ+_@p|hH zORdhA8QYlVxqFWqgJZ~(G?6qefA=q*6@zyBa~EaT)wzy+zeGdEaYeb65oh&DEnc&b zm$bvpXJ||pqSdx<(vX9W%A-GrIm=T$y^nR(l^@Y+Xdn8Hxp~z4qmg4vFxLLnIQgY* ztW-B6^iy+qopoy*{}JQmr}{S5=x-k$PvcJ2r+geau0A9FqsG>R{f+6P9N%hlbAqup zf$|8>DI3dkX|H$Qq}{5MHTv)OE1Hu?lbAc6F{ivx&hNi6$NZ^F1=q@G#}R5PuM%vP zw~rWqR34S*0m~&U4^T#Rm0L$jjBst3Pj;FQd;MJ^+FlxvFW+~#*3Ps z%PKvsPG(e4XFnKk)%S*#`g!(qjIa2CaDDh=BqSwIk&_#?+kKfjPOCp46+w9f--WtS z(VUWWmCW~~ug%gI+ULx4=E%f*->+AmbhUCFmuDD`r9A%({!K!#VFHN93*nhi&J0d zV;(3k`3T1SLVeT+b!kISMlhYFY^KI|b4Zr+GbillF2l|l?|7BPtY;U8`H;)p;b$s6 z5f=KinRER`u9IkIoxNQ)@9jkm*)gWzLM&4n>^~n8pzY#&my;-=z`zWNGCoV&prDqBK|iC?&eQv zN8QzX_wZ28$IW3f+0bp{{tn-N@%nbL2ZEdETKJid>?I~keXlB~*Q1;#GE_rz9nDW>e-F;_it(FgE zedTIoodkX9pY?-F^?gx&;hh2Mk|XS6%pmg>4p^QhJtUoK{h-g>!o&UMoMHbn=NUQJ zSnqK#_u1w65B3+6vLAe(qLn)C-c{eZ%r%V0>b!||#7SfGO)l~wTj-;ndvnn81>RuV z5M$X;pM~*}Tyce1mA?-wDJ!yVQvaS` z$v%!SaH9BS8QVC_2VCVFqD`{@4W6T>AGF7(BODv2Rc@7nf`R}$c z59Q@n-utp+WZO2&#=d|0ec9eUUgn89WVA?K5ZOlAshHi|2_5<`I_R~ zSQ^9mz}KET@{2NIA6q^Di`Umm?@8xMuS%CmZ%IFtPUV8-v)((z@)66yb+KTM9Go+h zeogzMBfZU8$Iv9Z``^CT)+onRsxY60H2cuCi&S1G+BI$Iy12{j|Czn3ukiYrAC#$> z=>L^CU9HdPZTw}9W8KIhKISeq@$2VMuWE-cil2Lv8CtTn>(`Sm42IhYx z(ii^dxSkwh%+%*RudmytJg=-Wr{t#n|HSv);{o4rhbh|mAWAhcuauAAdtv7zyq;8f z9kE^8|K4&FW%FZNZ9%%^U1h*r3Yhox8fren7Yn_f*Id!LRa@z1X`#=>Hqt%> z3Q&};Uh6~1a!f`vj_lWi?_)*N7i1r(x$75`G&i;M_>i$ORNHw&L+ka`#xnW6=Hcp} z1m8J-V*fpLzeJ4aBgVaLKE(p+N4Wo&_tozi&W5XxW#&g-%l*Fofm)UmlR`CDs zd@;y%8lnwWw!`H|nXcjl={Gw!*ka$5pz~g3vrqf}Nd7oHOdsGq1FbuTDJ*6!k8-Vv z7}d|_v;Ebr%oCF9yW*;ovexGv?~NxP!MOjRwXvv;cqQt$+ZM^wMvn3$kBWgB+DXFc z=H5)@0I6mePsldUb*-iP&1Lc~ZnE)rfB!AzZ~1t^J__ld%eDv4_jy_oaQ{Kjl09PnLlfjd%P#=`|x)Azy4Bq6!c@=TPh3d zHK4ZGxJ0;dBQ6EWH(sAg5o38pg75ohw$6{@DYoaM$!iKS^1)>7i?-J5KO{EQ8C*(NOoj2F(tgoY0S8+O4Y>`i%sx9&y zUHDe~j$G<|{wsY;T4M#z@GOnf7$;~+Yl8R)t|jMpY!8377i*}vq=6V}Lmx&kh54-F zb-p402=68MJn*9TJTgrGCfFrU< z#kM0nPEHl?d3vPtG0(>o*9pm`U&+Ku>u21g9XU7X$K`d-v8muaZMkJRy4cy@NS)2o zzm*W%1Dr=U*JrkO49X|9d<37%T^%GAw8@{f(Z+MMsiwx%4Ps=8cJCM`F>1Mf)bq#H z$2mUZYuaCTPM*cwUb)uH;Cjg+ar=e&%Wkj7_S;8{ePDcYJQ>HB%Sy9L^YKhebtAqK z$VYI0!N!KJ$;itq)Ag~IhpjX}SfEd&8kML@6>3w1>Lgxhexxm2b?$qaD~#~|!}`6g z%3=?1G0Sm}*H6DBh9d0uY3(qR_11Z9SO?n)Ma~Pe*w)=<`iM@-q@%G#om^Cw;g9(o z;bmhQH`5to$SAK_$U_Or(~upmncS`D^CIW{ZJop9eqCS5nH~BQ`+0YRxq>WkA!%PIHZH#)mZlR5S_(ptw*mZT|@ti4)t3y8c^ST)wqc z+_B8_QRhYrEGJ#BewB69InwT>j?eR7afjP<6z?gl7xkCuw|u1UD!vaZi#664t4Frz zAM7J7*FC<)B|hac7rDk6&U1xNxXQ;Q)6ZAoG$%PlE>3WcJ@SxMxh-iTPMSu}gMxPZ zO>42xM%j{zXDLWoYSMyk4CEvASyhGCpt*5w08Qz~z30q%#K1rO3))N2ufHUAoANw` z$w^I$g_|GYRQ-SbR!I)W@|HL$*F_$g;&Jf%CI9VTYHtkUqvJ?pg?jsr`>Y!kT#GO- zl5Xe3An_$_;ki~crx`72LsQz)nvK?5&3>+Pm22$fQ>Ly#*5;?^m-NeNd5Lbs zeoZ-$mZP>2TS01(DGV+<^bDVtKX_SM87{(e_?r}lX^jBn|5M`)NGrD+v5cfF274iqKN!zNkKCDm(HPrVagIq%S2)+-s+Utk8MQrQm zAfwMZ^6Rr+6hsZ4_n8NUEH|SGm%X`gG;@b0VtlD<1L>8k@pj@$ePUU2XV2YJroRO7 zqL1rHIdxy+qA~G~^NdU4|E6Q|y3PH1-tf70*;gLsvYU&9r1xT_h9vv&*y{YRPnx0zuN7c@ARAUSLA2)Z2Ns*3=1W-olf%gy!5`bo^+rx z*diU9(s$@AuP*9-X^&%W)(_fF?Rc(LPt4tO zI`_MDwf;TV_`GkYIo1TPmxyrRihQ0qDdra2j(cXd>yxURmkzgnp3FXDv%h3ply6&Q zbIg0ae~!;^dW)6jS$#*To$ZT}5%%9Lo8OyWq1?^4g4igM&~*Xz)p4xY;^uh!lAlV( zfCO{Z6$`cV2g}9xO5@a8oo3<%j!pI4YsLt6D5DIkv`O+)oU-Dl8YPrnZ*xXSMK zer+$KZ9HXrS@e@Nl$pmtK7#K+&uXcivbBS2IUV(N>S-cNStUOc&Z%dXv58<@JjPi* z;~PTf#i8|wkMX#F4e;%cL zW+8pNv~i`gV`6q$x~$oA@@9_bS)>(l?|ToZGGc zK^dkHTh7%oc|7e2boA+eq<8EYgYknU1pj~K4i0dd%iQKiVl2@AHuG5`<9PTtNLqP4d)~-=1Y_-J^{|jP znAgd6Y2RPp%u4ohP(IIciw7i>pDYxl5-qu`j=tqlv5|t4^6>0hF-vd#Op2|>Flirc zCyg=o`G8I=x$+3^*Q)cTF;hR3a+AI(vEN^sW4qe-BK>B5@4HXK8}fEbz1m+d=5u?v z{%nL;ROat9)4tOw-vgGX({_NiwNjj{b8ag!h79`WQOxDO^yKjr6` z>oW}Xwxe40P|eccbH8e^t8CMx2~HU19||DUMq8aK@AzU3U3 zdHA<@<6AYDtH;yEOLtek{QjQ6ZI1B($GCgJF_zXI9rF&_8{59*CxUwh=jyXdNLOre z97~LWG@vgJ-%FTfsVq`U9R&9k`uFRY|9D&H1Kz*g@oaY-Z!m*dtYZupytZ1pg2hbb zXU{E@4r3(kX-!j_(~>aTjz)Cqh||3dw7G`%E8T2-8Q&rD8cguHe%Hq41?F@4=|*X? zxrP(XSa{!9lFxEn%S|6~Z;-j-YS%hi`C9{#_4to>j8J?UM+T&%8r)VJ-QNn|;K?6jacF(+yJ(p7v(Z>o8&nzRa4sZK50 z(2{0!S);F6uMII@y+1AeqrViM49@kB4l&=;juM}gr%Pgy%gQyT&tH=A1}}*H3Up#3 zo48ZUcg)VXy{KDad`qpInJM*J<-JQ$q zQE&E{rK0at6n4Lk{_t8U^-O&2JQIbe!n(??ds4s3|Kup1#h^U?>Ajk9#YPe`kc$G8 zp)SohqaV4i-b$MjzduA6TqjJ);{ z{D#8rB+7;Dyv{zh(lx)|Dx|+S-b5G6_g*v}iNzwk$bFB`lg)B=a*&J1_|)?;rFW!v z`I;X{?YRg(v3!;k$|E>$D5m`DOmXfgEi6qF&2c7B29{^1@%sh$%xA;IIL&BFXL>S# z;f&+$=wg69G+SVO@`= z-E^Ts#frl^4wmSxfAf_4yQHtM^~0 zmgO#-3m!+<*njyK^c}(d1znYWU#9iY51B7FV=Ehn=yOKu=O#G^6gLBCFJAid^J0CH zxlPVx^0&#HW2~1N><~7edXJw|0Bpp@IA)I z)JJB%=JWo>TjNUs<c zK%MX?S5KOE9MKLo+s{#Bpfu&Q$b1BS`akWD-?pFkIKwA=!Popi_*C;L_Hvl%i_Epz zz%CAPiHH02#L6SM*E5^-i_y_>6_9>i`xjY zl9!_VlfRT!4(31$l+8xAFrK+g;&o-ei?`UrgEs$nuKBI?KI8Xu&Sdi(^IYwK0z6L_ zg1PAL{}TL`kN0h7px5&#kA%u&1WDI8HsxH-a`2nrN!4}ZiNx6E{5kdlE~OZ54SO!U5y(TRi-` z5>LuUaL;MH_Z)+|Z!J%|yytE`zhxcE*pbxsVi;RxcsAun$=6wR{#$RJ`#f0TcQBzqv<-*z z>pd{VmEj_f>vYp+h`r$VpDyk;HXYJGYOBBh9jJWk^{Je--XZA$=BW3m--b%0U1j%N zSUY)X``4wS>VG}YA5p;kP%*ZXu`Yb>h2oDJ^GGEIDoJaQ-tw@t>XWIB^wq8Pee`#( z*_CaSPGIgXZTpCAX87wo1ZxQKU&~|i1lL!1Svz}SlKz6YP4p2jYBwdFADJiK(=O6V z6MEcE8rSi+VFG)ouvAQXf1&NRQ^Y!q5Z`U2ofu_#9BJbkvtDp6NYr1@mj>r?9raNe z#Mpc5JSNLVpMjk-Mo`>bBfevQRNV&uFGnottM&E2eAvu!G`H>k+T1v=JC=3YT-0yw ztv%P(*JV(@T@I~!EDvf6$7+ZRn&%D>u9OgOmUtXXj6{tZ2{?l&^Ms4rEO@sId z?)ez8#@vz_>SHKl8O}&1FxYFeq(h}cSYUZB!z@pdt`)C~=4nfgWszgbrJPG}dA=|eAikWf2LN_-OYB>g;}TAGdsGLwlcWG4dytTTvVbk`0KHgr7d zbg;Y)V-{2OcQv)oQ;s3XM{v(ak!jinb-eHI{vJeDeMbRaqBgB~g<(u(F&o)SYQm!T6Gi@tws+W82B%dN#vpsSL(?uC_kvjUM{p zp5msr^C(XAF-NlfvW~ko$L0SM;>R(EO^ov2uM}Uh{HL+ev!F^(Vd)hx5M{ zoAMU+vSS>mudv*Zm>yr1CbH|`{JNO)^sM@s2J(Jae&37ZoXlLPX_a@$EqQ7TY_Z%;Xo`9#cLGKc>{oNHr0ZB<51ox`_sEo-xDZR)Jvc4PNK&2(- zeo zwS}XbT%%RqO=wCpc6#nj_OYHd+>9$P^4e;&`5D3gf0WJkSK8jL#jc6cqd{bQ8Cbxv zwb1{JGrn{ZGs>wTpN-I;k=}muljKpKTPnb{XZ3xSHxrxIlw~qYSj0d5i|-A=IG1a= z*p|n!`oM>O=dYi~!)+MmW(4@hHJ>0wy7hAzTzEdzTt# ztP)&v$e=&@yT9-EocHHrCx?h@JL4S32HHe(p2cFKeg|-ib@p;roCUuJ_(y;7JQ-X^ zzS_@uiS}KQ=bC5_>Zm|A;}(^vM_-0Af%Oc}?!7GJ-~I*p2tJqF(^EMv&_<*~8Y}Oq z<^ws6Z;qoJU-Ju(StkjFwA*_Jbe2w`s@9+Vi^H-mfp0UoC1noA6(`&|s zPl>vhccSf%<6HjhzTUWRs&{Sw&+hNF>A(G#+?v7X`gN6g&IQIHZl%@7Yp1hgyVruv zn=LqU0ILF>@uHWH# zG1*Q`N`w1Y)~o;O`u;>u=|7zl1;1bNQz^e^9mD&)@q8)Q^bhKb&zob;@)?2gIY+GU zQ2JfQUSs6)qpoLka4lS#<7MCJx2=c=uI-DZfgkGg#o~gm%|S-U#P{NEq_&^k`(6`& zBi(azM*WO7_Io|v5901Q>&a93Mf$G(wx{flM)-eiqUmpTIInd)<*z8q%i7dA*Err2 zlVkqpw`OB)aUAu0MxpSFtds8uuZO}y>Blu>qV(nq)ZnhWo+lMy!kN;A6M{pnClqtrao67%|{+uc- zR)+=RD!1kO#1i^;mRlZe-ZGiWW6ZM_n9s>;PKuA$=WwULb|`=8noG?~)3Ect@rs_x z{APmC6F?ISq<=p;|UHVYka|Nl@i{;hM(9LnU37*crcEq{_sjAYa1mx+nf z<~at2;IsJg;%@UM*Rj;y_T$EFvGYk{^NKL}>FIi!=dLXA`B7GJmBs&;WImBCMYz}x z3q_>!-D2rxkK4sEClb4}Rx8JyeiJ#3ShC+LX|<7J!t}23ERX+($(*wJ*XBd=xOsnA z=!s{=qvzkwq>op3(KCxxed@d{VyvQL+9Q_h_{>z^4^?(N`)t3yYX=^$t`%7p!Ffwh zi8f3nUMTWf<@2_2`2Uf2-vK+7kK_0skG*$B_Rij^tPn!7mB?dcWv^sKMv=;n z@=imxva*uOiYP@Qdt_y2ul!z@-hSUczAEzh{q?)^>N@v*pZlEaT<6;7-1o!Kg^rIt z>%>Po_Y)o)YOY|IehuZ7(<07WK{D_V#hIQ_U*G4u=udXjpM2l*FVASBEUyq=Vw7W; zai6-&IH(wpFwERnUSTTn2;a$y_klFjCz?i4$5Do}Tqo%g`H)X`8Mp7&*JGDs`?;X` zGw1)A^~Rv;pO!o=KeePA0|>wOdh_>PA9XGsryfzX|LE65KdzZJu(@(id7k7ces>=FE8|1> zh_$HNZp^>5e9L)#R~{9Q2Y8qoG-vHc>V6J$m4uU>S9M5VMmCb(%G?B|k|(aXFn}SH zN+3PSoWhR&<`L2(TlCNN?-l286uY$pmsveS`6l)!$|>o|MWN4?eHzo9*BQ4~ zU&T4S`FlknnxVZP*Iv8I1SYb+zvJyFt>{BPUSa@)>Cel2X5C}gv~T>v4#qb6n*;xg zw~}~0jPr}UAm8**ULD`}9HP`D?FU6xYP&XShe@_cANLpM?Ll*gwBvPVlhyp;wOZ1a zWJQd9g5vsC%E3;G+fE7Vyj4Kkz>wEm11c(Aiv4$-uPih=sxQ>dI6(fa)Iq%=9yNr| z=QCbaE}rrJ6BN=ezFo<9t+KSHMO(kOYg}Dld%n$nj*%pd`q+AV^l{Je?q%bMTYn9JS#=IhOP z-0OD!;Kg`81UNRlCJ_^~^`i=hok#DOuLM zV;S4^(2cl}PwTwtx;PC8fA2QU9Q{Z2WoGdkzDOHHr8Uk6r76K9RNzsnu*3Slu$`U! z$|3ghnC+YrmJ_C=G7%&rE+HOa{$*rS^`UmQaxV9)i2E@X(|5KyoP#~&qtV(i>$N7s zf3#Ud@276NPycDLw$gr*^ZCotQ@{RNjzE+xw}! zpEQo`9rk{F*Ln3%{_2s+8{wXhxLvd@)Df3Q#3ROI`d{k)$D^BHT;zDq8)J2n5AE-? z^dE0uvzM8F;u~~V!%!?DQfQaqCp99j6UXwMJi>Vi^HKNmJ-2=0bb@Qdl^)4>i0U+> zKd&>{@oZ({5_y?&U%DnnuCJt>c!cW=wWZ-Kj`>3dWpi!&QP+~H_IXV!pC>e)qC+BmJK+nvApu>M5DdhpGw;Hm97nlTRG`l zpAPh3FnQ_4P(uC)`84N1{T=S)_hhQiP{+*GFJwEvaE1Z)Ie4{W;FWdy4I7O$cPQ7t zIMxHkPxg27cWCxn4!=cnlEWkukI?^!u5L|0Vq#I8B4pzsE?c*t@PhEjT6H!#J)h!v z^)=2T1;|QX3RBuTyM?=jyV%KIc973!M^4kG3!8EOf8$ZdatGSdh$!mQf(EpvI=SgO z%RH}et8{sPkoupFjA(D$yvbz*up%}*T(X~o8O(v z*c%By-B8{ioSDsb!u{<}&{S{TCsS|j1ymm~w zO;o?WPr-}YzDRXVZ28LAcdGJTOZliqUHYkm^D6g6d8oSWbL%7Ijc^TWw|ySwpMK}? z5&5AaH3`3YSX{kTg7DjiPpp^U>uE9uKG5T?qkPs8mVA#a2^?6P7S`a9&61yM*s+d>q@pPs>M^ z@8pr(O5wcp9c{cvhfK!$iIkcC>H>b2u1(d?3wT8SJa4=G4jad@-fP=v&qW)0(z*@X z-^pJ8?{!jmDWu15%Ee%Lu%S9Jin*UUzssHb^6KxJ&h5+ktTg7MEZPJrZjgr5<5^nJ zp6*Owo^_7eW-Iah^Y0Sx_k3;%?KBCjlMPk;jrq!y>g@l#Z0tpMW&9=j@*+Lx#tUS# zUS@VHzcW1_(al);1$p{;^=cn=R}=jd={nsxZS%4IRS(;7uHS#-|4xHHzmmk0(6+oe zSi7=RnSDy%j|ZRDCuWI#?WKfmW`0p$Lihkp8AMXvWioU4ik~YP>p7mP^41$1Q|59} zi1|^{bcB4~SR2;X{E9et%A~y)kI+Z1ssFQ6+-HdUt~d0rsD4CU;lAEMJkZoOIyol{ zwvEhV)wzy&v(G)^b9H^LjrCsXEPXt`+eb)`aINEZ*D3Nkwo26JIr{J_qj-nKe6h)S zAj?j1Jg3dl_J5JVb?1D(Z|U6q)%U?NT0eXz?B=zO5RWi7cDvsidcl5%bDTQz#6)7x zM;=a1EgoGY-+X1g)zV>|xvcf_HZADNo&H`?a`6a#v2AS~OFLs1{iM3l%}?l)eXI>W zSV=#JAJvhC9cOFx!~KQa>#rUid{O)JyRu`PQr7#gCsluW|7m@VTv2nfhn9&y=#wZuS}SNBFx44`|!Q+uxu6wn39E_C@dg`rZs)VxQ^NyWjiJ z56S@Te>BIZZ_OHi)4R9b#T~tv#9Cjr_O}F;`F9>S=U+qltmQSL z)JbjVO6zX=_pD;!f3&acp_X`bXA8@vQw(`GB~?kjz-QH`Rn{w4Kbr^Grp`Fz^K7c% zdwZN9kvx%7Ji^$ekK@mfNPZun9tm~9GRG)g=Bpz*9J5_{Ycu&{X-is5w-V-6TdBhs z#nVh$XrHN_>yPvsQ{7QA{J$%O)x+P3*dzZZ&8#jNXIoFoD~rrkN0-kM>kBw}GqdW8 zi({rMt|JUFhkVuiSyA=m8T<9#Vb>}q`ursEUoE`&kg_DsnUd;z+J38-{r197wlmGW zHNR;iKllB6_2lT(kr7jDzfM>E-A>B?7ImmN413-DQ5pGgg#P#2+M%Ydxy80U8Tu`8 z%4VNAJ9~eBwEy>5?sY*_Z=92cbJVBg=Rs;Pj!smf4?}p4(#+*+a?Ew?&c|l%<&ngP z!?nSC{q2K$i9`6TEOq01Q2AUZIiwF)H@1Ey_q!g_hr#q?0KFoOH=M^B(x4tsscYlN zQ(G>me=VoX>KYgK^NnrwR_Eri{)(2$*^Ba=bDmSZ8#9J|s-v3Q&r9mtccQy4B_5%z zt=?9?@8lYlv0R4N%+V^3edPK7=&$~y{GD2$uUy=9ugbo2G)?-6NBXJqH9bce7mifl zYJ;yEZ};@xcAx*AJAH`mjrpi2UeFipYkc2Dd7UR8c>aBJV?)oMwp`YGr#h<(ET6QW zj`_tWm3o|_WZ*|-Fx32!} z{%?LRg@w>ZPN?0R<(zhv7EO5hJNqY5Hut$Pq^q%KNAs0g^bcN9r>Q?$Q(>Y$DrbG> zo%#A?TwALR`^Gqk6zlX$$ZXv5R#DH3=?Ac$Ega?ylJiD+S?2R!vC8%)F`ap=VF7Kt zH$@okdFo;N6>a;ty7x%bKi~Uw^O*lG4Cf{MCd15K>W--+PO2QxR_?z)aTh;&i6yg`^`n|M64O|M-%lzhyQaO>NWL1+b@lM zRw$=y^syLCt775%6TbglR$q@Swsobh`bn6)o@>Z8%)3yIx-{bfWv(KlKGjx#uFkXF zA?luSoEDD(CAItdpW}p2sl$?ZEuHiTW4Z1RI#(QKSS#mfs_~QMSD3>W9OWvtyno31 zt)@wf#;()a=ZDUFyv5R#Y~){}j$sKUS4mrbA)2yOB}O!R{hyCio`$}9Y3CxJ_WUtr zp$k)Oe~5VIsP22Ic9slS4 z{_0r#SsGLEkYI*BYk=LjDN%HAYP~zGCF=sh_XUMW;l0Py`|9@|(ziD~`LLCK2oGq(3V)`3eb>AfPtcbkS@bO!!<{}-S}~NDea=M; zb;0gX28gEI4WH|LmQ_F7-%4pY=qvYCXpg%JCoR`M?x?+!9_{*gkF0O#>(YhZG}d0! zp&xBnAwMiqCUR+;a)+`f+@&7tZ8?;eP_LJF{!TAaW;w%o)_N_o{5zZbr|XlGns=6| z4;aNrMiZ_L^rVdUOETkY?KgAS(Ep#Wr%U=91+6HuY9*%1b_X#x-8Y za8dwv?r{+fSM+DCN3Q^~i_^JpZvqWW+qr zOL~2~u$t#TKjMCqYLO8?2nSY;j3`!8zw3#}i2H@3!|NyIm#lt2!S;KL)1Cef)fcDK z^9jufiqqSLeWzA?ltgFnem9uEJ;SS~V3+0!nx zY3sW`L{mp5(jR`hp1FU0$`5P1epp9;lu6}{w}i8VUkgVH2MFI0juT$8{%6+DYPkq& zydGbF_6K2h;R4}auYVytFRbFcgs6r(thMEr2*2?>iEIp~3E}sim#aS#Jn8pD>|^8; z>UH5F;oJ~M;UHmo;b`Gg!mPIY-5m8{W_c-#e9uetp%=G4LLLqCVyQ=})0M4Gw$qO{ zd7oJ<H&^OIGMSuSredEc-y2Sq6e7bsa zvTzm?nZP<$kzW4KK>?noDc8Mzk?^;E&Iu2b&~j?BvZ9i9JB@yHGHoMsSUNyj6Y7re z8)LcDqetY4`mbp>l-1VF^?T#_-aN+#>Ss*T2lxKY=k4>dcK@n=VPp5x{bFvGY0P06 z>v-*``x=<7+|6YP^I5`2juAKiZro#8$FWzXGS!)~)b@Foam;1`^BBWB zOkz5-i09Z75I>{=iAYQu(y^9l+Np*LXk7Ut*93JG1KDX~B%%`yJ7N9ou zNJ#SlOYiOs;w&z*>f%4A%n=)Nd z?bR0T&t_)XNyrF-0D)W%fK9SIh>;W-yEK-g}=i_FbGeERW?!{kb|cCa>4?(@bd9#)HNh$Z2mv)#hL$wzGW@f z@#)XY^@j@!3P%Zx2zv>;(}d=< zqzi4h-zGvler7RSSj9>f@e@1P%4)W=jUU;}cdX?zcCw2ToMs*CS<2Te;aisT6)Sk` zDf3x`_BO=h3%=oVHt;*y(-F9r|o*ton3HPpDDWcx8kJ&^ksz3jXdYmbq zCzIYO$v|8ZkeJlmPxLRHE9*@w={!2u9|W_X;>1TcEn3+aLR&ZvO z^SWA_LLPQ{{u77!imG1wU07b2Sr|*WOT4~f6KTAbl(NKSvDYT^4lgp45?=2t4DEjC zt6!||UP8|&HPa{b-qk2|gf@9=P4!k)<@|N|GP^$faP^G7d$^pWr7p4C#)=1FF-I4n!Iry0u>=I|4Hd02h*7$@bw`{e1IY$cqRP*xgR=P_z= z&3TAsd#x?+vAjX}zUSM7p9qr)PkQ|_F)be>FhpIr*g9X)*K+4Vf6Nz*6@I`c4571jrlR_$m%67mfA>i4&Cu5Fv(5VUapX&R z)4uN$uBv8iCoabCZr3VF{n{IZIhaJ35k!EMzAYX-P^7;`5??^rRPE=}tFp zeT4E7(&MPl9H6h`X-x~-(t*zOry0HIMi2gNzw6dGgy*RUzn}f-RCSwknwwS~wR^u9 z52zC^#&E5OP3t^gso(Lfy5Agq?RMru);n&}k&j2IOEWt0GGqCWQY@t=?f9C;q-J9X z#Uotrm?7hQlxGfAh~nQqlK5b_UfQgSdMTglGup#{ z^Lr54#rZWZ6Hi)Y;IMX~vbns5wC4rhVH)%4V2*D%<9#NiNBE9>RegZ+6!lv6DCe7H z@9G~n)XwoUo7h5!$JFT+U2n^z?ardk$t<78HYVoZK0G=j`V*V#;@`gwcdMh1*%db>e$1I=d~$6`m9x zU@bSV0WGu~t^*z6DC^kEhW_ez;c>!PF2v&p%ZK=u)12V~mpI24Ea5A*u$iCvr|)b2 z)$!l@`pxvXVw=~v^>`9G#>9kcTX%9?w{HJVpND)Ju2VL)uW20M48M~=8AwG&a#M`Y zS;eitoApvz_j7MF@4=$Y=2f=nlaXVG{>~+NO(JXUIRpxR!tV+dUtO z!^&@*TUz^El5OfFrm=t(Y+wgRI8XHL`s)KAI9JX7S(o~@yO=!o94B`!L{#HS$Gx8KQj2#LKAEuM|gm{GZw$U`lQ`9jiqr1hg zrude~rC&oP>y_l4a?Tsg%4`3LrfvSEhHIy_Y~&svH_OWd^26=E>vqa9ALKZH{@&Yu z&-Zcj`)_g9Dc{`sJ-9oKUPzDd`(A(dd*Iu?G4E#|JLHFt<-;X}-{}2%lRTo$>c|_E z)^;tAV=NihTrFvmndg3AnoT!nGD08xQ+a%nCT%6YP6Yb@@7wONs z%j!9j$8ygXUzp2Y%X!ze!k2=NbBV8$n4ck8O4ov=N0=KsRn%uPE5ojPo$;9xog*W5 zidzbC4Ev}N85yxeTbe6RWJI5)uBjJP8Fu}oydXqv0j2-%pGKMEJf8N&pW3l9Y<^XdBYsJKGhy+kjyz;deYdwh<;a* z$cWs7jeVTwCANF4S!6^7byCsc?)}@Re|gY7D0Q@dwzFV{IXiO#4{9$atfm8dT&lD$|Gu$V(n_)1In4O&01>hpd$55lT{? za^#~p#VAMtlK(dzFIetOYhEHf9ce&UT9S!ebR#F7$Uz6%k)0Q5K`R>aEVZdcQy!%W zPg0#OWJVFXksd`Xcc&F>NVJ8QSm=&r^zr=}B|yQ;*?o|N0Ew zJTI}F-`>`JhTElW`1_7`lD>bvr@wzE>3`Fsiv2v!A$j9Y(zTa$Z%y03-_zf}o6g(e zH)#%KQLnRK+Kp}}KlPNh6Xh?~Q9HWd@nK9NzyHsG4Ca?7t4pTHGn}*hI~%nX+bEbp zyFg2IU{c|2J^&s$_US}hm0GP0h)fVedm*{`uJ?-H06F)H|#PV;2@1WZ${ok_A4IY`f+^m z+IB&i(jFcz=pK2;-Yc=|uqWhOZA-SSj)y{-qD5@U=>AxWT7IU8dvLwp!n#9KsKe42 z7kV#;&!nelOlj=(%eJ}tjJ#*Pfu4Vn$KU>$?HJzI*Nyxm9^oF#H>Ksf>D@mh4X@>n zX0YzwAKTd*)A~NU|1HN%CT;x-FG{Cz+I;UlmDKer+A+rGSBb+F$Mdpwd4glOYTs*} zgT-ENAih~`d&qTjed3$dzS1iwSDe>yUWRutKU~|`OP%|u_A?tXd4^41Un0#Hv6Pi8 zV>w^4UHb21D`&|4gZ{ZNt1vYQDa^;#t&&##MgyADmag>XKJf_mNex+~t)k`<^$+>< zJ4-NlxH?Rm)SAJs_?+~7nd*66C!ws@GK_GJDG^)SPq`2l(nc1s@jHAZwO)wF82Kx~ z@9G|5E!t3prj(-rok`8-tYa7H9s3mFr^F-{(TPDyj_@9vNXD~sCVc2n7AW^SfOA+HVgyf*)ITur1~IJS~ItxqeeF_Zz^Jm&u5oNS|d$Tq|A z{~!!$&{_B>AuTpoKcq+U2xUw0=wR%0Wx4crPT%tRRZO$)N#Qc#pcwM9^)g!jP$tJD z{OK9}fb80`r_3kk)Q{Fb%9YC-|KgFsXKviE)5c?mfz^eo^VJ z%;%hYeT}j{G>-D4yk${;9McCKlhk?YVjlR6bCN$YqVgr{9@DqBZsqv;JnE3A5}4;x zNA1|-{t%zNs?S?gSm(6)bQ}KOdPUS-%}eM@+s|-${Re&Yt6wVH%J&ZUh9>p-VYb`n zar+x$oBHx=qWOIx+mBJkZ&r*{ZsSKrycbCfl`6sITAw5xru8zZnxeX%*?~r0#-4;oW28NpK$G(r95GsBv1N2p814n z$?bopxbpI1X+KQ=r-kv-OY;63^3NyckRtTsoTp(Q%m3EN)9wExk&oXfx3L{VDBNSk zx9D#58k=@0yTbIWw%k;BOc+a;gkJl!MV_A)Ug4P6QtdH*_gWQR^E~HX=^-pC%;3G* zmd`VdWvroy*E2=PD_^KbmFY4(Mk&ftiPDth5gsO*?Ozwyi(DYm^K-(u!q~(i7FWD> zmCIb?JP}_1O?aBK#P>V_zgte>?a(*v?z{}Au6^~SnfH%~YZql@1i60`M?PXc>)CW& z-erTd-a_6~%07izt!&L^!y#?7up#xw7zaA=oMcgtKVDjSux>e$h({>5)1LKOZ*xmq z5{hYPtKyO=FlIF@4m+xe|TI2RgJf`pXH@>fBt;OMi9EQsLEW?n|@$tmOjK{@uCs{Jgg0I>W3V*Xzlt#(D2W@^2qW zd@$Sx^Skqs{R8=hc#Z8toAJ{}>OY3QEnSkUrFE#2u}x zpD{L<_WfC7rG@gv688p{R(9Xgmoo?EG&4^fAPR3nlKG^Z`gtXEiA zTe?3(9?SpsAxUqP*`I7<1N(NUV~Oj$BRzGSDKX9Di z*~vkEBDwsLfbntli^ym>4^fVx1-oqL5Fw9-dkYSAwLRP2#I_J0j&PbwMA&9*5|NU0 zWFs#{DM3`GXs(mH3PINL+iF&jo7xCC- zor1#2!ULqXJV^K&Be<7GC@bOKf@J+29~;M+W1wsrb2nMdRYv%}Cp~$SdOX4NG^Rwz0Zf*s-!EtUE^O(1q>>g<(%?Vx(+rlf*ETYWN9ZGO-Xpz; zW}Wg3WpS^Fh)h+C`6)?7YSWa~bcpTz%rsXyUfcS%yrDiV?s-}AUUWU^SM}jp?WMBS zysR?Ivoxe0Q8XYt(h&L{U8L(S`ENJv^)oxrmUcW(8=BIQXX!#G8WTkmTF{kNw5BD^ zXijIAI*%XN&o<%D6qG&%$Q#m0JVF~+)AC5RvxK)<#rI4n?^bC+0#cBUY!sy=F{ny; zs#yOjXX(yh<)S{H(21$suDpcr9#>r}?zGe<#Qnw`00r6P+#OY?C3pVsCky!~N*O9r zlY4!nwt-Nm7hI!ECDxWdqP(gjv+dOOJRu!M8&6i(ri?X*EKb9!DI*W4o7KmkbWxUm zR)5x#C*;xUyR^Zhj7xT_d&jsIv`1Y&-n9qY9yiDwn)oj5tlm-QHhf$<>WdGbFE8jr zbxdfSyihtnt{;6~e}293cMhL>M?UW1xTh;G@x&*uGQG?`xB8Bta@0{8eUr_0{}<9C z)L|iS9Cr>6azGwEPG5QIRc7%K8|cq}7|UnY`HHzLqNzMFDnk5dY`KIqs?B!Gd4%`# zspYo9Rl?tiZ+Q(r5aKbeuEh3w9Fh>evzm!q6r==Ysl=1ir;s|JG--}#SBQSyc1c9H zhR)+r`HSqF)(-q;7Z=EPR=a%BK6}`Idi#7v*=hDiJVHOL$~^JsZhq@|n)obcExWlw zq+?4=MhZ}p`t)HSZ}JusS+9Q;ek;18O5qqMI=%spsp=H%1RWU2 z&VyiOg*+JgbSPAmSd4(hVaIbkCGImS#@Gls>y$|W|^orB^#Z@awCHhDgS z*D^_uFuqRvy}FT|+00#0_&)t!;X3AJ(a!s9Ds{pJs_s$d)fMkDm%ZY;(Q60zU0<(k zIIsNG?|GipuHE{Zo+-s6eGp)tz(>Uf_^l#ep=e%drcl-$FCA4vc)E!00 zPd*N+6Mp3|M>xb%K4%%9GLQKz5TE&c%0lL`+Usjs#Tve*nRIJP6Baoq3mA1k+LBy6 zLVC<{PQu@Fnk{^@iE^;fI>KW|wU5qAcH3S~HpicIkMi-Wvcv4A#!t$~kL=*B#>Oh@ z+!$-sE838CdCUoFlA8BnM-2akF``P`nvVT?jcyTWEN-6h!&F}YD9(iz#b&b2Tt(K?dqsORE zdTEi3f|R5(b!g1!0ql^OC=s5f1GfhPIHaU)_ZtJDa z)E34ssvk&N@d)#CkE-LUv5rLg^{17aNcC!S_EBG5(l*#*pS-kR-;7y%_2(BDLrpYR z$?ZOPdeeyZY)q<8rm~!;U%8mSdW7@{_4<70^P=;4hD)5~Jil>{%Uocg^)@)?>sieT zzGN+RwO@6pPd%Pui@1N!k8I>8Ht_?SS$IXApVn^>ibt3Sx|8dAF@FD_*Y+BCo_K?J z+1@sGvX5}B?`|KVy$$Jc$>(G4($6FY@#yaSyhsnn)tR>Rr32k)N^_p08Bw&L35~g% zM>sFxH*n8?C5=8+4!>9aeoz-slIfHZr;PH{hKj}!oF`5tuThN3-0LHq4TSpRf;^Wp z^o_{H!xSbn(YfsX$AyU~M;h(%72-MWUxoRF{}GlDjuNiqQ+{MU>AaqY9+ro2>m#H` z7*js&n4@UJ-~G<=H{RdEDWdNd4^j}uZzZTfM?Pd0^ZAVBtmkK*`^4B_vGXUq`CHAY z#Uu3B@AkftOXBf}Z7x)9bE-Qk67D6b?X_?}$&~!spm*JG;4gUhXta_xsE#64}Q6WZ?lGq%@VOOJnlbUkT>3mLJ*9?aoWm2<1h4 z({H|W%3BkndhJ8JET8~hkEU-cy7_=^b?<ysG_sF&{73%Wuu@(>FTY$=mW8>5Te3(O z^+P%5?eG4sj@|t2Bcpf29RI_6^xe35%{8@pBP$hnlKecx&1@9*pDeMn>D^s?jC%invwr@sBm^4VL)HMF4*uM*-B z%I!auxnt7f9M?%8@1-CeIVnsjDpQ*&e8NJ$;A=MUcjY$3Bg_Zg?fq|&wp*2YeCB+0 zmiEI)aZEnpItis&hu^f}45i9Bd5Om^s57tq&wJ?Z6OX7_<}aEmyI(mk<^9gygMKr! zRb)i^+S)Sh{LTr|uDEN#8=Mo@F~fa(ZN)w8d-NvPEh3B+j=Hzg`wfShm$S{oF{IBl z$Joj}BX#AkmFhlm{=Q3O#0&9V1L*1Z2fHcb+MxX{ykE@ka(I1QOXsVLa-Y#WisgY# z+<&@C9Z|~f{#ADVR%`$2%hMI2*~|a#<7VFYr}MhSaqQ+0CmH5EEMgUpOOqNjpb2ex zk-_{qKg4jJF3Ph>gtz{dcM69U>e6<$y`8(g_v{yC=O9U_#m#%s?l!eT-U#<5-RXTr zu^fL=@^H-Y_Bd$1M47+c{YJxz-1+$n=Ov7xp0nNeH)}r`#_PPns-Lu_e8Jyc&$`>= zzjgggUI=yiznur(C;q>ZSlYy9r{(KhB%|luXhbz0BR3_e$IG-L%q1rik8mC8>S)*I z_UKc+2&I4*F%MS`m4{k$RDmVWfA6m z#r4RoVT`U`7xo_J?`H{r9Aa+M{xUh{Y{D3?n~yVIpZTWW;`Th7aKAV;oaCMnXaYA|?R6m?1{$u*PENSRD)y=zhVCW=$w-2>Jb>vqr zhp?``z0ZE^^%&{(`6!^h*+Kg(>h%ofs0-dc+8MnZ`o}Q}*rxd8qh?3*Vyt;Z|3^Fd z;r*_uFfpb3T6kfwdYe*b_3c!eE%{7a_Vj6WN07;RC6je?Q6-ygXV<3k8+~)=M-n@y zI+O57Mfm#+16HbYRvYJVyT4u7!FjuK*>RdLseDy^N}^cqXVQ+poyxtq)3l@fz+V3R zw+(OX=pX(kscw|ne=|3~MBElKfe#qV48olKe5MlS?muTEAM+6t8P6PUK2lf+?fsO& z>gEUJ(?$Bi)KZ@`q7!K;!|7$xpKK+JFXWNANql!re)#k6$sMxo@SAdX`$+2pq3(!v zPAN{NN-RF&qS))a~`h)ajJ?BHH{&+$; z8O78}?k(auuXmsoop~aU>(Vr%J-tbo*YBFs*m4iXh-iYbfW5rLPh}G$M&XbgrLPS0&c(vrc3)_ZKEo&OF~O?=}gQQD_E~@@ii-0#Y);cr=MFM(=%aL=+fa89+ne%c%z32HZ_OqAWyk@;` zty9c8uUa0=Aa;-|y1uJz&E!2)c{je3^?*KkzjXTDq*W(ma1LH%?qy?$nC9Y7pgg7X zT31G>x1OD}*I89?J)A@)Gc%R99$Rs8(p0^ptxg+B5n2!==d>iYG`Bx&jE>B(L0>5*O zD_r6#mwE6zV@lGBN4O_wR6N(&Se3whk}~oR)0L4WR4!}$OhqcNGLbr1_%PL|P7R71 zPZg#p8y+#&roOE}hlb`torf>mM*QU?iFZQ#5~ZBhiZn0JlPTP1OKbVR6Sv;0*uZ;D z3HK~+mmW9oTTE&B&-X5VlHR#;9kMoE^tV?x_Wdr(%vT=PJ1${&ZBx22%At6K`G(JI zqvBV_1dKKm=_YZVb zzVjPXav#q=`9hxhO*-GpBcw<8&FE+!Xh+!lzWL!o(pwzb z4RCy<@I0SmtV#>|Gn}b>&Q`9;R~e)E`yTXgo>Tcub=#=rnCg(*>xH?v&K$GXQ&>*N z?uq)9gFP3I&>!0=4)0RcLHBKLJpPtBLpV`Vz_Og!++Jgb=hZ8&%Q(G0obuaZ%efxakn0iE+x+JVu zI9kMe)`_qFylS}y^NFyyc!crwuqpa~_L*Xx--J=0HasF< z#5FcLp|7DGDtgkkFDYAx)YISD)<^0}ZB^w<`mfrnY}Ol)(Huu{b%}i^QI=vV+hwCg zM!c$Tcs534L>>LM9^J$5+-ui<*EXL~FWO&cb@Q5dkr9#V=BK(wM#RWye4jKj;$`jj z`h1ZQ?L4oLJTl@^X6G_ZWJJL%;#|UfT~_DoQSI_K%KibrMQYz|owMGZ&C5uq`vK4<>%2}yI~5yo+qWB!px{`=DZ z?}DU`IHd7W<>N@8t+^t+$OX=Dj`N)5Hx9Ck{rtiXc5^Qe#p_1i+^x=f`MUF>KA5X) zHCJvn%I`~*&uf#E={U-uGP#Cg`k;wD-{Kr5lBZJgWhf;t|@||Lb?s)CcL5>13^EjW5GK)njKopRK>WU41=Qc=K-?U)-lI+3&jEFWSBX`Z9FNq|FwOP-DVjw&l|Lhr6Za zSK{-L=kH6~Cf<9-x>+peW|)5C;Q97N8TIo)>621CLLC~uv^V9jHu}EEh|Z34c;U#1 z*str?R8~h-)|Xvioap^yz9SJ;NE%l4x;mlZ0`15*((N;Ks`UptZ{Mdd<~e0<(y=9R zj1%pz$5msQ_R9IeP;WYph5nXrPGgjZBO@BA%#Qu$?=iHM-;CwgzpdSj6B+T7?H>EW z{Te5=f0w1L?N0q(TP!UKMnpzz=xGcgT_0Ga4*SlS$nh+C$ag|MRoCp(&q}TjY}-{c z%To`EzxAuF*2XljALrqKb5lV)w`r4lFZyG=66&9ZW!>{lb869tezc$tIU}q;!<-Tc z#VMLZjGxS$hVXn+Z{FkMKA#Wc>f6n8c6Lr1#nGR9IrNv!pD@%p4%e`Tt2fIy$3qF% zv$lDCE?;trS^C2ZSgZ|O%FTJwbn@@*=1LvXje2}cM{^y{-8kV!;dYj&!x$zWz$yCQY9rL`N*zUtBRnSjUSDUsv^mImZBtdpvSOz3nSB*kN0nx>&y7B--Ad%Q zBqO6mWa2x^i};y=;-R{^(SMpfTb`fm^PH!n`smru)LmcM_g;CDv(_)@n5t1TnK?)j zKIb|ePtuyv{F_G_9}4%)71L)e#YOdBnThUS<2%OL_etW|cY5+ug?{EKv#2kNQI^`Q z+@S8@YtB&nG3Srev6Msp?vccs;k*q0&UnD~XGp&d(zKWJ_uXar(Yal&&bp+{IIW+) zR=TIuPJJ%UOSNI&YHNFB`=gzxsf~}G$NPDG*S4UxQT`hHlKiHBz1F%bZ2R5Cw%bd- zR^L2m8y&5;%DGJ^9-)7_PaJk@KZ`ndC0VDS%eT_5X z`d(SbaG$n}zI3NE!{|wSdN7ce8OmV(=@H6p=+`H49@A04d~9vH5?5NrBtEf;&WeHR z_O$vxJR=|XmevC~;ru-JxqZ`$LCoH4JbFnvsH0yq!gTai8-kZpX)7V;Fg?Gwr<(WOsP(vgd@JjpY(;YEfriP@|yZC;(bd8Dv%7!Te5xV{|M zXFIp`)k*9$U%iKU3e~xW=CQcI{cVhQh0z*m>x9?2M$!R}i~W}G_L0#CLV1~~k9?nW z2!Dewv+%Gn@q5`_-ypYg`>S)Zn~L7wrBAcMYcrWZZ-z0Ns`{bD_{{Qr>RJ9-IEi(H zI_q&|aIm`cq&jSbFg(%|#%Vp8x(3Ck%G!&*b&+>_1qNZQbIXeq+a@xJnH5L$VUO9GU_AKf>!+b5%Ov1f0RC^ zjw0=E(w2r~WgHQkoc|&2tD*Wv?VWs5|EN4`pUFPbN9EcE%f?pBmjKUX2l1;)_!-fli{iS6B-6P%M; z-<2H32w{FOiFkzm`a?0zX;6){BOD{eStO0ZZ!z?ce~-zx;WruXw@xwp-k=`7`P&TR z3z>5!hIy1EEH@YO4fi>hsrkF#Zdl^Dl8Q%|SGhh`-W+D%QR=*R^#Rv8w+vE#FEnxu z&9Q7`dJ@+G-%+pY5A`OR^YB7H*UqF_P37=udVBv_e$_Adjfv`nDa5hv0k1dKR<)!n zZ)v|K68axutbg1-j&hh^Il@^^ahl&4dB#|pH+Y@ljLGLakHU86)DOyc5#{?W&&QI6 z81hk@pMFU#dY$%J z;RNSxfbADxL0C7Tbc?CJk}laDQ$G8AcY^wOiq~v2n|!xIz6<#@{N~#W@Xm% zW9fO!@hq}V8rvEpUshK)JZ3*V?Pra2Xrm7^NV$DUJNt{iLHK>AOu3EuSfnphC#$$o zO4(VU|FS(&Jk?ztD@Yrkzb0>O^|=D)l_C2H@d)#5BaW%Vn8eR)bWZb#Q*Z5OZtE4M zGPQ|v9Ibd-JJE-&;uz-V;u(XcCx&^I#H6ODxW7q4eYyKds4q9&^SLZyjO~0xh)1|C zSVVpw$=g(vcGdYgntqq_SBNc^GYE4~`zQ6>KJA9_{dMi}8B$tK&Na)?g)zBeIj-=e z@HlBKUl7I?Cg!N+b6g_ikMRAY*^YfC)5Ce;k~F_Ue(BxDvG#C&mPzN%mOBzD9l8o% z_WDwBBh1e>&8Ck>>qoWw zP4wBD8B=t&Oo><3DIY3p{7PNx)ySicU_R@(*GDQF2;+v6xqTl}IeW8$e)2QYk^~K1 zzm_IZ%H+(J`eA9rC9XP&Pne}nDa|ShlOm1rAaO||e|~PARs5b>+RAe?wF4F9|IW^N z?L@|@Ra{GD?O=T<@d)+Um)>8^3f@*;#xaJQb<$+@)kG%oAs_HQ?=h8u1iXOI&X5&`@b^O@~eb=8ruDqiEPj7pZM$|zGMwQu$x1C%Tl(ppOwsD zes~^F9nA3r+MgW8CX}HPb%>%3-5Ja%-eV3+NG%>=KE3?=<~A5V%RJ&7>9XGEw`p%_ z#`C0AM)ERMnnnC>j7JhulZk}tg_OLYO*%eZdnv(tp5*>^xhBGYa6OZqwA}E zr%WGVmip;Qc{!H6+*4cigM2b8vwkBBwToY{ih|019`!;I%4PGtbnCvyC#UosXlxrP zY$H}q?Ht+EyVc2+(D^$mUsGv?5#>`b_if5IFdMYE|=)*~eYLk4o zi5D2ahpT*8*^D1$u57US@Un3f<*NR}!QbZXlwJ$<*f90vTRg`oUZo=k9M5rzI+j82 zYHQ0&A0|20nS7v}Y$m4mA}u8+yH-zi?&cBFqik~hU+49k#L`yX^npD7nsoa}SWf*~ zRvFAHE+@rnyVstRFJpRro_6C4>lJ^%cqfBCe01q}NIOzU+vl9EPzRrqmzMh62Frc4 zO>MmXsBLXf4{W6JDCr=)Upzv68sQukR(JNYPGQUK#izgJ5|#%D9~NG94%&KsxqN+} zywu0*MZNx#u(*(_@=>IzRmtHYXy+wPzNB@1Uw(vduquAy-ILW;}GTA^Fzx;XZkuJJE zD)*Cyj1*^iQ*#Z?T>rIPko*)N9~G6O^4j&W)``|kyJ)#MMfj1TgfUHF!no!KZjNor zT23P#;riXdjrw5R?r%Fxwca`7xZ1*be9Axly@x{D)9j=t6-oKKM>sFx`rlHYQT1U!wZY>f+tzVj}c!n0`e$ z-YajF(|%RgCyvrD*A~9tK)osaNqhKU9`i>Zi<`3X`X%>#l-1vr4(iCag!Bm4LA$G$%P0$3^ruP+i}E1FC{78A@DRUQ=S{}4j5&mB z-dmW?I%+eCeMIpzhgl<@F~u=HaYI~*B-9@v9*NWoiAh3Il97t!%uM6DP6F5Sg=6Hy z2>I}U<-=4{R*wpM3E%YIWx87Kp^R73&R??M3!LRQPIHP>>b``;BQD9rBh(+Gl)-MS?Muj~6@8{A4QWXS z4rve1Fi8Fy!2~98m<0Bli&ym3E~+=TMd>FuQD18RYJQ>*A@AMIBb=8o?@+=v%TkdM zE48ib^gkJGIhs75(psYExcG00I`f#eu#z@mrS`3^e7H?NrM}l6(zk8p^($WgWV||vqoiR3 zwY;~@djqVS^CR^uy%(Ba)mC`kHHCsGa|z0NC1Zg9r?@+T_o-?dK7JfS z=p^$j^HiCqM43Yfr4X5w%8((1LS)DoN@fzJ%&90*ks%^ehEgdqXRe66-{ro~`*_@j zp8fg!K5Os&-@~=ny4H1FYuNi=8^7A_)119+NtRap9V($V8sHy!(DzB>yqJNt zh|QA8Nxia~*H~L!Kx7^D3F(m^Wlo|wM@dr-f1Ww~54&X5M;~@6pSL{Pvm*g%G+EG>M z!;vHIhvw`-TJ?A?e?A`z@d*~;BP_=A1(dmZ`;_$c3~`m>UvW?jP26l>_h7NqwmL5|#h zyTh@oq@Q92DxeldpeqWawqrI)?~`VhhHEyro{^o(jOgnhO{NWv==Jss%_qWZC4^Td-+=mS=VA46C6YDQb~U@aLAsW+btqvvmn3Dw6A^d+aiVPlc#7){?>Xi6h~3iMn&9*%BY5WQ68mH2DMNQ z-4E#}M^~gi$&VrhQsVM{?Pxh};eW2y_q^*YJH#i=RQ}J9?|FQP%;JQR((dSBeUmiw zQx72f2}I8`j#+N}EB*-cxrXi|ueuV`ciaxRZ&~*rg}Q8Qct@=zI^Z!f_Xu)}H@cuF zUcpctLwtPzU*Pg@&1WKTn5TBV|Jv&9Ua#VHOvU?HgwL=F8?gh|`%kXMcj!+<_;0SO zEh+2_|4-HTdA6Y|J3X4+kp3Z^B;6;SDg9mgopcO-u)fpr{j9IEzLgB!Y{z8@CMbM& zEqpU=B-%up>wrJy+eJ*~dp^S-xQJW$s@qXo`>z7V@>^3dD4($(yp>;j9E-8#Zn1!C zWx@)-{U&|PHJhRj24j_dYmky0p}tfiLk&EL2T%buQ5IED71eRbv#)BQjjtZ{R0q1@ z@;VV+7qZclCGqrGViD$H0Y1P&%*W;RCD`@QzTJ3=jl^d3PN`k0fAKZ_Nso#X{8e>*>>$=81=l+7^&Rt8cAM>zl*gaNUz^)a;mM7#>7k#TO#on{| zXiRax>B_9F7$tL7Z9H|pdSh)M+-S+{fDrpmVFP=}_tBVvHTV{T#NsKl@fC>7Wj;Gv zpcV2d^H1nNngaSObBG1-DckxIKU29IJ6%dW!y)3&BaJZCqZgsI9o6-pR*o;>b84D0E-HFbfJPU?n5@zF5#AFHfBh=f; zo_{8y&gi4S9mtEqD2SUJ|6)#TbOW3GwODTcqcudolW?xImdLW6#sJ(RX-) z?CN?J>yNB659aHex$A!(o7}EoKMLn(k5Cs4@f4m%Zw$i(yo-fcidEQxpYg!|1N#x= z2=n!K@q54EG}?In{uqkM_)Fc0pvP~as`8kdfXzlp{loX;0SwRwI|QRK({_KyMgKoo zPwQV`1zNg(de_`-eHap7@~7GzZV~L*v-WjGZw$g~7?0`rL_J!H(sZQ)X3)X;_!KMg z4ZcHfb*nEL@Y@ebTcIs_pcfvq|5{6sBgBOZ-ER@*vxAZ9Yf>Dg>pvBCFYB}D-74t{ zd2$dZFp&PAV!kttG7=LOgbPyCOQ4 zTHQi_aZ52a`EC?ft#E8U$41YyS!p}J?U*h>j?m6dsGMf24++?TD0B_=6|s58X{+(r zpQg~^0Wp>0U;Wyl-ezN1GbZ5AXZ47u>sO{OjHIKYt5ygz?+AmaySs;5QR#JFAnu z#mOVBKdPQZsb}@cvrf9I3cG>TVuRMwt|*O4D26$e**grv%`Cycg!y!h<=b7&#fEHr zQ!&|7=zzyO*Xi9 zneUZfJJBScnAC5nh!*B;MT*szRWQfGj&e!aZ%l|1cR1$mg8HV9a^w0R>fmevb>w$3 z2<4ir+{!wq3Oc3cv%>{rv7~oS=;y!R^PP5&;~2&Mc2!q@$VqRl_rW~2^9A=W+*$v} zT(Qm~@6O~V7lyO>KQxpd$}JsT&55}~$@j7T^lbbkZnT8D8T{Oz5p0EWy9e1&a;mnb zJSgwE50UK+Ws=u=lyZ*1Zrf$_BjjRhD$3iBZ`aq22kWylxcpt~8_5uUXPPd}cSu9O z?m&J#f@hI>9bH3qdYB(M>Fr$@TikCY^lf83w&MU!A+}2vCx-cSo7JtZ^d?6$cJh$; z$Ft{W)B3QlpYw0U{Wep7`Y`Dv{O$N3kC5}vh=?zg>7rZdSYCO9&GIOf@|uyeeB$@)atbD+S>0``1Wk4qyOhS!m(v=8-1vO+H7ZC9916q?O(}%Cw!Q% z!GXG(UAWEq9Vm*c{SSCd@+as==%GCo5?oBo@J)Qpb6dlJ>+i4u%RhpGvW=002#iA7delJNsZX?$z zkLq~dGhhDy7Y~**Mu`(Yh>Obb<(Pv>_zWN8Lwt%QSb%w$fGL=UqT zg#XV7_9OK3-)tZKTJmm3S20H`@x=Y|U_MfdEo;%^6-daoM`;6PU^{Z-@_zj*%PJH} zupfm}8uMcp+DZ>dH)k{cf*r`nJ{;sn{y3xmQTncYF3WH1VgokdwDJ&kMLf-(HF zvnZNNa{TQ2Ib8D;9a!W(7g5o@(vjgezl|1CJX)QvLMt@I(`b**=#IE7!Ow+psn1 z9l?&}^gIux2;WWQXV|FtY)3^@#$#xPHT0&3n7?#3bA_^MXX7Q?Wo+-ZJ_HkO-)H+L z>m$(Bb}8FCtzU0R=f@yNI=X+kEu2EG!DKp(?$*2DdGtmv^u$2)!^`N8(Rf`MkCaZt zt9S!3v8Ta~1vxr8zAc_bd$hwiT+KEgaj#d&cLqzWU&~fs@AD_7!pO zVo04$Y;;Z>YhP`@b^OCI&g&q}B|UEcbT<4flCWthu*Q6yZ}Gl;AK-TJemX2vzd~FX z-fvhgrr3lvs85#t?W8?I49#ZB`@R^8T4;c7uA9XDKXA{V#E^%38OIc>jE~?`tl#Vs z&T`2unT!}^UbJ*IjxkRdI@AZ~o*Ta16pWUagavzLZg~iKAPoLub;vVbx|DyDke;I_=Fb;2F0Y1TG^uinr z!$*kc{G>>Q@cor`SWjO!;Qa#n2t02?oUxvs96>*_xc{sCV{7G-+xjT$CmeGg_j>}#7`TbkhK!o1J@>Q3Qf`aH#eGf~F5mCzmsri!20^;fY^e9>YG zpNp#M=s)VrA?JQcj!#i2kFvd8I|R3jXU9kqX9BS{Hs5x zr2MRc*%jn{Mc4bAEg;|2apIB@&XwLrrv79Z;=0w9=^N6bu3gXiG}rIcTc5;x#tD>B zTAX`c|JG~jwz~HzN*tAk?8nuX)OLn`%hn9*o!UXK@JE9&41Mtx6hTBQG3lZA*;)DA z9J}3rhBBFTH#^qXShMvv)bAR8YrElUce?(*G=2`>$cZ9LOR}8Lr%tG6J97I@vF&<4 z8w<=vhvfYe+9s!Gh#{m=>HVid5_#$Z{gutuRrFt9U;nD~WH`B%$y0TWMK3n?*v#=? zij&0)m8+VoCe~j1KxD+$^5)6bkBm6*7vJ)Ow)u<7gMIz5pfY+)%vD6(FvdOWM_lTY z8Mi`TU$d*{=k=d5X1}I$SZFhhPGK&({7>omSKC=z-6`yukFnn+M;XV>OjkU^A$9d^ z4nAVOK9@7*aLI?%>S_(;nVQc2YP*YbM=PHysEC*>M7ShJ8P~WU_h!%^O5aZ*yE-}Z zHf2vQ9>zEH^AYu-F7C~yKg@O^_xx7cU7KaGbBo#@L2sV%JVmke7O|e#>J#$!;YUA{ z{()wr<#l&s^gX4$|1~!##HJyx{M~VXBAxTr;2=(;2!CD`?a&kbkXYT#i2Nvyx14va zxO9x)ZWNmm`O;Wr0lL(0t+@PK?R8AvWIj9@CS!+Kr+iC3N2OVYEb3lvWRxdUBK19B zqB=eqZ_BIMi08ccm`aAKgN$!6QctP3<83d+N=)PTmt!^3k|WsCC)mj7cLDb~<{iIP zqPM>mrq4y>!R+h5ANZznyV^T~G0}~1OpqhQgjw7>53(U6^5g6Hd=jqwF6VOjlS}@D z?{oIDz8{%Ad-kN-wASPME&7|CF_k0Km(XUoM_iE_iI4~Rki;|AQx7(7F@AchHa#vz z$^Wq5J!`8c4e=Jck}{M9y~(Vs8hoJ6-Q}6=dy$^TWJ&L!&<7Je&e&Z&>A@epgKyc% zE5{w@*&ma!$7%9s7QT}|_sgFfE!_4cpP$${ds2zDJV){(u$|L-LF=89DL+180X;nC zgmS0!{h$f`+32`m@FV>_h-~vQWDqff$M}`vi;dG3H_%9%R2dk|*^Eu^ZhfjRm*T zbNgO$&1G!dckEqF$6aj+dKzM}q3T5ie)^&1>JQ)lC?CIUg1$%V>6++M=l4dqP6Bcr zCf`D~@J-L$voOC~R9l3uK0_~`b)6|F-9!0F!#A{IvIIR1`O*9@KE=ImRX-NW^QN9Z z|2gx0>A}TU`JYI3+I_2xHm0Dy=JmX-QuywJ^rF0cR=U%D3rnA398byH%H=&<8S&74 zSI>jXhepL$@>%gB4 z^x-wsPt)1+;O;8?LL+vvGPxgQ52b^#0w)y4z3O#enGx)Iuwxk_f^Fqn@LXd0h`#8C zThAM({M-0B|GP##EZmY$(^vWmZk1oDkp@wS?Go}MjP2jQSA6N7wUW3uGRTjK%3(VF zep&f{NU5x&AiHe)xY>oZt~l~{$Zum)fH?JKOnN(@pjvP6h85bSB_b0{SrUl&)FVY^Z$ z(7v@j+4cz6?=EI+JW4;e-xhvM7nNBy>u3D-7m8=#7v$~9-ueUOWitwHjE*^z@GNSI@jNZREfxn<=RAR@drB@!CxH3S*&JLHzK9y%8XCac}6VZKUUyt z@!VECPk(wN54|dkhwc=gAmT3l0N6#=9SHGQ7&E=v_Yj_P{mJrkD$>Z-yUv-(sU@gUJkcj zihQAdc9Kq@Hyxzy&=!~1*LWp=-|9t)d%I9M7!l_F-d!L#vAC4 z7x6L%Vkln2xD@&gakI-EP6+QIKdgRsBzH5kvwq=wu}>(cq-++MrY<%fgazd4R*0PV z;%RmJg82oWdj-y+u4j1!BjimIq`+{``K$CWBK@|?aT~A+O;pxq2>KCxOWyJN8Tq(b z%J){s@536$Es!3^-`Iuy&S^MV`z4cS5BI}d`L~a(L#K;rwM*B3#MV_17n~In@l{pZ z-#B+vuS<3I{4ZjN3F=T@bGLe^GwykAoH}!w?`KEPr_`rN)}e{~_XxWgzJC|}4b;x; zZu0E^^)1wleouV6{u}uhzKPnEURCxT>N79sKP=7e(B~ufME=J&Qjf6}QDq`;_^s4< z{Ow5BkN#%rjh`}RM})c(bYq@p{}^Y<{k!y!u#R}jrGd1(v^wgcFfky2LFfL$4%hk_Td)n$x)JJ1XfKpiA6DoCeAhWO*ob*zvn9&>3lvai#w(Kr z$IXFaSMC%)WOnQnWw8+DZKp;G`)1OKbTQC{D|0EM9U&gP*8jq#r-M0h`TxW1SBHMW zDYk5n^jGXd_}{pyj$JAZ{~cG;`a`(Opf&$hV)} z@5;ue)7BZ|K^6yPkK-bAyQCjwM{9>^-^W*Pb{5e_jNn5P=^GXkj#U>*{9!DI?)7*< z9Q>y79`+`oSnuN~)bRS~+e}=J< zC6r5$qYnM}6svF-U6{)*EWzFC^qtxsB`^+OU?Zx~jXrc?IL2W-efW|N+$qK@gI`cW zz8-IC|J~Q_S54qL6`ULLBfLv+fUW9Ho`HB3qfi5n;4w4_X(Me@ZR}E~%^zrP-sp42 z0p-{8WPcGWEBZG0jM(IcK3J!PcRZ4crGIv<11RWuvtgcloUnZs@zk9pNR7|cy9Zm|L1p^f_Wqx4#G1pNrH$25NWG2~MB z$7{uTp?8yZNTM0?zeim2AvcR941GGeQ`{I!@Ru1knLf*j?Qe>KdI9|_1Eg?zZ1 z4z5)`SB{6DRG(MS<8=sQ<1ae)6xgsd2hlqi78*!+pHva-hN+G%%+ z%_dntTp=cRy8bc2BnLT$$kT}!jki&o-qpntx_1ZNtIU4(Oep`+-@aqm;PByoF9u-%`r&0XM`JX_6KH}6dG@k$IEvKblO#FR zd&I+q?4A`Ta1y`c2oB@&@AL%U655jk)cZ->Pu z!_xm-j;Gj$1Z=~@eEV=|Yw6|lG{5(p(Q`G^(f2T4^SphVjeV#;G5P*tT;+&vGmKCUPtc1(bYc>HnDd7|26_DYas5N;;Q|WX$@WGzY#`tE zg*bhb-=1~eTlUS4Lp&IsA=uKOr+ZEr<2kJy-qI(9{_6B#IxtXKub~5drTtM*UiC}H z_mFKoT96|VJNrFZ+G`_zHB|q{q?^y3AV+9Z7SvX(gaPtoRPdkZh!^mo`k1k$=T_I= z!%24Y95Ns~epYW=s%Ot4*D>Qo?C?;>jlpuit;T-G9m8*)X)gx4?g+H%r+<~~L5?ss z_~beLfhg(O-cWZ^suKqj8sD-nk=Q7QYZqDMIQdqCyyIPCSz|WRzI&YWm3!Q;-hY0p zdpPfAmte=j{Fg(X+~8ThL-=pUo$k2@dvOFG$)8N}C#L`T7!#R7eF^VFUH+eR zvH1>lOzw5PV^aDt*!90X`$hbNb2yJba2l7}<&$jn<+i!3vcKFuU+-Sm`z@;O)21>wKiU%?1WM6)ROB}W*OE7e+k#0+-y^bq57 zu9*W(@HC!BUkt@qOvgNYidEQzBRG`HSbuJI1k111op2s|rJLyH^?&yo>asMsaR#;ro zT++(Qy@B?EG)W_Qc3wX*>bzsj25IGCdVDxhn`e@~n(0Et53hB{tM3nbx@ft%66JfbF}@2gFuv#&_6)P1uHKD)Mb;i!StQp*#8^CUf9obMMQ~3HcG`dA^;7O(>y_G|pJDXFu|-dMxd- ziLb4#%r@$~yi*xAqYq=)KCxNNGU`KH<1Qal8OJRxqQ6dg73gW~Y@fVr={oXv;2mNE z$9z0Ybreq=iZ9N}?;X8{^lZB_?jr3F8S#B>?fLeR5n0%_RxQl~Evv1iZ2qT~V8cS0 zl$)b1NslHggPAC3eU@|qs!sI%4SYp6R_^zn{)_rFx9VrbKghd{4gS&hR(_7X)ajiX z`d{7-{$2iMLTj;I7qM4T{&2YcU(nHm_HWVN9n5!xc?(C#7v?T3t`M{N3pbK5g#&`^ zD59*3p$*%Aue|t23|8HJ>Y*v__FF+T76(+o#m~f#(z>XQzih{4$>QYT^RMTxn~|+8 zo<~2thRJko78YSSzQ#6Wly^CBH6P#Gd6)b7%jHgMBeWTsk)bNNpr?uH`Gu}ncR*p+0 ztr_}3_3sZ;ch=J3iEM9NmefuT?}T6ZKKCIqUHMLTlH%+b*)GVh@ZW~nZHNCiOe1}D zk+v7+Vli%ZN#lg@E<^Nt2%Y%*E{J{~p(?$ojjO$v@UZ=l<67@0+>9*2w`{GcpN!q^ zg?@MnuOoFcWrVX$J-czrBH7H3$;#j22j>;D{f+f)i0cyaBednJDf3Pj-6OvBTRfwF z?S=HcwYsobeW{y(&7~8w=)z27Rz5AzL>Wb?V<}Mpcj9(5A9Zt*h5QKhr7aoWKV`f@ zeM^q}$n}#vD9xtkL*YP#_J=xo2bm5^|BTQ6T0bp~>q3M}^TksC<~?TQLs67L71TyU zw8U$vyz@hzComSt^rddjZOk;Uu{3`8l}DAa?bs~A&mCu%V)}nVYu*3y{}k$F`%sWe ze?a(eq1Z0Legr?)Y69P-9HPHnGRw7_qbp+i{gT+q5Y7v#9%91w{Alz$03Wmv^S0FY zDW5KX7hpfVJ%;d3z@VmV2F5kfmU8?s>ARSZ(e{UT2D;-~?+t9{)8hw!fUpGr68d0D z(fw43*>rlBxfEajnD(c1ophr*k*%q5Qns{N5B-SpZqjYW*f9-vwJ|qX-}c<(`fA;~ zEqmN%hPi);=@QB%$Z_y_eR5U2ON&*F#p--{^gQnmJzq@bdWZSmv0aF8$?w-=6P`g{ z`Cb(Fp&A}T2Xw^4D2SXWjml_+wqbp%_-vmTU%eWR*Ac<)B*q!>%LUw@OZy+?F`<-W zp8hYXL%j{}Go*P?-j8)PyDk_$yq30bPKxA*|dQHV}Q6Y?Xp8CvZzUQk&K z@RI&h>Bzz6K}i$zp)=L>YOY2&4nhwa1)oJ{eN>h>?%62I{a^_1~3ed6zH zZ&%U|(%#P1RDVWaZITt@&9urfO=QH50onrR^&!2$hJLJE6KV5h)LxNB+-|O|nE36o zkr8j${vmawo&PgSh}FX!&+va%1(99Mai@GPfv=trpW}NJWJ@xuGdG&ES>Aay&=6t% z<`L)2klttsHa*zVcJkqI<(p)@_qE4CARV)hGZ27NYlxiUeAgNLVUJ7Pb$yfvHqU&pM&|B=sCyXO^nBv_N{en z5yw8lR&20d(s~{151|@rq6T96|9?#3rMY}F&S?7>ds=>n=XS4;QA=C4GkRe>7GpKG zl5;p&+Urkv8N<*KuV5sen!@JpW;YyHu%sA#4ttO5EzH-Ycf;<#Ri6=RVrCBh6m2hv zoAGNBeL*;e^U1Y)ah{xo$TT&neoJiT4}QXVHuBEuH?JqbeuVGOHgwI_cm=bu68St& zDLjBjahrYdP|hi3@`rwXZsQ-oo~(>)#=z`kx&c1UJ*eO>VG+{0L*|QLgjO zyW*iio@<9W+^>o`2I_Y|ryWHJ@8{+@@Nv)5e6U*+pA&$vHbx9?b=^aP9Km*UaqYPLXWn&h z5`!OuO%G!(?N4jJ-li@j)4moT^un|JUS~95Cz>HX-9N+s%~BUuV;@ps20vpES~TMx3yoOqvHd zkpgENa|*FpqVwZ*Ha#xi#)!?mFF%JFxn#o@WsJNuuC}*)WJDphdA4}+*(Am*Pa3b* z@3wSlnES$}6xK(Xogc2qtkH*j#l@NQs?|wj{+{LY5|I%pq>EPScaUfE{k|%XJ`FK# z!hD`p96woGd^Y=5_H#C`q4C8^e8W?b+9+&Q9qoZH-LElQXnS^j{VMvlPgjV%T!D0SAJF}5&`fsq7yVMH-}X)?^5D}0+H$Dx`I=%h9hiV^4Yd1ET7JAWH}0Z^Ive7j z%m15pjr&y6j(xc;zmb#QLQMasHntLl{0MR^6j$Zrqh6Bs#a-4vyo>D?cWolqPU%|PNEzLi{i?pU zmC7S4KbJ?WG0?rUNQ);FhxzTCGFc^F&T+fCY5N)avs}4-GvAoxG-EMwtWs$R8+?9U znuM*;- zQeyn)oc|S{bTdn+FF`*FwRa7a!{^F-+eQ7f+5=x}ORn_nb%)!BJ5dhBPz@K`iIMrZ zIr`;3j6>gCkR$l~2R(mAvGBcTwN;|r-*!6B9^(Cp;k@oRn8!CrU(p-* zUAZ62rhgdc5UHFO$&U>3V;Y%qvZ;Aq&<=6jGQWS00ouM<$e9ntP&4#h+~ktU@u6I5 zI=?!qp%!YOJiX{ahJCoVxV%9rlt*d56_FN1aWvLecnobuYfItbG2X>RTlB!ocnDA6 zYRjdupNZP=Uztabq^tC4nvxYqbD+M^pLU=|jk135=x6cUkXoO9!{1UW+gOV$kf z-|%cU^O#*X1u`Hzvf!forIFr-_3Fscw#Fl*yYPwnRW@{7#9@iHV-?w>&MDYv_IjGK z|D4V0XMKhAEJm|c?`w=dM~-{gni433p=`+A(suU8WeM&4kRKD&j|9p&IWi+3zGOSr z;9C@+rkF1v~-?ynskNz3#EVAt|e{dIt8Wok*BnDi?sE0|LsqvHpdTSWc93BY_M+O|d`pUY?oku!gqL2(%+~@v{~xQcY0K}qWE3lIa9gJR}TH8FG=5!j+1tkJ}aH#n3mS> zv;LU$PH83Sh5CGr^fzg9x{&k%{r%FXrK`K?D?+aB;s?}nui$UPH>l-gbJTetQWpu(Th*CFmp%gl3hxNi> z1UbSxzXh~KM#_hN7{h-=4Pb}rnM;9RQT9>a@Id#@=H0x;_mA>zS?fEjA3|K0pr>ID z%(^ed;rFml=%$}<5I)5>IP#$UsbTDbzBk52`H|LfJ?wwS{wbB!J;zPQDtv5vhx9Y) zL2075*oZ&)&%g9#N;69@OtYTW7zEySR_->gm3f zODiL3Z}i0rxYxc__tWVz`bexNkj7`1X4NqlrLMl%NuF_q_jesz)$jYHo29=>Gt2vY zD27m9f*j-QpNAC~fk~KxEUs1d5!Z6PqGY@eRZtgCpfx(94~8MOOPYVn@r8SC!uR+P zpJ6mUz(!2RJ9r;!u@2v0H3s5!EXOp=z%1O%63QjaaVRFQZbK%-!(BM&TKh4!y!pEr zg&*-9#^5&$!C?G=3D|*MctP7@z5cDO_z26e9Y5h9U-o@rc}iCj)0N#w|8F@`x$gz{ zj4w@yocP;z5@`t>vwjqLt!F@X{Av3Z>Fqddy_7URvZ4Ua*mo9%tlww}`4RfF$2fKw z2B8-wVPIW2BzXwbis2Nk0E@}+@JMf#1lJVgt+H5 zWc;@rpEzbd-o+xkgqJZBAE5^pBV7M&MBihf_2~O7wI1$OOr5#b{jQZSs_vz+<0RGC zTG!Z#Tl8TclpaPx>+x{H`WgIP|2A~IX=CVdSptY=3|mr!qO_HobF zY$rCM^;2ZS5I%b>_OnBOAQgGiAQPgH4C#;o$&nPXT~awQw6i}rU`(99JUls&F8c;a40uFiKuMiAhswrOYkp3;)q8w%Tu(x zg>4IV7HN?l8Ic)xARCr5I-lXm?D|B+#)T2rC4~!w`TH+>_SeuKec0)fk=~n-4#o() zh9MY+(HMsbcpYOg3DfYW^9r2SUuAtD3bG9!XHJwh?892DL!|S*lCHpNY(rd^U{8Y_`Ca=iWJfL3Mmf|# zB_u)u)OOEWsDVdN7wPP8+t{4Kru;Tv+pL6dl=k=im;L5?VePRSOL-|SBu7m0^a=M1 z`T8iDq7fP*I-l!Xe+1F_UEO-f^O!8begr*zai|zfJe&si>WfQg`y2XoXJ-ACIQFEt z#j~Gr-IDj2+l1;kVmqfaE&5p>i5B<-JMjw^Vl}?SEbLY%r{)s-Vh)xd=tq!ag5TR9 z`Z~|LZhthz^LP>UalPwLF2@(EBRizO;1JH>0^Y{^Sd6R55%MGGM@#2lbe{~;wbE&r zj@xa2Bi)a`F#}cXtAP{NlSubSr=YdFTW5O-idb)l53O&1x52aBGg|OWI zgZNb$|AY&;h-f`+?wC*g{-`uQc3UqdO@}Y6A4LJ{cj2)0s?ulC5vj1izR%FqdKo0d z6F6&MOqOUncFge`u?dx&zd~9;dNa=yllxukm}vV^-#y=V@9fem%ebz6(dFF1`Xh8L zy1W~PZCtC|Yx(VI+-QmRbF=t`85oIacoFa5Ethy3@1URU_oQ<$AI)9-Ep(2-eQqR& zCi10vJH@r8VFupEJD7!e_yWtZ0&@`U%a&OG6t7?)KEP-A5FaC^J}$@@?Ozhe>sqLd zx;WxGiKGXlhmg$r@6vy89+9>q5QV+Ai%Wl#Hk3Y!MyQV{HYpii@LNwjj~CGm`{+SV z=`FYvj|rBKi!0ufId2v-=a9V{R8%ahFQQk)$cU5VU8Bvr)G<-FI>+@R>haOeZ>!D+ z83x%-V|!)o$cT4bf6+sHmhG)|A|pPqUDp2Zr8RBuR8OO7Mn-Is_OB5cQG%SAYxyRi zbWGUKA1%&F3I2zdXxow6^Q1*aWJY@Y;#m?)E20XH+b$_REj@{I$Y=WwWJ3<*!JWv3 zpZ&fQFDA>|auFpC*lx<72Lnz~pcnYo20i6-by(ykRDF5bo8Zp&_tH~AGP{GGt z%|FH0HcW}Ei1t-?SucSb`K+tm>w5b_T?z9%w-z)QLwvq%t z+vi^ItQKJ3_86y*V1tmTg7*Aw-&wLR)p=#Ck1EQ(*H4HUXEUMNZF3W8ccKeAAuda> z9pV3Fnz?6Byxmj`ligf0+=i#_(ax-`e^8!xv_6bJ7ZNl*ffgF0+2)z+@QZdf87DT; zPyPfuBF%@M+NS-afg3HMt^_&mq~C>JkT-bvO+NHFvT47@uVjpx9sf3?GIFmz7>Fm0 z6CBXz+fEv(-}hGi%-bAy$Zsd`7k;$;5?O~^AB(AI;P~FoYwOzGQP=i3+n4l1|NfKm z{ec|5DSVup3#s&NuE!2}`y+N^7k3f{rbT`|$uC!ec0*fAR+va zb3%Oy{kQLWo&{KsZ8(mzNUc9P3tp;iolRfEX5VZd@qfSL)weF?M+)|Fjya}Cl$bv$ z!v9PE{7%1weA@pyTlt1D5cI=W8O4SuZ2fWkn&j%&zL~vg9UT5Q{mTVx)rV{pY9Q4| z?9&?a>elP`*=f9MmvJC%_K&ee{``vHkxaeHi2jYmqWB&8*pRyDgqSWNKf*Xe@4V_M zy5U;i<*Ha!JIe1@`!-ih?{}@^f*fJ|r+s0v;0biZ%g9`lZ^LcIg)XWaKO&*^bjFf; zB0ah4Vz>N=>k`T(ypxsFwcZHNYy2od1MNi&!Y6pJq4wv)d=OHKpKlM8)KBmTJAslb z&6RNe*h1Pj7_84?k9wV`M9ig2?$9vb;_G)j{}Oc-U-D~zCG(88YuCA6PGmjoeP3j` zP5at!pPi*Q$W%wXgt#stKf?TzWPfQV{K2V< zEgGrg>{vH-I)gg?wlVKbx5$V0&DUtoZgz;dbRk9#IKgU)5VYqzpIi6~`Q3^maO z!!QG1;wahA^1ors`f5ukmoWD=CjT?B^Fi%3KIcvJWW!Ip{#o>sH&6R*H}3Jdr;Q?sfglVSJ;2~e^mrILcN`5e_Y1*uJ(*KvoHAl5P$TdYu`;WheLnk z0~pPgE&7Z<`<(u(t8d~2U8u_6HpWRh(XTAK#@D|oZ4h4@+3&GkLVkpLn|qLY(MVj# zw(rJpb~NJ)Y`FEx)_XT#!v`4iMdg9!9O37s`uqI80dZYYyFi%t(T+WC$WEOXOLU_5 zYn4+|``T3%r+sYP8OKoUsF;E8sh{0DxQL#^@v?I+pT}{tas@d;{1IZ9zmUcC+G7B= zBDQhO&B~F=3B9sLMl@EoO^{KZG>|@yX2@wf4^GhWywY36Ir*fyr9ZI0hcO!SP?w&p zMQoN7P73pa-aRMo#6t3C0u&tTpS2K321-j#i7+{9>!y%l+B<+*gSb=vD-=Mc({2$XV`HdCH%lzVO+}D()&O-h3S2A|~^#;v!4%`5{)1 z$vms6;+>CiSX_0jIajfjCAzNEnNNrBa}{yr;Ve{H{z-7wiloAE4-t>7Kdy<=sD}*F)XK(U*Odu<}Bgf za&dctAV+AkT&=y4o;=rUbCeacUf%AAizGpg(3b4b*IZqc5SM;a(fA6R{xTc3QTh`; zaL+zCWc^TBcT7C_ml`F1@a_xZvV^u|m@Ag?j5tFZ7bMs!{zWR}z?~?H)Z_@|@|NrUg#CC^9w%DnoV8*y?W&Ep z>j%SHe1mn^gk|KoyQTJp`>0!33g?8-=--!wF z1jgXjU)Vb|#JoH7J7?u%ii$&hCCCxll7HXAE@ko_SFt zm!FfuMu?9SZSfuv#;AMK)xBiu-Yv)UA7gGVWAs=luX^P+Z^3#aX_Ry;z5W4v5tk*D zOZawn{CxBS5xD&Sl>Q`B^nWUSZap{oZuH+uv5_Z~OZa}&a(3yxH0CrU;7_p~KjBMk z##U^sz)#@-l2v4vQ3z!b*Co2X4DzhQF%qLO4zutnmf;Jm$G6ypA8-Jta29_frtfuy z_qa~-3E|zY==ZrU>FIvo^;JJRqf=7(QOt4Z>Ds@AdwkDsB{WYC4gTWKGsqjX+8S?6BE&m4)$H`KNSC8$PxV9Qhs%& zd(TC3_bPa=*qz-vgURPSb3QQ<7GW7yV#15V{MpE_uezMsFn)7ews#!j)v{d~+9;)+Op>_2LIlXK}eY+Gw_M11qBhHB?= rMk_M2kp+EYLRz^Y|D`_sHBC$|PFplhY+YC#v0bG!%KG~pi)xO-60^|Au1qBsfdc8q;yD!grq1T2oef{APNc! z0)kRfQvYY*^8NXDdGGb!`>yq@J!fXl%$^;ey=Tth5FG@;U4N3G*w#o8L)x-AvBEX? z|B^|HMS`G9<4BO1yi}z=$#|UcH6lTm){)>D_ISO8jcg}-n@Et0c9!>Yv!!#Ej0BfS z@u*{P+j0zPEV6Rb>$uWKIB)qElFCOpnR!C`i2OWGX-Z(Xpez-5f}%`MV!M6c^~RBu zwLDxpg2@cw6(-m(vu(pH$CO@F2=NjI!5r(iTk!>lsOgxeZA)#R8p(qoo3yz%#_1Uq z9WdE!7I^0@WBs`Ege`m2)?Zy2|Bfl3ew8>vc^%tSJflI1+Txez0e~; zu&q=O4DJyGQysKenIIUIBM8ntAx}+$;Jqb5@Mg{+7+Wz29?lg6`6>s&CF#~DgWyQ+ zAZSrF2y&N@nGQj)xp)xN=^6yLUHFV%L9jDl;JorGol;X-Q`ZG>JtR13I#!f zWrtNa^tI!>Un~epwh4lFvIfCo$NVr+5d7vnw_@AwoQa(_{fm)6 zl?L7(R98>6sY*?nMmZPTVg|t{bhnSg2eYkPz#L}sBJ*&n;CcF^n1UCigQP>KZTVTw zs+$QBb#1v4iXlir*fzR2M+|NEy!4K1x|U8|rVoNl)aQAs+g6BP^ye7{Qi-3q@=y@u zm!3~0kBpP<6TBEhD(mKUmcv_3USrTk^(_+fo}^2L2=hwmha@HinK1x zaJYN*BFjM>R96t6#?e8rN@0D-8rHFrJ?vvYhd9bf&U2Gpe8pkD=M)#Y&1Zbean5j= zyHt0+Fm{CXvQF8&XZeQyvtGYi%LeNpr)CJnIvaiT;lU!D~$5y8Op*oP^BrdJWr4s$=P8+cH@Hpggi# z&Q5OflAkN~X)bN(9QA2RW9lO01;SZy*Eu7~AO^$itGfqFt#gW?tvn`8sV+!KYSOY% z9eu>NwzqZ-yQEeJah#}ybGD@mz3ImwUS%Yo#)<@Avx&Ad)SvXHl#w9eRek1K5d3I) zynJL=X2YDL@dR=5vOYaipZnE0ehY#k_8l};*;?1^ZV;4O=K5C1=f(T+<23>EXZiV> zEsnK|k6F;dapna*4C_4Ms7Hb!=cGtC`6(w&Rq+;VkMzA9yHj5G0_gQu?lg{gG%+?3idA&0_2)^WNvMKje_HA*(bva%RuP3vFsZ3`k zb6Cau%wrAf_>hm-$YxfufJGz@Id<4iJ3IC>^k6(M(vP9M$#CB0U3r{IedW`TMJhJF zZ{{5qr9VC7ip#%$sh zg|a&)^>S&qJWZ*mlntGjL1*i_vcNevrV%q%1wl6!_jN3Fvo?7U%++qDTHb7Vq2+D% zo9*>>ufu$d&a6GUwzt?G&-{ev6UeXauUWTCI3LF>SGV6O=|vh^ zo@Jl3SzWWb{m%Qp&>vb@fAe8|%du}5IJSB3F0OeU@!DJO#nU>`=1|JsEMXb5?6Xq3n*a7sHt)5MD$(+wOvmt|_MTJ*w`-WM8t;3Sj0Dxy zQ#c4dp*@^*oh_|fCU5cVQ%ss)9$I9y-F{OYV>Mf?-yGI2pRkRzt~C?cye|jQD5iUH zCmdh;I?f9WWdvgxtQ|dKpTgv&l=l~vK51Kb%g=?!lix%3J4$-XC2XIlUdA$>NxVQE z`!@2vmi*OUYAeJ3GDtdvR~W`{zI8n#y}y|D^n&G|l}9YEC%dj0q;cN7>VBSU|HbxQ z%Bi-rlCnx_``cwBK}34Xx_|fQ5ck^0di!rDy?S`bxdwCH#-GR<%eBX`j@KE>3>LGN z&FthX*NGihjO4guT;?I~&&i{dr#cM??_E03ld!+Md?ykNvHUt?n8F;Eu$qnRU?1P` zBj>onU}fIu9b*q?Ue{kH7y~-$!!w-Ey1Lw+C#EDd4lD3lUcWxo@!k{*EH@hCy(@ws zERSqc#3#r6I*Ya=z&~~^2-?Sv1S2?`I1=PY5(x@ZnkxLnMV?JzTk1$qCvPNJk}MK@ z!^fO?)_hro_5WS-zsirQxL+^YN@5-+3o*GPZ$-qUnSx*|v8b7K zO=v(piWwA^I6z$e>}Tg5Sy}922;&&T8;oKQBY1@una&H0EoaP?K4_;sVw)3Eht=gG z!CKa{n+<%-muzASTiMI!e98`X(#ZQ4vo<^q>Dj;zrjUn^$;flOO894J33`=|1XEn! zB8_&qezu{N=OxNBIT^@7K5|pn_Sy`gA@ylYQ%Wn7vb26w-=h=Xa+L4s#VO8kmc8ce zKXR1^{iTX>e`lvY&I`<79(nZh{qpz~hdAau>*TY1IrDxhveiB%rNxs*f+7@SoH#Lt zQ4D7!BY1^3c$;VC{itIWj#h5L{qf~R=_NrewiRh9KpATBG=2D2_edvO==b8{B9;^0 zGc6#zZ<(5tc{zENHNL3hzN0KtN;>lg($YtAqj0A~{a~sM>g2OR9%laX5 z?;a|AhFDDgX5|ql2TBW@@4RpSFXjF1NYG6=h4J>|azPNi+Pt-;K7G-Bdzbs|JE;LX zW)b7b1@Au=33{ZB1gT3!1wE8QIIqbp4d+?2+;@fJdPC<5@7vlJj0EROMg_Aj*>8(6 zu!Fw(i@D9KV)p@KsKT8%L|pA5o=o?QQU1;yaNgd=lE*mc+9keJ(>?ZL7X{s&-h!bJfyRqAo3I&oc~WBr$YY z&FfzMj?_0Zi$iTnn_JN43FCBSbII!B1;0A>U6R!^*P$c>UGGvha)6)7|CF}SNuIdC zUGjBSHq_^7W)0Qu*i9_Q$wN4nO$ejPA1-TT__`F16p)XD6GZS$;-dH$)j@ zSgLHZC-PkNhVmOOKkJNt!@Sp6nBu8Okb!~SBEcH_u4ABn@zYrMJh}A==Gp(4^aqwc zdOv=J?fw;Q;7nZYOd3PmzdAs9w9y88nwv?#R>$WUpv>k_#`FHK3);7k{nW`@+Q-no z#%Rlv)40BP@=3e|+KRL^sVrx&>NwiU3??Y=0n(@{|EQP3QNc6XN}Jl^6U~yjMrD(0 ztN6pKmQz{3sG2^o+=T2BDn){7%JphR@miY9>#owREyRh3jFDpI{Bn_CA$xsZvV)y8vc7g^anAam zxxhJoMb+IK7ameh<&{^muHw<5N-Z%i|ci==^vjC}ew8dC%Lk5ZH{A7Q zK6K@Io@F2-&WZDs6YsxzQ*2Zp4Jb!rzL2NlE+{5D_==(G;yY;@=}*!|j&oIdn;6y& z^E$3H39l0N+ps)hYfE?5OFwkY(sS%4+UvZe;R~;iY;Z5nB~H;tKAMw>5hNu)75UQs ztsJ)_?P*I_+R%end4^t?Rs`2~c&?%Sj4kZhI7^?F8mB&EALHF0H1Dmv==h9Ss7$U? zVx+p8WgUIE@}B$HIr`9I?Sth^S#JE;u5Hh>KUMifypJ)-{u9mR-!ZLe&%GZ%!ujQ6QDVbH?bS)XX+e&%bbYc$Wcr`%Hi5_st@zrJq@j^As$hjGKA$3 zw$t+#UQ43gX+Ir!il(&SK^uGB_J7vS9Oi%eOYPm^Jo$U^>Ceyk`hBjy_A_tK^Yzve^ZE*QfF?>?5laBna?c_i4JCK9}3eOK@K$hzg1 zjZ@dOnP1KAEq@kqT*u0g^nN=H?;n0ILJ%`%lxnTpxJtST@?y^ylpm;&o^Q`x3 z7t35nEcMa4p0PxlI!jbAJBDp4s+~cn;+Oi#ez9e3B$!q^d=BH3c9koO8Z0&Hd zPmHfjgYR#Qvi#@oaMa2q-phCRJ&r+^|NLE!O{t835o5c3{@q^& zJA|<`rOHW8MzRr28P{5h%#WFSlZmWcFBb_`%GWBEvqXPd!~*)XP;P9Yy4X|2`zw>( z`*M?$oARB&zJL64x_h7f9EzvEFi1V0lAdR{<&M&x6tvtnxi+Hy_wx-uaE6P7?IQew z!b2n^1?kDgZFw!WO}?IWZ%E#P##k1MHS73R+fmK;?s4ZYwB5dmKXr{6v~~TdK2M3a z2PYe^#kknf+K0aSXf5+)3h-_gF}sKQA{pt(N?wZcI2EYQ1?{GW z_!j0PycaLwdM8)+Y_xbJSj{%xEw3LlUM0_C12tlu*VXNB^60wTX%|oP6fI~(Ynn05y;0v``X0B28{=*oXA&AG$$3_PjBB2_ zNxqrP*R#bV>r=?n*B}4mUhc(6@M8+Glq*D1%BS=ft`WoQPoy`9WqGsoA!)~x<^h)D zT29Oe*VNNkr|Sf#qFuLixpE(zRok-Mo{n^;E4_J!>V)kyjOpR$@hvKPT}`ZIk>xSc zb>yw&J<%jim~$XNU(@G%w_@esLGS1cg(PT z1n13j=*V*nXLb%TmK6-k775)P%XImW_P()kE6m9GwsaTYpWGvGEeiaiY+CH6GeC*ySU)xBK);y_~ zHl06wFC%z|aUAuYU%bDr?KN3h#rvISD&u$;hrTyguOZefFJtUu6mRneBN@ZHOlBMt zn96LXGm|+i;$z3$#9G#~h1K-8?FF9YMV{wmX>n2d5H9)NGrc16TY%hFoBK?@rJC2v?H}I9jZ+DKzLyKz zY2uT{VEZ(r74>JUfCrq3y|d(S4%KdjGkIli`#B@*1yCLhkO{F<8Qv7R05;}i?@{pGwAnDcN(47g6z zhn}I4lNesl)NdEi>nYD^q;He>jL%A_mR5VD8Daa_+9oO}P)zKi43()xBOdV#?TC8G zSHW{oiq!S|Q$6$+ZwE7qnJi%gQ|vpR5BP}BIL$R;cz=9Skd3d`n=^5guwKG@hRz1w z*Eww>aEag9CQ!soW8C5k%YAJBrnG)n!<@OlxW=4`mgj2!7xdY?Vh(fI!Cqc7FH9P( zeGsLLTkT#`!7~j+!P+(p`zDn-HnrjP_!*Rj)Yl%;C2E{OE z=B2^%V|#ZpIOY}iK({%poHNQt7}tMG=b3wYv6ynyp&fk*zZ=)ybB$JX2| zwBMhk>EF~A2wh9 z-k72ff5o~B>NtUTtey4ISLXks?R($w&$ORa;)wdn!vNc>tNXCuhR@a?R!0TR5st9k zwdXG+UXr=6zRR;k^#8KTlmq(9N!B+LOZc7BJG zpEhT6u2h6^Ec}cnk9v4TqaDFWhOmv_Y_DwFpv1-rl{m#c(tq+D8*l$xf6?{|Ka1%r zPrVqxIqfBBS=Z8Exm!NyI%7J2CW=s+D%{E+2@0x{Cx12e#?ptBORVN%5~+zMFXio1 ziG}vL=>F|8-%`fCO=W73PCml>hINS?OWRml&gWH`eaDD3>hU3Igc!skRb~B!)K40d zI9kbZjqO*7^8TNtr?|iZ<6FyS=D5wx_gHGVoN@huqMxgC9#t4&d4!+2?N$5`g8k~Hqu5r~yrU8?(T_dK^B3Dbt|yPKJ(?(z%SW+@ z`)1|0k=e{)Gb>reP3sgHL zQ_x|^mn^#EFODBII1}MYR3q0%WDW(>a?sskSxudu=m3Wcs{@f#sVatst zv-xkox2j10r$5Dd?{n;rM@KF+V0|V?%S0|I9H!J-tp#`mvNC;bB$eV{@?t2 z_{+u@YOZxI`}VT!!JNEIO#P56q|GLtNMlRS<`HWP`94EB{WDtMQ11`s?stpmcjkJ( zbQ3?NVP6UR?6GL`BiB?}pSkS1u5gh|WF|XVX-T4pF=w|JTgv>CBAn-UzGI>KO{V@H zWvAsj()d*1j@SFiV|j!0HD(i*NBDi9UHa8N3OmnDdAiLF&U2A#T;>W-rPMcRLL*x6 zzy76hfG{7k9cvzQn8{>Dv4AnWO*@|Ek~)nqUd>T{%UDT#veB=WI4n&^78jYC^rYoq z{e_#u?}_B`zD3GnDWjN3ZFSUyM&+b5qZ2K7igwha0}Uu>-_lf|92ND!%4CgJuavV~ zoGf(px|B2*`3T!bIOew#pPJE#Ce)z;^>~iH^q~j6s4JfpC@${4pHyEgt9|kq|IMFb zzBk4-6yK|p%CXasfpqjSp7o-8w0R*fGMq8YWI3O(y_z;x(R{9|cq)C1(Y(nFrZI~G z^4(flHRHPDr;e>YNgkNHk2i)sq+B2Ntd249Jwq}X_+ELn{n`BjajNOB>TWBYm&+4F z=wVzK#2#~iuR>3os~P9>4m9S_iT=FKsX=1;Z=NA@it{{jMP7Q}zlRDx*WWNq%;Lpd zo_R2yg{r<3gq<+bE*2cVQl?f+`Z)<|Drgu zIE)eEReo`d90Ob*QwGZm*@lS06V0_qqaG>;?hzP8BWlu>R)qZ}Y^Nub_i;Mfzc1a% ztNwD6pMtd3KD*I@PPE`Dy70gLh4~2QgpWtN_jkO~((k1uq=%(XNYjymcqAYZak*^! z6|V8W{)PF-Hbot}{!MIQE1$B1o$Tgw_VOhMILOz0!x6sY7(Z}=pE%9WlvB=Ss7wW7 z$I#cDcp;+%(iZx}gM2(V#_!&Di$5RhoOQo)flK_xRjzY~Ae%WRF^Nqa9wt72Cm%^1 zBK#aG9COmIRPW+)mqFrEY<+O1nApSf>JH{qpNQ>am07etx!$ujF=fGLPOq;$DjyfT z?{o?KjnbY6hM#r#EFh0Dv`P3mtFk(&PFEB&emS*XP;g!9d_#`V_bWPhhl!nRTBeeqYhj%6a_nZXpMF{psp#$3zu zDe#!~x!1gmA851Bn8jtwO{ICbYI%z^E2&99Ey_`ZrJt)GcCeeI@)6E~V#@o&^1ejf z{9?I}bPA^}*OBg!#*`)}6Z!eVx?iP_Q-PthpaWNJ`&; zM3O zZ?2B4&t+W!>n6Nx-vT~^VA(r9hhyp(Wyx9R*~UKFcQj|>4c9z@Q?s-k;y>o!!H}4T z!&G^M-$9lZ9lgW&!zJSG2k)MH;@L0FRK93M{7@t!c<) zHZYekAK`a`-^igoF^83GWEVN~p@I~rGM(7WE)H;vJ3J&_Bqj~3*~C81(<-;In=#B} zH;4H$yZ9I$N18-F!hU<(@`FCN+W8;!yRR*O&i90UaEtUNjhmW}H4*2z!v)rJgvIRQ zJ*Louj$C)n_MD?7+bGIF!hD3!_t!i2r+mo~e&iB&Noc>?gqEv~(&Hn>ka*(>(o)c?QFOP^8}>E&~9R&78%#Zo6jid%NR z(_%xceD|NLhu>MB&{v4sul~{+Gu?|`V7BF>(v!3@Uo7{o=Wx!GPJ7QsX$rSib_{N# zAGY;8uAS$;RG>CZxYOQwJ80|7;WG|!gxQaX1BB%fe#d=$4(s@dD0y!o&s`YGXr{4| zgUrjTd^kzcf<6o7OOmL&Z0zSK{ff9RR#pXEdwgl@LShPISjc7~_Pa@9`3T$T1m~W^ zW31#up5=4C=0_^fgWRN7zR8FX?e)Xb=jcskMlh5?{GIV7jeLatHenufmxk(G`S!Iu znh`s-p;2}i?YRtvne6o|$;>&V8EZHPoA`xXOYB2?$9Uq7K2J#sGSIrhja)-=bMb82 zp}tpL{tL)wHLSkZUv60!%j<-sBATiB#78c8p7%3Xi7M_pN9yAhMlz16yvK4rWE)LO zDGS#!jkzpkEnC>lSA5UUT;V~zoN?Z;T#xdgY}Z>3%XbpkU{>cK$RyT*Dj`nh~vVQ)g`6C4>PczPC6YsJ+ zUQYWvZ!5xlg#9Hf)3*GvT+4dBl(qEc1!~fe5lrAg*@wR+vxP5sk3ZK%lxbd3&&18)H?bUbAaD1pSbdI0We?j)T29QC<|L8jkEN%{L3R$3mG9ZiPL6P=sD90P&T)n-T<0c{V)yGM9OnjW z7ys?^=z+?1I1{Pn8k*3Vz6_$4I%!Hf`Y@e^tYQ;!{*jMxUbxUPKHw)>u#ay^NVC6vSbd)-@w3WB+LttzOG`guJK615 zjFCL$b-Lhwza8Y-MlzZCtY8D5vY%rtscF7Q#ad##^af8_-X%>geVWfLr;@g3pXIdD zP8_hDLE4pD+H=B3%?T*RAX3Oj*k8&jgEf@obADk7os?TOR%&ngiO0)4M<>QnnMRbM z7U_w@ZS_@+i+s!u!g$t}ehgzQafz0Xu)jnro3vyg6KP0J3i20lJmp@MD%7Hs{#8d> zTKYIOELW!{wP~x}7jgVWV&TH9=FTi-87ugJ)vRSbnf_58@ttoI2l$Q$arye=#!ThW zP5LrZ_<-FUC%ku_CJxMC7Vi<>OK(<|m1$2eUZ4Trae=p)!3e^?^n~qnc>|v}kjPk> zo9+x}7bp4Z5udkloD)=$*L{3T26MuO^rk<O`&EkyhCc2y zaSE^Nc)i?bFKhis$0F(cT2aADX}LO4!4hd9>x-81xq8j0ptj>CmhP9nRwF97CT(5M z_uU=mv^2%I@S>uESe3=TVfwH1y`f^d>zL>|hI{>i^_!(9Ue$)BF-P2w>EZMJL+au< zG1N;!(vXdV`K{-Iv1pw3w^(0X&$SxHQt@D0ZDSDMahBeWF_MFpPY^yM?dUuNVt>taii7NL#@{|-bzkG<6F#G1PY>nvi}5v< zK0w7^U7rTfy|~!IG;OAo_gA8i^VX53l8^A&=`q(en!PON8fD}^vui2HP_H)<$MSC1 z)6(*F<-fx|zj}R5I)f3kRnEKYH;uK7WGN5XmWpS+x3DtEK>^;%`j78OW%Ql9#J-P0 z4B~OfGw74tN$Wb(DaVRp5P|!RC0o@GAF++y9O4JgaE(~ol<{@XkXkF7Y34nb%rTiX z+1#tUm^av=elrhYpmkw?3GekARxyXvZZlWaZ%Dx-B&7(CiFu0~M}keWwXI?JcTCHg z_-tPKl61WEUFmbuuF~oDIkrN%y)52S#B;;#&+E@*>!%%&p}sMmdL)*Q3+~l^QC5?b z-9lEek*~N!pe(a9M)^-?wQ}FaZuavnm$}J^VvfTGYHAB7jdzWWyE*b`tJF*5*bl2W z_HjJEV@bn&gfTt*e$E${UBhwlafUG@W7NIhY3md#D%jmoUbFhnlI?{ajtcG!5`%tK zR_bV=I6B_;9qO>s5Ha582Pf^9`kL21Gc5KIGwzIK^{Qmif|ZqV3rAHK01)=4<;7^&{x<3o1y4JWz4O%jIvl;;@CNG36tmF(pk zPH~A?+DQtsQ;_16qZ%z~=9oPgL`zc2M;JSb6}3)#{DiKKlgPH*6t>)s?$$pnUGEs< z?3>ZH;#~83GZ}1q5F^f6AI6E<_Df=07$*+e{v#2uGn1D;#tzkR?|Z;&^XnVRxA{2z ziCRq8ZXd7V*}3N#7fXnjCAFE(?$zkZtL)%7Ka;PgZKO8FXJWo}U2dpTe$r0H^)~0R zJ_oBDYwnBUg8h@}E4t9Ve^)WCyn7p3RxoaGvzl?dj`66T&te+7-p1<27}dPF_SVWd zHz{}V!>en%|J;q&3Mb39WfCeak&IsKx#&-6DD%b3%%w0_^!Jx4d?MN0cr z(%%};mVS(8`T=n_qr5u#YOlj*%}L}V{H>709o-8(Ym8*vNPUNSyszD_VHfnV2;3O?Ix9cgzfZw z%OmJxedQwN_sXX}U1-F4>vnL6Q|#q?8hOtLwpWp+EU1h*O*yL5l)v+r_#gQQ$G?M) zcbrt(c?vc<_6p}3WchW9SZ+*H{;D7Jw*En1C}sIUe+Yk|zg}v4i70 z_^h~K9(BZgeJrCfE-lGPPgmFe=g*RB+IJb6?Y-x7-OMriGLTn!lkxOlD>gHNmDF7? zZj=8r{eo9Vo40zt-I-Ul;c{erTfe4n-bgT%TE?9g%x$Cns_S9O@h#@jT>jQ-6Jh%Z z=jt&mr{-dQZ9|%r)0X2)f0rhbo|XQ}D-2~AFEfPy^)H13gx_(fQ}_OS``B{*P93xp zuTslvm8a!*qvdA4Zz~<$)U_+$mlx@0ht%T)-`_v#7!%DE_KRynY(Jqq=lO2#K{0Ja zBv@s8wgpn-Z+!PjD-S!~TfQr7eaR+KLBb7UlJCR4{-L_@8E6u(=X)J3EmYsX7q&jJ z^{c&J>-FzrJPRo7-}}fzgLi!YSiKfX=zEMY)WLW1_>zl?=ihE=bgfHz&ohpf)4##V ztIhRutmn0-$9#9Fx9gOL#pAWjboa;n@P6Tcd9Id5*$ieZbJ)qZoFn`J%mbX{0(U5` zj4RTRF6<_QT}NluCXyN}cba?fC6D|jo{i8iR)|*=)Ap*pZv1@N{fy;_?Q8NOeSviH5ysN^&Bgg<`j+&VG^aE2>o28dI z$e&|XwZ~iw2PyryW6;9#EKXC!>zwqlyq0H6sms##H@?yMduk6m(lh^v<9h-ZYclB})tey+?HBV9RMd_{$+_v8(5_!)$`yOS2W6vXL zQR`W2Zut@??ehz%4r?+M*>O!sbSNYvWrRg;Xj&*?LK&XsqZaEzu*?k>g&9w*xBI=?8( zw9ZFQ`*k4gSo1jwQHIKlBQq(gYoQWO=C6ZImUd#F)q1$g#TtQ#RuYRe8>4s{u8*LjH_PhXkDDao*A-cl0GHI zC10T(O6O6464YTLy?K&P)%{nT;xbX4jn8DDAdgdxMzkkvr{Nfv!u6#i11U*HD$=k? z3|++zKHxCxIK(!#62{wue9fmE;441lb3S7iyV<~Y*0YC?NhTlRXL6srhRP?*Cn<2! zHJ)-$@P>HDY;LzTryJ?tEE~&K5HI4plF#|9Mti$t`FD=GFKu^G9-_2gZF)Pceo>}0 zwZ086Da)j<$&az>2$zXj@P2uO_qBg@PufOV?AJHH=QJ0%L!#b34|f*YXj&X(jgeX0~H}G{e~3{(e5fxc`cWwlwlF@V=dT0!jM4enCBx^_Zh^-?UN{PP(jXiPuepa#Wxf&%2EJEytCcxLi6 z|Lb3vk1(DFCES0Jf(&FQKaWtFO4Otw&+szuu#=PAAWKQ{hLTiZwQ@Sj7qql}5gRC! z+vfz-r70Z==Y-*RU{*F&wlY6hgH&V7%x8ig#c?;HNx z9C3rUR*Fe{xJXakUXvvJR)aS1;kef!WV`R`8tT4JNbq zh4Y9mB(eOPZMRrN46oZT(YDQApCOIc^}Mb|Sr##yVuYVZ&X6_@UyH3pDMI)eWtflf znL{r7JV$%SdDwnQNz1jy#)2lwfjk^&XRPlaUtH~|tuatv34ecaEeH9HJoWeKrtN%=~BV zp}K7eI3~}R_^bAjR6fG*ILuf7Lui!Reoy!}0engY_N3I-q(|A2*7Zo+(3L)9G48fD z*V}5py|(wauAkREG`^Y1&8?&KscF_9)COtESmOPlEz*=E@)7>~j(F-R0g34LsP)oh zq@ae^wWz~ou5gVW+~6j+iDBQq(pb`mh)V;n8_|U4NSeiXNOQ|wIL?oR`3S#TFxB!R zKH>}NKjk^zv-)Cg_XyO?>%HvYJ+b%{FV_+$>xnh?9m8yvl307l$TaO?4)1e|hxMs8 z-haY-mSqrs9OEEU3d@^(gx?v>!_3^CF zNMQ!@29uc2dUkVczj+*QYUhjC$aUhIV>~(Ee1M*8x@6AI2j&p7Z^#4H8B1NJGn2O3 z$s}cyG`QbB`aJ6RoaZ8ONJjzo$YYU&#<%CAJt)y~MvjDFF%Xt>qlzC?-}>(o8EE`N);4;_0t^Fj6a-uQ(QJLO)nqeGl!ho zVs3KruCkfJc;+*Q>3pROpQaUUX-6A6)1D4=q!X=4Z~V$gGE$O`%%tMae_{IwpGo~7 zzWhdg`-I=aYeP5UxL^8DzLWRoVO@$Hgk1 zrZf5EbBesxpahlJPac}_44oLk3Wo3zZb|OucwbLkpmiJlkPPw>_S+G0zv4Jma>kmyraL&W;t8$O|Ap-%{5<`ieeZo_6XUl!$wo0MQkRdK=~LXMjzVuu5B|>gbJ`Pg6h} z2*;Q3zA{Tj|R8SX<_dBtmAfw3g&DUJ6lD94%+SFIr1jWR!hGqB<5<5;petTluK`~ zHz>akHNrRr{KiC8u|!|mWvskjKFW6xBSCbhs35wcw*0z#&(9rS3@z{68}|5370++d z|71St+QRR*Tnl{0o--jYEQ@5XPz<8e6x-D$hYPzEsaaf z{hM{$TfFMNz~M(fq^)PNuY7hJqWqKi?TSv8cl%5;X~e&gjtb%y7b`m4pR0$@v=_LZ z)wEM*v((q+N!qsMYSg0{ZRp91yurIHU=6Q%&uAtxoh5w8K7QagqV(PL1I*_piYcu< zJK(0grqVFNHX8QX809>BbG+Eni_-Yg+tO@&&#%O_?sw^Cc5;^A2&}&*Jwo`M-!U8A z!%F}7z2EWH{rS7U^Q^0^eLhK;kLcCPJz6!RWEgrPC_<1vcUkml^S?^hgRAA8uv7bLJf z5$7#mWD`%*ng{u~X89~P_=V$K;WB49$&Z}kkH`64{aoi=&T)yKxIp0AZ%I!OW%;Uf z1h4Q0V|d!}!hD47Bm7R`uDr&^Lh3`@NXM(jrga>z=NWWcm~d>&6xI$M|yHooQl-tDZ0_0SNWKoEKBK`Bee+sefM>Z>}CU9Q)2!9Kvcpmd?$NrY4^1hdA)%4Li?n$(f zF%9LnvHEVNZ;3nITYKXN#==eBzu7$aOZf~P&@PUMukuvrqPd;t_V03-+`qXuc|my* zFR5dt&~}rkv*h>7BmDQr<#RcgJWOO7b6CZPY-c}5`GM1%=Pt43H#yB|O$WL&kS|$m zpQ|k8IxlGmcca8*K2smE9Q;679^r3!S50KTq>{SJUmaS-6@MQ0`;0tK5Bl;V`^xBF z?BH|u)876Yem9SkF5zGO?tdcr8})@awO9L>Zj(Coy>?pJwnC(%1Z5efUDc5WuH$Fv zX>L-mqPaUcNkIvIv%ZY9G9$b%z4V6kkL_|+9c9iWR`ADm8ur`pyL`WC3$JHacKYcw z^&j2V_ky;{M+d)AmrePVGY8%zE;my)`8`8or)Lds19>-uTX&k1~b5r;Krf6lMQkU-_$ceyD=}!3i#KL%rQ0 zrZSC3Mso61oqyjaTGTeYGLT_(WE>CrO2$Av-SPd2mBy%)e(S~O&t-hhQiRS~^^N}8 zqk35o&+lW#G-vRA$-d@utJ3)0@`rs^D9sh^xukRmc`ZMe#C>=fz z#vD(*RF=M3K;5#C&rsC&VpvS^<&Zufet#iOE$1BP8PB8oYbR~sDaZT9So6I8KfrIJ z?UNVZMf&JF_x_W$!SA)7Y5pzjaqpWY&Ku8j^)}D`OyBw?{0(R2uwVXiIG1raYhAHQ z8?GPU{Y&Dgd;i8V+io#4r~M}xp9+c*-F+6WEMLy8U2ilGUFkFOw8~IjBfuRgR+g%VWvpO5AF!IW zT#v0?OCS7&brR+yyZ7a$EKiV*5IT9Sz~$Nljag^@_Ga78SnK*+otmZ@3Vlh<@6ir5@s`pd8{Iw zcMP6o?)REGSYFQ#)PE;^wdFMRTHE|go9)9#>a~jR<2GPldEb-2B~MiD@BHVqxg5qF z>1Or4C7U|TuD#B6uT5V4^2#as)|WTZIDs;spv?8L$62ZGB$khGj4S8-#XeHTJWYS1 zjH!j$@~wWwJ`Qu7vs@;Y!C?U_`H1c8;~NH(v#@6=baMP>ST$chmWxwlb&mbJjC*^; zP5B7#7oJg;A1a?(%C#a*D8N|jr&{06ayD{v!|R0BXQ3puXv+}WN)yX9p0Lkq%U?=o zvR<9srS22j6;D!wSi~Wje1!kE+;DNBg#0~5!Y1lS-oIdq_48Q4u71WN=_W34iZ5to z{Q;K0tq#ko6MeW6&FDa#9^#_Wuc#FOK#0^r~wqCl2AGu00>t2yAVGTPu#$^)Qwov*3+d0Yw5?G(6y0Mey z%6Rxg_vapAJN?M^N%Gd8xt5nPiwEtji}!Y9eYt<#-u_M<{M9~T91EX&OmL3L{K{|K z;WXp;nc2)^4og_T`%Gmf(^o>;+~h5g$x{rJno{vUG+X@@20 zn9IMxAdT&rS);Am?cQ9yn{x&+&BLYr7|0oO_fZ$L>4zfz?`Pk4&g3@)f7iC{SHhe; zJJYNiW!}-xzsYLxj#zE`iZ$+yibjHH%U5i>&W#t$=?1x8@w~N(`EB#|obCl4xhnQM zUTUWg|L@usVsQul)m-~++uvd|?=Xh3jAE92|8XAP$o<0~=i=df{9pZr@gtm@9vJSK z;8^`a{t{<1pX88v<#+mV5&gFkEh#6SKFRtW>d!?S5|Dci@mz*I>aS8o_d$Hm&kVLM zqR!e{?#fqQr>UR}Ef+TqmZlS@B6)mm?!Q$TF0^L8t>fS^l0e#yu@29BW@#kCOx^R%pZSivJ~#MqltdC5mO&b7C`C;b`12u8Do`0g*`YO}e?8m3xLw?$I}!7kz0S;T~?2v;nUW+v@}R`Vmg> zd^{Q0d%wSg&u`!CB(Ba^9woG6ma~zw+@hZCr)=-EK>aw^kJGdbeevOS`V-kGu-+W! z|0C@#z^$nEhXEfBDxiRLcXvrCAV>&;G)PEycS?7sba!`2OG=A`D5a#JgeWPY-#c>8 zcYXY;SMNQ~^Ri~|J$q)&TE7)Dd-jISM`G2{ec)jw8ul;<$5;pQF+nggGlbe)iYkoQ(mUBjHZ)>(G)SvZJtqWs`t~GfsAJ!Yx$m^dE0y6 zp_TVvo*G3UYbAul#m_?uF z_@=Xf#mr@;<6h4e*07Q7Oi}++nZ{v`kUxv_VC680am4ypK3-E#9Z5?Sl2eEJG?$;j z(xD7u2<0im9d)%8|^yJTCqn+2n;v=j)x_Pb#-3i-9AIpDtI}Yc6`itS+ zlltgKlxr)_*mp{4Th>~BN=eHbq`y$w@+N7hv>aP4zbLK9$Ch{TisfqTwH#HtUm9I{ zDzE;PKl+`Z=<*TVtM#H7Zx_UQE@jUjeQzd0RdH{d*GOx-J;*`uJ(>d2jx4f#sG_`9 zFeXa-@WAqQB3o|D5zAwwOQk2I!FO-M`mxkm&66q0Kly!(jP{+Ix9G!J+rG(TUbK&B zB;a-4p$7M=I1b0ul|cl*u@RI?E(_s>=H;QXcJ$o6VW3UGC>U^<%;3$2V*< zwr%C6Kckw8QxbR5*YX+#C_zPP(wL6)WDuj7#B7$ZhRy8e7-wkIQ;ZnHgYROV?4f+^ zH~8(E7|J8Khc4E3*95t>O5GjPM^pSO z#<)6}*(_!+M`+*SQqmqw9xlkVXpUvrDTJR!W-n@GbxtKO%M zw^66OF+tixI)DV?=f3o*=iZb?laJtY+lwAw<2IwLGma_D=A|myJ~2rUELT@X#3cz? z`A?tE{-@8Pf_wzuRa;!r_+<=hM>%6g40%k$8WEtH&7-@RXUx-fSt|z8w~?pT%2zwN_lbUPpLX`LV<9+i2>y?T z_Lf&i*7l|KS#0@93i}Z|r+Rr#UO!+~ME`GJB>z7vbD7Ur=krrYD(}hJn8?itw5e&&di;nE`FW1@69_dVBA+L5r& zqa%6!ipRlcxs}Q1@jB@m>t?Y$pE&yRs^p>=Lp;}$-+qoALq39e&_?f@!FyicBP}gm zFWo>j%N41?bdP6J&hlny(@H*r-EGcdUf$gD%^f~dlfLG;_?ELv%TSK8yh~~Nd;dTN z(2p4M5!}nyB#JRIrr#lp92&CQ@~Uv5A!+g&C-oumGU?|^Yl|u6IiG7+($Ufo{dcMY z<_yx{v$LxO<)h>Cd&nYI^LeU1Cis897U$RJx6{Tw{<4w#voh;*Y8XGVD0|29jpx(3 zj`UEzA2o4JN8I#o>V7V5X5854bG=w%ES~4vc>Tk-j4vbP*L$Z;HJ9+dJGFgg>v*zF z*G?Q~H2X~ZGsjWc1!Fq*Z?> zJ$`8U2kvp5$2{YuJ>EokZhL%#t7P!Lp6aG4jc7q@+R=ylbfgR2IPN{&NJmne3}W2AMm^||}xk_rgtgGU_iMi@gd9LUuHu5;9u5P^QYA?U-FrI15Whraf$x*)GDtCB7B;^v9bR-}sk6>>4 zXYo2T4{@Y{8YoEoaKy7+4h;MjE zI(z5`{26&1q+VO$IYs?zoc_Ka+@p@)A~%23Cyw`g&@V2McCo#}72TsF ztu8j}u!n;L{pKd??Bw_T=Wh!tD374M1arxpwiAS8e=>w(9ZQo6UJ^+P*$CQhEJY9c8WW+|MQMQ+vPhnXBC8 zXCfcaCP+#KaNcwzXD;bPI1i`3T0A7K4nZ#r55@)v5fCHii$8&pQh2WHtT7 zU3Dh!sowH`NUzr)4E8%wSG~7NXvlTj%e2B=_GQ22@}tibluNpj?(5lLJHI#&FlWi% zUtWz_vts-IXAaxx6|aZdpN_O#EyvW*|C9BuypMf;{UX(7pC?2O=X1u;kQ<&a5zlqN zdisU!=FQ3|+P5}QRNgj;&snaEm|Ki%X#6oBf5r3Xc9}0VPtEdG zAC9Z4xl6np;#j_l*xsW0|Nae@|K*z2E_Hd2=-OXu%F%+3?B`1^^8*E|I1e#jtjbJ! zysz$wu6Tkm?$55Bd}{l@zkU+I_979HmkF+?v!KLgEE2OG0ToB!}74+!dK5aXD@9xm`bKNCgF zB_%uA7JIB7Q&X0vL<@P|cMKN?4fu+Ej4F%^5S*V?kp9^@TAdQ^xhwz2=V`y+@9!T6^%8vU@^?QoDJvgU zsY^z&|Asg!UDtUEO=!mqGHK^I$xl(wzHlqT;_95agqk+t;?me2>SFO9}_K4rz8CsL}!N3pON&U zp7(wyox}h>qz`==%m~IajTwyL4q>13T(f+f`Y#_+T9NSvRB9^d}Wz1tP^I5=RE^v`^e8qXb<`T7)*D>i4KIJH% zah=qQ`QQiLN`5y?Y<8Lfq<+pWx!{gu9_dhM4pk9Kx>9zvu zlE3N4#k9sNl|@Lkn>jG+xp_<)+cM;YEGCmWbUcEY~jI>~a_cU)uqDK?iy=nDI>d=_j&S#Sl$#Rg7;J1_VRn-TRhuq{RCvT98<~dyp z{=&FTF$z$K;=D^goY(F?cV0)A6Z$q<(3945q#g}uNPU8Q1fR?Ox7VV_%i}#l z^{ZEm&l_uNb2E&gJM_^z^()-vXR`0oA28XxJ-CLw(z=7ENv$7WK5pjqeY{A@BC_j~ zbh+-eAH*(~NNSEc`4?@O&D`TD(cKG@n3*hLJ+HgQ`VQsUw@ka{8ciRXM?BDX+1>#A z9a%(7Gw+W6fnUqR=f{UKTZcy3?31^$s|WR8gwmYXmQufI?pIKK(c@kHq~lL+yohcN zn1Jvt^cS2Yc5D3|724WAKXJ0Fav|ae`uy(NkNuUW262=}&Tz&l<+@qS) zK8n~(sxK?-_u$+U+NF@O>t)xFNEzM#`^Fm-<1I3fo1~O=j#G^}w~gCtoqJAF&y%0m zOECXvUP`@Djf`|8IpyiWjgqd@Nw+hcy8QP3fWLLnf3Z?fFTwXr4lCd3#)jbYqK;Y3 zr>Z!w5huZY4B>K!i`we;4fUbU`-qjB=9obr+F^+}%4N)GF1EGpzxtj>^JDsuaa=VWW(V($OQFlbke{8yGGm;ZXZ-Fpr`$^NFGTXP_YENq1a)Q-C7Wq&_W}!0)fK&u;4aoH8w=EzQt&wmOGOGR#;$ z{dsHz=d~Bh$Unc3qO3k!x@d~mKQq50Hy;FhChCx1GV#RnnW*d;L3oFfl^(r9FKA*_gdt9Q@h$>`yA6Q`EPM0$QZa{erxF!7D1Qg|jAI<0GWe|H_n%Wtb?oEyk4wnY*fvL-6S9>vJYxN7{n#4yB!+|U1~j5Gy%@wO zCh(XSF6h^3PY(t$hKhYX-l&d4jN^VU@qqmn6))wu*1=fxvbM>l$ofw4Ql6 zOfCv>%(luTlQ-|*!&khj-m{XO7ueaxYccd)@%5YbH?F^VEx}(jg5TAumR!8Qu78x) zk=CFIXF1Q;wBZ`xa)ZzEIuGCh|Lb26AHjDA7r3tSV;toc)j3Rj`;VpHjG)XtpF`h$ z&1*BPyvF0FmVcIRQ%WvWn(_o+#3>QbME+)|(SZS%j)MlGDa16=n>=l|c(whD=ZBd^+CF4vml z7{k)))1-xR|GQ2)dVf=z(~{P-r9D?|t26P$YkPgpde5bF+`YtOYVnzhV83x^h+T7< zkJ-g4HnEp^EMYAhSjckrdEWuY7+swN^W*JR_0wG7F_Ej8Ym%JoyhRz_rye8cxlW+$ z3bz(VRH6~>=)(bGwo$Kbji>F^C;54o&g$xJTyaFwNREXh@)7i5y&U7+h4$+hM{o2T z#rJC)yh&d2@fJlX$vNv^;VkF*j%!@x0!21Chq0X>xyu6%crN*7Wko{!ip;CTmyZ{I zuph_POPT*97Sk!`Ewhv(YuUs)Hn5U4EM^hwS;{irwT)7vj1|+($tNg3%L!MD8!Wtin>@m%r;M_6J3bB zR$Cz(eX5v08t0mC)4pg$FD~fkeynXfVrI%X$N!<@p?e+Y5gzZVU>lXxIipodH2DbT z>9>n&`)n@eyifhFVkf7#$r0Oq(RPp6&gb0XKF^rgQJi@#7N?X+n+D3Qsdp z^lzW)zi3F)-eS9!`)%vG-alD+%X0==$X939a-MJaM841Rv%C+V=Cv8xn@j}d5!?ry zRi5%wk}5Qy9laRNPL5D=stG!a*LPem>-1K|Ml0W(2;(`oTQDs zY}{a2WY0%%9!`*tpxyo?|Dp05m4ZCuRr!ubGSc$~MfkdbcEQRKt`E|9qQ{Oao_(k1 z4a(7g1M|(97+ce|yw>_u7BRG{_+=K02Ye?dael>v}z|*W+FH zn(qz__{kjV1NElRc)d00gEF3H`?mYj1dpZpZYle&+Bb>*m5+H#^a0!TYhrVX z_xut+_@1}(Z)3ZFei#Q!4-0#A6L( zBtJJ0Lk-n61$mD)^k*vTxkT`JT@o_z8vSY7Q@>i%9E|co{M+8@qWVfc;Rq)=OHdxc z{ri&~(-N{baIKT~`Iy7v{cA!S>l28_*RAALOjl~7U!)bC8BXlB+7Ah}hn(c@tZbO4 z&8%QMt?Z{SBWTM2V#`PHz0S5NwLKyy_T2{eH{~Qh9Xja$d+VcFz)H5Vm*bozQ6G7b zj^|UpU?Zh?lSi?sL)6uyvE2n;(q}pLe5|%R`qaYQiLvy+^WPmnee=aQq|E)!c&4m0yM9Z!L43SZQVg=!w%00$(jO`JxXOh~+?Z+X z5RYFR^_VkUWo{w&bTXe3r(G=;#aN<3vvCdz(q9h%XVq3n56-bf@L!L^_~jg8qx;(DpSo6pS@j{-*NAd~gPwvO4*+`k$em?K1tUQ`2`$6rDpC0d)mXs6D+kdNS6P|~XU z0p8eP{|uyC5!azB`VES~`jpP*G92VIX}v!;D=X=b313-Rjx{dn7iP>drz zHCrj=^~0Pc3K!JpkG%g-AIvDGu<()ha)F;7hzDu5^vZ+sg#DicL3sqf9r;Th{hhYd z(`P3|JL`|-{j|R5fPH+)174J;SR|twP3TNNA`O-fw0sdbY_{f+&Yol1Ab5_3_#7@T<^O?DbzUBs@=AEC|_NN>R_9Gv` ze7(DJI#*MFyvo?gY0LYidzm)Dct+t4>P3BJ@m#p(#<^xRm_ysW;*QdJD!>}1}}Ene_kQuzqZvvbuK)86xm`0Zq$Ni7dpBJO6H z-%*jWRG>UnsZ1qe+wKYby4ub0GRk`|Nv|--@^$HG>x|$&2fM2`dELQoCW)hHA? zf_wz$w{5-lLGU`m8P5zBvWiXY;t(hKj)%Np8_`Kh7V=Y^3e=I26jzzIdkdNT|`gz|`rzQ2RlrOIzV#JzC?`H)%IHJMvSWKif9m{x zZ(?;z4gFqY9(q2U=VQu8FfVL8QyrgIcG`ND-1@2IVt`S$H;H+yWh?!(vzKP;Q!Uq{ z6+KAMQvI?do9h&W%PtSBtgoLd=zNc`-vJ)lRbD2EsrT*IvBZ{-;NIwXbLD{n`t~WT z;b23@W?uds8*f`*eP-fyauzWrQ-qRKVu=`A$9DGfPyT{>3GTPJrTv%CZ$vPszGCi? zIIrJUtDqk|pl=Y5u{Z0pytYi4@8MZc_I$=hqD0fruGMF04?~G+ei(}(VkTi5?K7u7 zFqijom@l}_UBW5)c9IoFXAFn6U zH}Ps#ZC0JMW;Y3qW&7w})j7Es-^4HdwUYtbpg4&wALB|GC#-uZsd2?Id~I%fjnQl5 z)iHJ`6fR`-HpjAGz3o)ryFDkJw@dxV=e6$Ui#@zXO0oPd?WuH49+oMugU;2&_uHf# zp?=K|wyiK%GCtRm7F_x~PJ{Egjp5ZT+gL-_bo$-muK)3NDs{#OqvV0OM~vwS%@&eAH@BI2u%L9_g*8*b;<2@I}ac?44Z~Z>g z`iRNe+UE@Q7JLT9FLYAA_vQQc+cxev;*yDiRAEwCB)^yK0-H1A)pYj5)xXw###>1yp<&rudplNu)+S6;D`slIqvu6#Jo6<&%ME@V-5|HruW;VJ#w7y1@$ zE*sUk97%u3ecDIX7WHRQ=w z|Ec3T>Uin;nez~;+J6r^T^94?>#IDITjrfx>hOWMy5rawCZ?m!j&Uz%i1x4Y zxGzSYTrhTCG^hDi->HtCZqT0V`E7>A#>jQ{eb9Ww9Bb)pWo7Qw$vTs#uDCpWSi6e-G4-GZT?PLvhg~Z)K4CAtFJ-K zqQD2*H$U*Hn60a=c4ZQ?S;D8@`=q~PmEMzn8EqPyQ}m(=XnZ zC(?_@9K6XJWFa-xy;hIe=F4*fVs}2}<)@@`v316W`0D0cv3q!~V>_~rMg?L*1MQUg)mJU|#$ySJ0z8R#? zAmt2Y%8Jv@4^oTywC3L#^ph+uZ2V?sWpj1qI6@g#h;M%XvT=uFT-0CfmHydZY%c_# zWe@HxuTea>u1w_R`g^XoeeJkr`#q#D9piAHEx+LULR{mZ{-b|4@fYg)Z)5*o??u;R z&ih`->&DA_#;U=Ny|mx5I%quDcReCFLIG^CdIwMiNp@-U;g8lW#%&-1)D>U?eC zl34b5_@~dus_QL6LmH&iE^a9X{`om&xm)77k?S55 z;b2GOBomeG0@kyK6NGd#zaa^k$xkV&)08e;(pGK|&$hZW_PVqZj~jZgG(3ZnsB1Dt zGUk%Nri0ix;d;$NRU$UFXT&PZ~4syT)nx z$xX*=owq%1XKouUnQMq7AL81KGKx+zhN-`m#E_5Rv#2D~#RlQkLqG4Yy2&~5LgOIY z`Z}H$+`lkU890_kBh68y)unlQS&#U9+t@g4?lxhg__3{>G~2Ilv8_A2L=0-Gm(WGx zV2wGWZG`GqqRGeTCwY{*Vw-eYe~{Rzj75ua;^U-2CesMOB(C@M~Vmd{B2!~=a; zHbzWwgiG8b{8;lECUHkU9d)wfJ!O0#UDoH<=z?oO+q3D1xSw60P|r224(6NolR#SC zzVchXCY>+6$Q{cQq{qpjT+2ycqXhBvHOa`MJ-i|Y;_{#Vg7WxvZtDG~xW^IuxWqkb zb{1=#;0D>c*cU~6+PAu>M?(E}T3#dGKzZg+1LtYB70EXCP|17qdC#t#>OZ`?QU;OR ziW86fRC^vD!S~c=effM_sh%pYJ@RnFd9!V`siJ?gUd|oHAsy$Vd*MP}4CiqwZQ1r- z_*CDU#`T7`%(c?#6G|xm4DzY}39X>5E-)t46${&xpK=atU-w1vD0o#=vPWE zH=h{kduV4o|Dmxut@c~YIij{V$@zK4+s3+&^gprn6ZX+2uD(kC&$P6h$@T1``jQpy zS@)hoGsLswE?UI*x|=DJ1IF>@=KGzT>wjkbVeU1R=N*&%-+RXN8k>y^we+3+pZ6V; z`nZnh@d~0T$3Odj6l05%#H1rXag_5+mav|uL{MKb7{UTRR|a)6ssrUR(0*I%3p0G^ zJRq^M$s!JzCLSH;ulHEisUdH+om4q@eO(@z$Rp(+K2&To-{X%sz`nfZfYQ5OPwcgK z3;BNF6AUJae2Y&`AH%jb7rQ)I^`d)47hm$>XuS zMcDl}UHkj2if?E8Jb9Gk){h4F;{y;s; zh`B**>^I&YHm06dW@2ppHSgy{QL(^nq81Aml7Rj-T+8G(>1vv%QE-Rj+4;Qh2>SHv z;^Hxp#o6S==4ec9W8d+$v<5gvsgf#RUEf&U!Q(mJ1 ztx2UGj;=JOl3|T9Q!cMiqBD7=fEM_`ZCx0_`+P~Jl7)Ylhj!)TGE$R-nwK>zG+QkT}G6@s;n0tWY28v?pR@_3T^PhvgYuki`B zZ`QMpC>7wT)gV3~DO4>oRAHFqaZHSb~ba&rLkD$nT5 zU;*bnSM;#Dm&d)9dwEZF_12oA>h1$BY&Eud?NfsC2tIe&*RD z6MJ>7XFmxozbY;Bt+CcTbO13rm}huCg7hbO-Krk?G?p*R=dHU`p1v9>MoC{!9hz6n z=kNXnGZJ4ug6owt@96`gI@g)1pX6o?pTFx5Z&+TO z-nCgeF*%WSrx>4F8IObQxxTQ>XJS`gFjt~hI^X5@+8p^kd_(_X-Ipi${GG>>^=%#( zBkL2fa!`DD?y`0slt<2Ru4g1O2C$e-^r8=An9fqRFoa>uWI5Xy&;RZS;T7p<>EM za1Z|(b@aXZEAfGSEANTwsJ3!D={imheQHzXoiMxp?SXOTkuv_-zSTn^uaAiCnv2(q zi1#wg_4vHcE3Z<>jW;F8vC>>tJwSGHq%7W1hr^xYKQ-3Z2n~rTzPt2uFY#p?Ngo=rDxue( zY2W5_`7@iNoOYgFJv5}D?KWs*J$bB}CN!k`6K(Xk?~mE;y~EG1$)|hKcm7n)1?T0V zN#tdQxUVQb;yn00ll@}z1)cvM+kMu`evX+x>#M(1E@xJ$n}W)~e!JM_kZ9uD{wi1} zT~EJ{5!vVAwz=ga{qo1kM@&XD9;{B|abfkA)_H!h=Y46=r~kG;F4tXKAT6=!M_3=- z&hmVMzPhmVPA`2ShuFoiKFWf+Ui+cW|Lx0zd*t`^{J(vAe8m~u^U=A1x>~Lem}`Em z9Y$1s(fCO4ls|6Xa>6+2*z3}U0W3=)CTX!+SSO?4ijNC?QO~@uzI%MF|6&yV zepIpimVTbYe8B?}$wzQ4`=5Rf@}c96;@BcMwrHg9ZLUBAhL3O_F-cqF)&g-a=F9Qh z?@osN?k|SNLA{(9;yrxLDb~|X`Fy}W%jej_L5?uKpFYo6QH=AJOGrzRpOF-#FrQiX z=K=aF4+RKHS`g6)Flk9!uv&Ns_XKL5~|1YSQ;JXBi(r8y{)oT@fQ3G=-Hc+s!u}40h z$ZMl?#%GUTsb@Z>&addx;@Q`Mp<>+fPeg3}|2O@Q77|!HxTc;~`@Ziuc1Ytn*7AJ8 z2~LuO(w@fB_bg|WPAu*7H*KSge3q1!Wzbl$%|P23PSStn<8g0! z^S&$6TST=yN4k^_mP<+Bq!KmBZoJAP9qF~;{@#{f*dDW4P1yauC+#D+=QqMQaW21y zF6W%9QilHeyRFeOxF1nDEIaHR^Qp2u;aZC{kz@Ozta(Ktzk}v+ z9iJJ*NuW;Zm_y|Y9?N4?eOG4Jrybj)&z&E1Gd^85cIz9u) zZRUb{cU%$M`wYZ!7iwrsPvM+lhkjA|nd>@l@3ihdzi*XQo2hLK_P!405RY=3rzp># z@+g1%c%g|o!d`Ri?~MJQs;3a!tt_@v`W#VRW+j0+W)+W1h=;=BVT$)X?V=33s~h!M zQCyy;NNQ#q7Yp1Psjr`)J&3bQ^4vpRobvwqw$;$KPFij<%lIKJZyU8d-^$}4 zMuR!f(QVEFI_iTx-=22r;k(y-@0D)G)o*xm*0GpBMxv@1+~+fgqhx$Vd6qC|*EY-Q zr{0v`|MY*A)|H1Y6taHwD9>Xw_a#lIlQO-Y$@r47NUv$$SaFZL{<`#>^-vZ*SGS0Tr2T`qqcptCb)zs&0cP(+h zwxc{6sDt1y8Nt}n&Fekr-q&`lmq7a(Qr~<<9d-5G7)FxaWo&VyiW^S(}i}_pe8ZoBWSbT@2F#slevChNqRlM`H<~QitJjS zZ9WS6wOWozSuC}msww=|n|;rEM;op=Vs=$*6XTV^4s4_OSD;WT1VO>r~9L= zw@BWx$uQEjk>V>oEM4b|re_$tXA=UT@gP1eMHN3R<o{JIBRJ zwsVAY+~66nwikn4#SFC=!4>VdgyXJ3lK#dva+7?ZSfvi_=*dtfFo)G_<1l9lU-fyL z4X&xrar}MsIfLq$2Q3sEs6C1&N@Vjc-k-FTiEU$1UC{r?NKgFp?J?41t z8V>V>m-;yuA7`$k-)hA;_L5j$mXm3QbJF?B$}yxAOPT1r!m)6R7b|#;c=8d{%X!DO z!giZ&7axtp^G$8{hJJ)c_CGGK_9b64_>gMM`^Y@P1`^oM$C32yVq!msEFYt8Wc4dP zvmUaO|L~X8>%l#Zb9OsUx_n|Dp^ocQ)A{|Z+Qw-6`Z1OLBvdB*9S^b1Q(?auhl_TNQb*}xig6MTMuZj5*yE0460r=C2UtIX%=bJR=h zwc6YU=b@X#y12Qb4Lvy8o{v~jT#{pvITA~(pW3nR zTw}k|FOGX}EHNEhpKiSGL22)A#%*K5i}G+;`j`YMm1P6AFrq*9xWQiL5`4N+>V!0(EjJ z2jvvr_Lhm4*(V*h&WW2tQcc?Z=Uqrsimg&qu=CO+l{7j-L z>WVjbhpIHD69X8>T-LCY$Wx8e$|vl8t{CzW+!OuZ+-JVkc5*1I5z^r^9TSmxfk;Fk zJfXZu2rm(laKs_(UiJ814#xcL>b;>prZEkuPa~RAk7hJsjrEqXhZ|hwIyX?)5@cgILvfTTj7=L68 zb)7O^9iKDybv?j&z^UxolJ{)s{rAbmXLs75`S)0v@s$TSwQn$7Gc?DK_MmS3>{Kl+Rzv3vyA zOvhbN2IBaUV-2=B?THv0>$uIAduWS?^?!#wA8~}wWO8a($HcbxbV(N)^0RU2v*gaf zW_iE+5L$oln&uYY4c#Ws%|k=Zl<~T@+Uu%0$tmA$tE(MOQI^VVe>1QuRpUa4NRwbz?y5Bu~TXYJ?pP`?-BdRyeskT&tO!zixBMsRKa zJL~H^&lS~PD_Ku}`R#P?Z|pO#Pn2cx(2#l+#lSt|mb#4QzJ(2rr-66~>LeKB{@Z!O zck1c^FDj>4q$Dfh^>^i%$YM@&gM{KBGgWBBcJUX?J%W4$=aQpr>-JXjm#)g)Se%}E z4B&KebKt$M?-A;_qL7@dJ`)g^OH zV^WCzX=K}f$LOEM*O!j%BHt0k@x&o1nQ2Br$5fpljyis*Z1%Rps%Q)a31Tw~70S*~!G;C`8b%Hsfo%r!ncu1`LvO4SUDJ5!dcjm&~?^<=3iW)t1_9w7S8dE zBoK4q^LihuGMYKW@_ZVOTfRbG%SEYgxtUn)Ms)cI?)Uh? zbFX^sHFjw;x#ETkDL}!Q?qA_kCfzb8A>wUiK^98VTV1EnpI2nhQQKo5cR8sZ-;OVS zKQj;U`eA*?`_iV&c5asPzC7Ar+<%qFi}t@xUUu_W$5PIEwfXHaJ@7c}xR#6At;Ey+ zmRG*7{LMHC+DkCjzU#ejQka4i;~n0nl`*y@Eoeh?TGN&;t;B@m>0`M!;fmd((=5?3k#)k#Ym&-agtw6IF<}9>{?z4)!@^9Ngc?A7O z+#bq>|MXiB(T3@3sYi1<(1YMUxM9PMx3nAOdIaZ)JX(G!z>#sDTO?jndz{v58MKMY zV#wnlAHliH-~A1S`1Y5B;f!Y?o47<`d8o!z=8{rurw-zqc`RoWfAl*JK|X@<<+aXY zpo=ljc=;LEC@|0bi`VvOqsP6U7$?+&{^kv1Wl35xf>k`Lpq_X&xBXRg?n7?xotRaA z86vMSUh_H|o2YlLTK5(~dkM~6CX0(btW$pbNN!xpN@d5ju%UA&Mw89sw>YA$XGrAp zV7_nUI+D3TZgbpMc!!%Fr5 z=PUi>C0Uu!kk6#OD}{#Sv%lcp<@bvyXJf;;a^{zl^a18RC06N6m3Q7={{NV>j(dT* z*L;1E>n%U2t3(%#U$w>K9({j1ajf6DF7M^SEAI%7p^oc9Bb~!v^S$Y2o|o4pp3AG9 z#WK!x-)ecCbKCXitJBQ2w7I!!%paf7EsQ$K0R%e&Mk=?LwKTNAV=G5P!dn=4f+v1Hs`t6tMs4*st$S^0IWU11-e za-EiqohP)^=QFB}^EZ7|M`bvUb$n+3SBYew$tXq*ZrXP=<&tuR{(}d~dHJ{Uqz=aM zSARil1oQM3_TQU{tY((|eZ(XCi)J7{6c@v z?P50P^C+LDwliLgO3(8RkHqQuY|qOh81sYg`<0~;m+j*|FWFB5PR!D79A8O3Sns(F zuD9GVAJIRKIAC6oL)q5TAJz{SvfJw|#rR9EDRvVRNjJGxMQeWlJ;A5T_5Ze6outa+ z*L(Pi>+{G@c~+KFAJi!C+>SGBovuE3%4zfQp*38KsOesNF;J7*RFjXvh4e-Dd`8L? z-gdpR45zi9^x9u`zObA`nugo@@aXapTvOk%#Ai6l@3Ma2OUg7hckLw}EkEFA#!hr< zI@+}up0a}}o~!8k=bEMF#*AXnE3SD^FpA@e=^SXG$Kqp_K5{b?9e>>R-X|?ESpVqU zB1sS*+Dm=;E8a%=clDSG+H_m{t|Ue>=o{*KExc_tavpWPf<9ClTG8(iFEXC0!>S(l z@_c#eWNFE|+PURK)=B!7b5e7?w(>MCmcBc-zQ^)Z%VB@aolC7e(;9=)Y0D(e5Vp5JPi5=Z z`z-EFH3p_PN1`pg7{py>C-VPokwd-L6c-Ijs%vt(UOkC!<^A8QRrPuF^Li_Z9jC8$$LSvLU!SC3mv(6KB z5!v$zIvL;je5^SH&8*Xk?qa!kVR6P^{RR05=7f3r8S|)21%9#350{H;F`a-ojFrdv z1GMc?`ukSmca^y2R73GY*zcAmS#56fk!v#JwJGn3Xw3OhpY>ONL3{-H2<{cyKHolV z_nv+Iz#YD)^^pJjS$GL~`J>OnGkX7j^B3Klg1N`&p^lZM`qNQow0Rb=mK_}7G~aNS z5aV+5oBEtP#v$|1_Lf(B|G;7Dk2d5;<+`iwCCQ;L^tdbOt)E++7UZjj=9ZMQ9LFYu z`%co7)5ds*+0l&K3|n9fFXlJ48KnZh$m?Em78jGp@AS3eKixF-LpGAPl#FTDaghr9OX;G?vF_%AHi>0EU0fB`&m0pBOd6R)^!}t=!cqTuw4#T z*6!aEOZxHAtL=|Zj0J~2msfq`^jPlyyY*Oo~aGna8Z^V|aI00z^7Ce)(=jRS5r zRcJ~h>eFtyIg7f9DX)Ww>v3*%QOfdcQm#^0%yj$-lt<8?-toQ=+ioz?=V#0yad@98 z=}Qjtws9u*32|^yAH`+Y41-$=L8n;5eNC4tK22LV<@%SbG&Cc+%9v9 zC(42&uZ6Rhzy1r_ZBQ?7Ip$XC>XiCiuAG+kcb!RFd`xd9_LX0TaY$Jm<{(GuDpqr> z(w|Fj@{sTzudzCTJ5 zUMDw8Tpus&SldT;4Zu12Y>#)`Rd$wlOMl`+`){Kz@@84tEj^R8rROVH9;u&e zD2>Nu?};TJ!L^_mAF7*9Vpe>=D~;fB9_f!BAC!LBQU4`9=5g>no_YG3zxpnZ&Hkgm zpk9Le=Uz7Mr{hPi^^`wj{Tn0A2T8HfI?6l=QFEGGbF+^zpO@9`a(UaxEO}qbI<|2+ zhdy<+dCKSdUtZ$s31hjkFSyQr4r_m! zk=1NtKNq>fpt;JJuzo#=kKnsu{T$or6#Btsu3eJvo|w6=f9J5rXK2NPrH(PCeox!l zsjPbbWIZ~)Ddt!~xJ^l4_iM$;2AG73R4eJ@nbjGk*Ic;M% zJNTvP{~a&xTkjiwJ8s0A@$a$YrRnDXyus_VnkS?7YzH^*JYoQctihIVsA!)M8U% z=MQC!J4IX%EayF&jjuGMAeAXeQ(hw#b@_7B^YiTBev9p+%#XS_hpFv&xx`q{?W5%i z=TBoC7g6hq1F;y@ew#9i9h9E$nuYa(duNWG@SZ}xFV3I{)|0m3ul|C12|lMRApSC_ z|KJ|Y>c)(Q>gc!kYJQ>b2=3S1{#bkr6rW4PCwn-;DZZxT0{x8R%1W8Oj^Dav88p`1 zfw22JSE$=;>b9La>Os(MgYsw`#XO85FBqeFpZ*M_DzRg@XN`5W{SIt$W7lM55?)@7 z?GwnCLVHcCKV-BRijY!FDZ5jiAJAJHvi`sbeltfszvVa+zN2qoZG8QVV+{J!puHrS zs^26T=}1EcQjvvT*6qUpI*O|VVsy3g+b51ksl(vDr~ynN>|Wnp_8E4+Z^=341Y$Ue zawtz`E+~hr^Yl5k6U1roU6+a<>7S#z4~4tN#!%y6$-BnK5&CZD6=#fVx43st+vTS5 z>VP?DWqEv?0jb17N!!uaJuwIBWVx8*3-A30M(WR9v$;cAF}eB!vDZy|WEBmGE+4^t zug9#vpD7{c`v>*?E%kxcuM^%jUEk@$a7t5^&d$3dJyfob#D(&{(OrMX-3@PwPA|VcBk{8U5@*_ae;%5EwlIZw(c-KWQ=kztS*Z3Iw?ubOJ2KP z*Rg6BdF=0)et%ix=k@aIchux%u60&v_v0S~bBfTALh)_;l=HTz?&bL2Z-@=H-JhLv zzv#E|UiSYCi=RaqLqj%Hbw0Vl>)LOdY@s2i+bREZ+EyoJWd3|Qi|tf$o|8k2i0LL? z-#^&B-j3nUY2W{C;QZ~ROBs>%$r;pDZe?2AeHxqf8*hb%^tFDpAN7IS^YF*cPY3A> z#BXqpP*p$n@ex4)qK$NR~@vfmrYSf~toh>_s`@#)Z1 zEPP_DdS5=)JTHr2ZrbN7*EW>dx7?Yn4(4d1T(q1oySQ#+{It!U#PT?^yp^I6eHhIm zx{P-Y>-93$ukf8R;n5*uzsFzClxKDKN8d}2CpLnyCD{yhI>wkNt_L#Fa({+1kii7! zWqrLCoSXHR_9N^ZZGh#l^Rzj(_4{)*yZOt%WL^#CxC5#ilNrYx#weHN)Ah-WHP%ED zn|1hLr?$V_9C^Q3Wh%{cnM0}19t>wH_soYjx^{Y)lBInollx`${ViN`Evk=rPk$vX zEG?}KM3ax;yK;Ry7;BZ?RB@T~6>-fgQN**f0C6oZ`%>(3m`l8PTKgddIVebV+OwGW zjv)naQJTu6en&r3TsboFZO0`IE%E%bhM=unPvZTloC_8X4XIekcg-4whV0HPkIFlN zSZ?x-81r~p741@tO*?8F6bmhGxDNNSgNbKOoI-gf)(6YOwAVsIB4+b@-Z?`jZ z+Vu(hyf?^PypWjIj!H_GeP*oIt}b*44QZ?n>SXj?1Z{I(M&ngWpEqfLO|{=~wL(K8 z8C#pA4Gp=HSUxL?lSkU_r@mvXKi$|se{Rei93eC$MPcL4X8nQK9-LY~9$woyYFv)s zc)IH2#b|@&u8WuQ{78BK*Plc9^}fc}>$&es9qn)HczP($-sa?s#JREvw?f%^{FcYj zGs~;~af$N1RNVN%*-Wml%X9zvu8A1OOU9A^too1^#vUq@;GlD}HQKH1XSc8NOrcTdyQbOZZQplr+;L;r z=s)}mVl=p~F}il$gMo~q18wQd5aKh2boAx}{^>o8{k-SvdB!N^wv(`X8dEQL-d2Lo zT^?n3-ekQ}{K(I|Jj>Wles#S>eKz0Z{FR=Z;2hVvM@BL61|Jb+uX!ekNzE`G^YSP9 zWF}j_vevv<+FSqoO`YfY2<|QTyY~g`mA@~z%=bJYg1p8g3vaNG%lt?<#}JJapXWsOc`Su0Z zq_mrsjLIG^WDHg1vpNH|IbW-!PtgyrXCEPB%^k|vHbF=QefqKi&NCZ17icV&wU4A7 z#fLn#?;<8?(n}1pLfrq+|E*No^TGeGbVHlF%|$M8nXkFdmz?Da7r4q-Y_ade@)5L` z&u8e9iW*-&bd6X(f4LR3XX6{?c_XU+Z=rT$os=xJJk*?KEairo*UeHljw3roM!L4j zou0NY?&k#JGFFm`mbHVu**Hi?~l+cwYiW zCy~lWaGmgTbDFvOh7RVov!sos7tLqeN_#MX>7GBY59w_A10IbR{}Ws{WhRf+-zn*( zdD_SlWxql_ZBWkowqwp!221Y^)&3mAVEy1Nv2{Qklu`!{>DPOcN={N1!}YoP#a_{k zk#`+~aw%h-@t%u%Ltn~j`E4%#nlRlt?lStD6ZNGxH;gCQ%-f%;kGzk4E@xYXJf3t% z{}aV$mnqFp(>dSs`R8Njfy2!I-Zqa9`mx|USxw_8FYPLyaw|b)>aoeVvxnO9-;8ZL z%tML4%XtpqAZ z-kpcrR5p&oKMol(PZ=`Lk$FfZvkaAa%6O2WG82jhWhjzaNI59;JcY^-q9{d! zLP(~Nc^2>I&U3DBUq3yG_j-SSy!*O7=U#j5wb#1WJ+FJOy$>sRkA94%4|Q|t(|Lv- z3}7VDq!N$tc}HC59{vYe0^#?qq_w)1RlSQEV*OC(ul~gR_R<_>F!nt4XO?xu?ja6M z?2nlLS7x{W>JjQ~Xva=9y*{_rN<7vm@2?YOxhYL(L}MEAB*@HSJq+5B86r(vw#tb{VC61U7D&3L+;^k|`Mw9-CxwM@y^?N1!G@f-DQS2Lfv zIqvik%4zugxWBeF(=+KEcwcjO>6gg(D>YfkO9`e?ZINp`n$Vh#{CRKvKy!qId!aYa(696}b`r+i zx4*{nPHuMpekiA5KI+Zh`VD5%oQ3kFM0V}n3-aI#d9IE;E^ZC!$!knm@6Fn^gi-F1 z9bmkCNt`JEnAd&~2WD(iMp(dlma~~P_P32w_WgWPZGl~d`;(g2)n77@1Dq#MJ>`Qh zhU-Hq{F7^Cez*Mr*BvKGXgrvP6-_*+dQ;bv3=+>J@+!Uk(zB%CNhhAI*U_Jbx(P@ zD2|(zk%D`SCB^Z_Xmbwny#FSTkS}BVx^}FkkD^*5<(sz|(Ac=$^-~|dPw2OOIK<1I z4`dJ{c#JyKry0MB%aw!ndB!<5Q-_vo%RhG@>Dm2|I7{0x^pS>ld;Xj-g_pzq1uI^V zKb7=Fe8CUwu}!wawqyJ@a|$e{Lw9Mc7`8Pj~Nd`W{BXr(VatRL*Q zPya)DW&LhSuthu@jQ0LGt`kZ-ws?f^m!_SpZ{{It@)R-uNAb`H&X2@X<;67D4gAyp zRTWktLCu(_W4^l0J!!S?2y`P}&Dx2N>0 z`oRn8*jwV+>4bdnJQt-38jBXT{GPhcK>J+2K)vPQoASW^TiE|JePei}CHxPOS+oiT-`gAVnR-ApUmLG%C;SHAjgOEX;rceV_x!i-*ZsF^(^FHW8@t%e z&+K6*J18xU{^=2tER@q{-qu$U^F8K?`rwb~MsHr@EhaFNW&GRkIu~9dUpdJYlB|%f zghxz$+3>3NLpZL61JFbyu$nH>?Gdhp@)pi z4=NvYqc=@yO>G*{j?QFGpgks?xP*MEJ5+t95ihl}Ub*f*NBYb(R-NS-{grn*^P=^A zc(jEg!}Cn>p7hpbzp6}m?@`+w<`5H<_4oL1kJMfa{mTf~6J_%$ch0vOZS@7K2D-jF zs!loI{A_WZv8|ZvQ_hm0xH7>++l|(4_p9JO%Q~?lT6%8}W9qUeZ6{vex&A4sPJOP7 zM=AHm#rNT!LUkhTOA!%e2dl^85ypkLb8oz7^6=e-_}@EwoAZyLk%Pv6ft@3_n5RSw53KuIc4%{kVg;#_SyABabi z#m;%1Jaf!-Ux+JDZ}yo%PV=C-wFi#hzn;&OJP+v+t{VnMOBcqljy)XbDv2j4PZXxm z4EL$ih?l50U-@7@Ps^KwoTKv+{pCmcq&3E!dtFy>=9u^YZrnxU*2*U}c$yH8a9_~v z-qSNgT&5aNgt`8S>fk4oUoB0@BMy&HgIO#O%b&XLU<}h(K)5d`g?NPeQevig9dhs> zm+Zfg@VxNw=f)i=sp3X+BU$WHj(irs;2e`Xgu$?tt5W|&72w&F4B(uwvo zCA8}y9t|wFp%G70oxBY1Xdet^6r&kQUs5R#mwOmX=^OiZ5dWd(>H4Zq%F98H&6ej} zhjm$ z$iHAdBO;lxr7>$SO8=&=Gj6i_z+zUjgK&$~%U269uFhk2A*9M$%h$f0c_+}H5LW_|44#(62+V>ZcFKQcGC<~*EN2Sp-bG41Vlr`gpNz&`@{wMtH z#wUw6hH=pSjz5_>EaMt?J8o)T=1sQq8#DDM0|zPdtYDsVNWaNB{GttGPI3SLf|?Kb zPBv|cW+`_!G`B!Grm&hPp1eMv9NLcp(Z;uIU>~Q5C0~<~jben)a8~m<-*J%prBh`Z z(3%%{osqo5a#n4Vu4LP#KRA2y&w-Lf81slnR3YPHMlzE%#44;za4Y{i&~EPNagTS0 zdAf1)T(2->zIX`Vd=F(x1aI3gs`lz&x7W-szgRi7k(}LGO4^ME+1v~Q@Qnt z<`rJ)7#Z=l=VeR$eTv=drSMr)v~krW_2Jqy<-@uBqKv<&T;y4xA6=}UT%u21YMlC^ za^!QIoBihB3+nCIw%WtK`sxwtM6@xQ{Q81H-nW<+ZF94S;nJV?jD0^@J$+xl@qv0Z z+qrn}>%lSeOgw5_R-1$Rx7t$GxDio4(*1v zevvW!`;W=@s@fOg+DC5Z6|1v0iV%XHg4i(ZjI?o&b&vKR8- z+(#*D(3Bnwq@VMAlVh$`&vN*R`7FZkRF1QLJVSY#AFV4%G4oe#gne@98*>}S=5f5d z#+mh{e*^0xuD7M3Z<#9I-$WUIiTnHdu`)xQ=Uc9AtbbMekbl1P>*@M|hRV^=9>(dHw`6W6FGcw^wR%gu%>JJPDJkRH zW0tqhPUw0tv3YOrdC<0bC`6lUu3wpTTKTelG9K}sLdxa=pB-d!y>VC=@+FMbpHS9{ zy(Hbc8SgBT#-4xul)CHrla|YR?L=4kYx%f5>s-K?J*&1en{ljmwLZsnCXtzfl%fGI(vP9M%|xd19Z&D}xlnvBS?Ik2LS;pTwn&xU>lIp%ounw~9}h&vI5;zlQae-)AO^*vL|z@!B-u z9D04BEmmhXjCLN{`@ef6_d-aI*Ic`d`rJIx0PSX7$6z0&>X~bzS2ykbaMwj6j1etw zxBMH2>ZnItz=KF>~S?SF(x?Y~crXbCBblC(?C764KK< zw|PV29MyJe-!ll4F-TgCU@ptpvBi$O8rWN$Luj+sI*v}t6o5-f#o}Q(jwEt_Ax4$&!q?dSvIowlS)bk_8KK4=7y$$vC z*Y(6T?_ur8N@IdV<|=qoTkz%}^L&GSp229#1%y>wN^d^<&~>i(%+XgIJXN}Bd*o|+ zzLnlzNaK6NBiwfyr;NC2M~==h?h?m7#;bka(tgY|$6>oFm;9ctamtyc%IFYnt>>$R zCB<#lk%)*a2_hrb2!CCo{3W z%tQRH{0%$jw~@xHI|U;ndiRnKE4BH{l-2l=5f|FKR{OW z6RWQGE#bQ5qMZKwNE?gb0pj*`yBb3S9ZV7zF*%ZY2hhgz5)?xZfM zU*Wq0$F&V3y%wc>hwl-DzBb%9)_t1e=Wrhsai>cg+Nuwo_|U#r5zqUIO)xH}Ay2Wo zh%##Z0~C^knbL#-rkM zH|HJyqv7fdyE#b;ZC;|P>J_C6YkNzZ3nX=!e>(dAydKJF_?#i_O!FlxjawMW2u4w4 zm3cSHc)b+cHkgZLA0Kg-c7MGvTzl^l?qDs~h;7|&VLahw;U9d?arQHdxqL{7NBDi> zfAibI>6WW6^j@LNlk{`?L$iM8BY)PCsG(C0=?^jBQ#r#$O-iob3@bEL;y*Y(`#Bc&aL z`?N0^gRh>TA23FrJVjfrO}judZE}0@9r~uv-s*a1 zd4xVL#ABAaGI_ZE`#mdWyXWL9V^#5**~`AAVaKV;>LK@~sJ~O`E{*K;UbzG0tb$!J*+JdF5B9HR?02TP__klZj-i!3&k>N$( zV~wL9!yKeB_Qo>s1 zs%lV&di>oZY#l-M_+pJ5|yY$T^^$f)tTnllX#D@%x5W!7|lDp&rIgEck5o`6<**)y3moH9J9>{e&aM( zILAe{vW1cS(<3HdQrTx^9wrUtC{0D~qcu;Go_5?%b28F|C#Xp^vXhIF6sIMd#pS=H zha&iA`FPg0ce<~CI_LlPdQ5u!T^YMu9Y{n%5|f0aq$2~Lb7MI?X5H@`;V54@$MtMt zBR4CjAw9xxSvGX-@lj9ZMf;iN1@(@ty_M0i(t4b{;G1`htw}t=z0&iH1D7c~`nUsM z>r07FroA|0E`W^Mu$)YEO|gjym(?#S>zBsc?qk+*RlV6(^7`CZoFe*W@t(>YCNhCd ztfz_ozZ};rmk`#XDi=I2AUrEPL}JT}vU)AMF^KSK$7oJlTGNVWX+cK@(2dUAD?P&J zF3;vMW|cUrROH{Z&Dk~^Gt-k?j?qRN-k#ar)yc!^w{z)nx6ib-r)hpQR?%TD(^*Z` zK)-8wjpdn^*W2F|&o_8J*uExmvquIi!{=c!ZA?two^H)DxN8+2ry)<#jebmG4l{U{S9p-RMA2H>zDhg#GygmNMP1tuHfOo!&)jebp6X?RG}8tdB(Bp3LEesxAM5>Kk@k9es{8+&)C6F ze9L!y#8-UIE`H{BPO^#3e9Q(`@Fgp`)kkt0hVrp?wZ1%uIh6da+epVx6reb{slWoN z5k)=T;bW$9Cy$u&@r$@0WDg0}7!z?f@rXl0u8Qj!&T^8|oZ}SdIl+Uj5lc~q@>HS< z)t%!WWq)s|2bM29rY+(m=LzW%e#dEbb;sZeiE0?bP=U5NrSEh4Eq)%O>}apol#&np zz#+~N>k&J;gGWrgZStwOQ=30l+pqI~+VURDTZEH5|4BGcm_m3LNBPzB%);ZgyTs1V z^lhwUoU}bcH)$}L35@0~zGNR=SVt(Q;lA~F&bP3Aj&ZFqkrk}vXATls(Yz%CU6)K? zKbNRb&)9`YEM-e^-=$>#{o=-H%R9KpL5`8raf&g7(Y#AcIeo_ROC0AC-|`0I*vx+C zyi>T2;nX94V0{zeBf>j*r10i29{Vzz@yH+AVz!!J`iXb-DVxk2ZDZuO##2Ys3lg2x zzLJUD6yib3vpv%FUwm`D?BH2*x~c6a4ZrSCmN?})vY0W<*rVDeW$q)(sl_AAk8N~5 z=Ug8yC?87!^_h4z^Ssr~_tx}(9ppz%^KqS-W_g5gG5_>E%9!s?UbEkOT;EOf-YD;z zC;X64h&x$%oMap+9^o_7+r5YOd-31PLu-|Dj;~kdl+oO5=K$G0*A`zfhmpoOrieLm zAcoKSlIIo&iymi)0D7Q(U*P<|>7ye{aS))@*X>y9-f{7kP_`%;a_H zGLpSKr+mD|;vCvQ`+t3c&@pa&q_QH+)6J;qbGcf|*}M8r$4T|D@82uqmCadWG zJu*x&j-)6p+Pa<><`zE8(>#{cXAMu?c$9yB9?EGbA1&4z_tBPaJVR#UlY}AUuVefr zEF>H$EGq0R%)^~NQrbZnkNwkFDz)^^#9zl$X+6J}*sK5d*y?uTl*yaI_+wOK=S)`? zvVyWy;DemX9*r4X%4^JHHqo43FKv{8hsnn-&%fsoYk17MtHKJxtisdcp5Ag?_FEpE z^ZNB|m|w5`ynM(mud}LGseP}BXx9UaRvHWP4F&8YrS~@6=~_nHTsEb8PWXS5Z!n6U zEM*3zsKUml)Y~@76Td1$#~9pInPda|3FRZ)5B%tR@_dQiVg#Y6m7djIIy`bysMe0Lnz&}`*fwv;oT;Sfp6U+-T+e|vDSetn3sFSq(XgB!U% z3;#FxpuTwf9%CNjIR8f(PSd^GLBjtP-XeWkpHnU_sE@)t!oNQL%opuKA9>cFsV^&o z{OH_%;S9NoIpdPAO-9|e3o1C&FV7YZud57m2 zL`mzr3S$Wu2s^QnQ1+)>w#M`%A9*heD@6_8h}%^j_BY%*ESOeO2fQcVBms9wA@CJs08sb3FKjwsoZQ6uvJ! z>$)@i4&s#R#v|`*d&RMHJJ%5MV6*mac};cn9phAKd7`;?U-|6SIx?bfZFy=O(_^hR zzoq+dguSB7C(6f))716)#uzhPBMQU+Y#Jx5D|}wK+3Wwe9w9BlXUK=0=Mgrsmo0tu zgTiBBnQu7Amz?A@=efvPR`CPh@gtRHN}p-k8)0gy5J3tO@Q1XBElfmGLKzM5SmV8S zvY$Im$1oNP@woBx@Pyi*n9sx$SpILHizoJaQer+IznwUR^hjGuTere^g2c+%fBT)T zLylMFbJx{$q$lq%gT-`mtu~Cm{+?GK>%(t)T@*%sp{+;j1LxRo0b_HD(`D}#<5Fzt)l(>x?H{!mlSlo+waRMOOey{=egZiwoqK& z@_eWr|BFWo+m5xLBt^tiUw(#q-CQTKx0gOwU452C-F-IJS=&;;b$2K6c+olRx4riM zE@f-r-Nqr@?nAfpXTHpFu8Cc%RCr8!c#H z(ZcEc)BpXsSzOat8OmvC@d)2jJs~{6vGAOj@2u{#{0n;t-(QWtNjh*V-($Vmac^9A zj}@VOyqes-JU-W1dQN+GzuzG-W_$0NzS#I<+k9nYl0LVs>s@)2Tvh zSlz{SXG`mNhnU|0yzzK{_xyT&@tg0)eNpXv?mIv}$%j3b|IPiHf4BczT_4J6xVG)O z%k|=3a~#dg;hDQh*Tncdk$YQ9>nl5`lfnco^!0R7X1Y)<(&zO=@hm+U&UmJ<>j+ZYh=QLDLs|%l^Jui@6Ji_-Y21*#03=wJ5$*14UC2&&O=iF=z$P2{!QlBiZ z7PC^`?G8qX*G2K7-BcfAxCTnl!`y=BJs7ENFYt|hP?2{YFm8QX9ZcXoEMhsS#3NkG zC32ipWFSA~s7EWh@G4`N#u8SuiSPN9<6I_zxTfM`%X_Fr2R6{0v~1-*k`bRh&NrQS zgg$@gPUWw;w#5CkIoo(GzU%+;LhZya!;DE2yMLpAxw^8E5etjEx3gtrMC&Qq*2m2& zKCbUqW_v}O&(fBL@6DHtjEor7+HqYkC9J59eX2cGp0gZx59(8{i?4`pZfW$SI#5~r zS^4_CtI66btMTNW)&0O8gn!NJ*W}xHu5c@lhiE{3hP77*wSiS>$%B-kF!edx!#x0%I zr{&k?AsF|qv0+_f?X3EQY|5x@ni0i5ve~vIt!+DmZxY*<3Emgl(kjDaMSNzvS6tWs zqP_aca-Z+zr{`UT$Ak-nGbl+})>-$Sa3G5xx4!GW{nWr>*a+4@$9B*%Q~n;{A;<&Q*2Ta#zdcXykcP&$sBCe_|KEu)_P7@iFUI z$)~KQq&B)D<=K!_o5?4vBIc3ILbwm+nDEjp>CQ;~K%I%|DLJF{^K_xOvGZDE;dbOK zu0GC?mNex~AEDlcJ}!@b_vt*^_>hG&rGBqu%E&)|Ct}Y#e*a*$c1{{DEv7vg zs?TiXd0+R4Z*xvv{(WDUMOuV1+S2jM(}=F5zpltNfa8LC4&9;YgUc#UM@5z0nl`)kB7<#dfXu=w(!I0L!3!?nb2$7Ve{ zIlyWDAl@GL15l0vd$sd)`^7cXK79oB`RG^Y=Q`(2QXN&l#Vh<4M^+|SP8D(e`sqqf z`*XdNf;X7Tcb_;HW#re|#!cp*#~Guv5XS-ZvG4H=SfMZMVSZ|)Ik}9+C-xiRT=M>` z@1i2rd6Foep*t@zrhq!kgu>U;Bix&GpU+eaGsNI@G;w2@&!+A&^DvX_|9$sgn8V)1 zbYtI{%wZl2SN+UAC~%dNf5u0E*ScipGWD`EK|Y4wQb_uKFe9w8p#yZUM4 z`+Opfd@8D}3cpUMt@PT3yPUJI(9_DdKKo-U)5lg9Y(L0$ultO9rsu2gmOgg&xcp9L z`|Z|kNbQ=?Ii&ME{BFwI&T&*9-&IxS=6BI{NW+E;^i^Ir?2dSmjWzxGzx24ral^G! zQ}KL}*BQxX&V^9@dqO=K$#ivP8Lh4FL_50jL_TA5TG5d{BvuxaGVp-0HlvAf9TK0j zIsHy2rE~bah_Zw-T56uUdsSPYOgw47c{ykKQ(<<}l9=k0r3me8KUZco+ovz&2p!nL zHm0zMSv*Ar_56gkDyce9b(^+C9U0^K24PzLZOF&)J5o)z$}8G4hG=H9j58$j-oiZ0 zv)<*c86ey}*ddp#cE zJ9`P$!BpgLKn9`4Nf^P zhH582_5KmU^}^C#dzAEEt4R~G6Us;ETi)2JO((H^KP}A3n`Gb@qL@KhcJL6DX~;>wqjYA*TLItiS?+UIKuQje8onKaI(_dPrcaEz)uS$KT@)QiQI8w(Q&^YU#P{UpEA)44>*ue5@2KVcjDX+d*( z(@h!v*|B!hQ9L@)o(??AGqj{L&FDrKniE9}+R&YL46(nrSpU89!YV#yvUNWRLp(yg zecG`fC!TYSpxAED*`}W56@DhnC~V15%W;Lt=>3biRnJcfFLTtoG<%dU9-<=Gyq=a^ zyvKA#(T09>CV9m5c)TwTL+Q)wY+@%%ILuluaFPPz`3NP*MJCd4Cy!7*!kkz(`^ifY z9-iRi#?iz1uGZI*zlE*pcwMY^$nnbpL zL0Fq-xZOu6AK^N#LNomYjcCK~v~R9Fvxr?B;Ik;_#ntD;ae~+0(~cTD?Z{wEB%FIm zTW)y~tN5NAssA~4$wEAQAL^g}=Vw8AQ-Uhgq#;qX3(I?yU!vs6Bc7KfF5!QKCOT|v zqW)fDCwIxyYnxpEFE+N>tZfyB{~IdH{;V&*D+gQI#ohMtAa!ZN<3v)Cr)bYg+Z7Sk zajeGVvs}fxq}=CFiA^5=^DxW)zkP#KD?_ul99 z|Kuwuy_sED-C;-F|GCb;+xvf(wuOXKh5Jcsxxa8Q!};rV`qiE4jCz}rBbE~h_X`UN z&kOGphHLq6>?2&ye=f|YY?PoD)yPK7b^bk)BHV`)JF_~kf0)!#KVTkos^w{xQ&>)B z`!w`)o`aY%(eWrkFLghix|OeBtcZuGN<+SvkIVMhUV1F=ZSKJ}a(+tjD0OJb)4cWD z_3=meZJe}Av;q8^-?i!J950Jkn*G`=-r#NHzo?6j!2@yqMhoX$7e^%UKP*Y?y67=# znD4Dc%x~jllpf)G;p6S|1DZsMXJZ)fIZV=u>kp}gNutnPlF zDCt~LIyQ1|l<@n;es|LNbkkh@###NF`24I*Ig#J}M!e{~OYLVJQ#u>W%3GV=s_r-$2dSt zISutTv>!9AyWe~2aO1v;Syzg%&&R01f7^FUuQw+g<3(W)`tuH*_<+`oVhCYgEW{&> z*Gqa{mdezi0fpsdY0@e4jfs8DXL1aqo%eL(yfnJTdx_j%%sH+R&u1e^c`%jFpLjc~ z&mwp|kMF}V`99Yy-hVG^Jx?zlp`V-QxU2Y%layCJSO4r@0uFGIhn3e4#Vfb*&Z9K7 zO&#l637-@`q5jq2zs*~&wV#-I$|&z^Lzu73^q+i*$*=v&*)d)+CV8DXe83j^@-Ace z$Tn+O$TI$#7u|j`o@63@Im&E4V>HWoos0Y~9w*5n9%1g|w0Lfn4(Egw)az~o<>3Hx zgsEnE4X zZG6Lbw325}(UKOlrEE5Jk7jGN%^#_wM1Cx9xQh^v@O`;DbM))l;urW}p8kKad7*W# zXFoUB^@aQ*{3duZWora8Sjt+qu#>}_Beu5mK8jP0Cuqo1bmnHiD}K*^@};Z(sSh0) z#A^&^n)mG@)=qU;c%1JzNCN9-3fHreBhKeXWiG9_RAis!#P(5|otDpYf~yqwdVcPu zEg?O^IH>b$>KLBs8YiCG{o$0dk37aSclyX^2Vp+wae&fs6cJT$*=MYq`y3=>zIvc#j~W>mWAKWnXX@rxN1(3WTYhviM6At>1ix;Y^HPX zul~<4*Vf5+q2K?Gc}R~?UwYW@0qMF(`hLVu>Ud`9_lxj1l3I?(F3Z=rz;m8A<#F;- zlKQkGp?##1Z<*{j2U*ENW(Iq03~jlebcFH|<_fF4;SjN?=z8yB0NkbYVahj7_Pspr~hlp+aw9s{W)EG<~G)n z4l(~5A*FbPy3#;7s!3%=M!096XiAD>9d_tP@(Gs+?-jOZz2&PUw7ijTIPdxGJd*z> z9wnV$O)8RwmuXBAo>m81l8wA<;zRl|hf%!A^Gu*DkI|SkJV+60b4Xl&AxzrGBWCOo zlOA1c6ZZ2hYq-_@JuB^R+~@72M;NPza$4W9o7094JjaW?&M?L@jRkzfdbY5g9@^87 z;%jR-?V9NbJJ`fRX7CYf*~d0AM9ItE^0b)tn>6AP`uxSx|AO>7%|*^|j#HfF66g8Q zc3ZSvoB52jtmgCZTz~&LOKrE9C1HDR<)In<^E2D+KC4}){Fbfh+N*~A8DoslLwcAu z88TFu(C>2V@1m0XF6T(cF6{dm>TcZ;(o)>2{9xX~`wJz}hQ_}B+1s#CcfD_)@yg!n}nDUBX--%=Oj1Lrea9Io8!zR^?a)|yzi zayoakO-PH7ClBj09wOGy`Y-Xgz~5ABnhXAE&vnm-QrFvvQm3`0Ho3_lifD&wjysr|r=`@iQ6s zN-yd#Bh*R0WH+yQy%UWY&kwd)&wPq_y$o@vO)9bwVY|Ee(D9dSRR`Ei26>W?v^ELX zlQ-U*vQXRnDcdw5FG<&~t6mdU){&AR25M+jre>Ax*w zi@ovOAhHz5o4VL!cC-> zM``SP3y*pKFm2s?EM%{I-)h}{u4;439(L~h-TyE-qdYDwXw@Hi8hZl!#Lk@Q)!#de6NmZ^Iq9wyvN(T&z(F%zJz$RalSoy znSl&t43~(r$M}P8yvRU?^B%KU!l!KE7tWGUx@YB4o}dA3>CQl+nMs{j?Q@y36>+_s zj#9STJ7#9(W{Bmo!kEvn&f0#Vb?f+^L&SWpb<#28d3`F+TW(D)h7dmU+H3t07I?mr zs+QYWAM-g_#D5+sgyH*((WS**o=-K$GRbxM8^R^((GH$3<648Z^5RwHJesrJ)zOeQ zJn#A2{E^P}puCIaSZRn-R^C-6X7Mq7WBINF9gI<4VyQlNGkYWdr@s8#vR=}07V|mZ zvV;8`=OSsPSq@52pEh*nW!_*oH`bSM9oIR9-V*A=vYH`Ud+S`=f8coXD%Et?lk)JXO6sJs z;MX}LBVJi-Jn&O2N4x%rsVlcr&Oep*@g1)M;kZj##YVp2C-!lavs@!lh!+{iO-xlln;FmLbeAn}`APMqEOU(V;+)E71{ugU z&iK>1o%~K_>vD6Thzj2k^`pXZLr+&)b zJ>n7W33|$S=pFgnNWSf}J~E5nx#oL1X}90vR{ziResP?yjVtRMYMeK}V!yfUx05i3 zu-PSjmH7U|FFc?0`t@Y!TWWl!ey-O?Z8TnHK7~DBY=4WRjFU4;lhgLYqnUhGM{dgn zsb%>|&ZgI14fk9d`N$FVTs-m|b?u>!k5DFxDL3UA`Vk`$3put zL;JCkjlAQ0>PfGndv1M9XE%5Bh-pu6r!6evJRhM7q5Yo5JU(O<8`#1R?B*cHc{9{O z))Uj7rf?P^JwEdKS~jtbTfGPFSAE$5V(x{z-9$<4jo~x78}EOME3V1O$5DCO%RI|$ zbz^pU*RkBneR2OLPRVT?#)SC`D_`22XW2N=_;7%>o=47@kIZ4-I;XaXQ@oT*-6mdc z_q}kI4tf5~QUA|vLp;JYc3bD&il^vGQ(7}g9gpTs{^@?J|8wuRz9y4RLwej!8LKM4 zYSM@nwC8yS(Dj&e(YA+jxL$tlWYEd$>E9gp#%(iO5q{J2o0dNJZsmVNe5KE4rst_Wf5-A?$K~A#W3z)k8xiIg77=#i zUdyS;N;}Wf3Y!QU(U1l_Neb(KcRuHduzXT@gano!%yRu6sZmwT84OilwMRd{p#7if z{Js7hk@nGCxK~{23cnX7w(b?n=Pf@YJSzM;tFe$i@c>i3K1zMBVvLke+mwZ6<|6J< zR`ckyvkLPn$B$ZGE1XT}Z^QrS?$XcP$|Un&C45Hxm~o(Rv9S42?X6=~q^A96Asxkd zh;nrET5lpO$0z3hVDA>cm#iPaS<8RW&T?mdvwVuo3Cy>U%G*P}oRLPCNNStd#3d1j ztm|dphtDdH^6DXZ)kw}$2iUv{r**=_05yn`hYPhSL9{hs;&`NxHjYAd9F9L z4{tG!g^r)?kg`NcDv*gX6l0fj{FY7J=Xo;m2*3Sy#@O)PVy>N|joal<&hp_c>dM!yk*W8Cu_3LD$qpNzbu%6rPF~j=mH2?g zY-Zav*ZFLboGc(V zz0b3Uwj7~(jXpcG<5+CQ2(ej|2zDr>_r{xirPfFJ-Jf!R$zv?{o zokg@)r=>+bW9IW6o#-X40|^QO=7FcxySMz@%VO+|3M`GCNqhtOyPYdFplwz<*a?Y($Z&MMA^?2dPtWt(j{Ab z-yIPa;{l2jc}ahM(RC9K=&OoSocPi%E_V@08u1AKFKd_m?d2D?#5Nb^IKR_Sp8VlD zWSDepApM?D&c-^&i^BS@;i7GmQ2Tksa!so7I8~{_6LiYr{FCU{g!d0L2m6M;l!_Cz zL!4Q3y_|-4oOk@woaG#6IK=^eW*@(@liloK4?poEclrqJdicLxhX<*zZ%d&KH1G!P{wQZ zNBS%;mU#toNZ%(Hnjg|9ePzGJmH9v0u`%lCQ^pJ4(}-jG-W4;XqwB<7&zjGd$M@@} za%yYG|Edfzg9WT)6NANX2(78iQTcX?7S8J)ZOC)^wF~NJTj9+f$*c_X4$X7wBj~|P z3}76Sm_g@e`Y_>ek}0dTsg_<{q7irc2=NHtH7U18U!l%E%s+h>GK=%PMq+JHr&HQ{ z!uL?CN$1*BlGda2+lMHnE{&j8gtVp=ow)J)l$pdM{O(ErHu`4y-$q+iiGJFp9^~vM zy&dx@UZqR^SP`EWHizXH7pU$S(^+o$W17?uH~R1zZ5d6fD0Q2Q&5g%WxQ=k#Ux;}m zw-DO(M4zhPyu{Ml=IqH*SKrE_)y7BGKSW>7f2RI#kndUCJ1tGpGc26Y9X!%{Z%B{v zMg4B0@>r9uR41BRj!|EEE~I_Trv3iFu`?J0tf_A2)JUD#q@S)6w@ z>!M!JuD@fy%Kt`+>)$SpG4`?T!}eX~dB-A!c!Ylc1M|j{QoHxgYmFT@o8`Q`d7rww zSpUjI-c(P^&GX(>%IJ7?eVjVuIIS$F(Vrc;X57?E*-t61+P!COKamH;r;PA`V?F|iGD-?G>0$=@TJanV>Yg^;EX2ML4e;;{|YNuFs#x~y9 zDN_IEJ!8bb%q(%UK3X1y;uXe0eU5vN`c{N0)FDb)S!!hUloc<=Cby+>n!4>V+ zMrqepI`vHEd!v_JTT#Png$~NMM9R|$<5PKbF`Lgk=4<1Xn`X)N+1|U}dlSl+P(H#u z|E>Pttxx606A2uXblRf{@??r}+^a>jd&>9=%IrYKGn3VHYUp*|Wif{u`TyU>Lw(ud zeftRU2=@j3-T!y`{&(%Avb2y-^jVwvo{ksHxzLwQ&i^}7Dnl7rC2c-}CNFiM_up*6nZ>Va2DaGRz`LIYEaGa~0Dd+!x^ie11IM&!>jPZcezRKz|0gkFmKk9?_@+(JKs-3vE zmH$tez*vf#Ju+Gu#)a+G@h+kKYb)maET^mbJ6D)VdOT-&Yb<3@8l2TD+sZz)C!@d)!Um9?c;$Y7t{86L`H=pXXujU-Dc;5C4{cwKsCcLGu z8*X3SIIqlI5+>9Zj9D%{#ojK;h5pmI>?`u^TPh%k^<=?Wb+CNS> z$9=}GC#kC59kcV!;#cX6>rp-x$2P)_#2&A&mYy@lX-mi;9^rGsn|<$pk9;pG&j&Ix zzP^i5`nNGu)IZb~hq~m=1j`Owi7KYylSS&yO?so#ls*5*1LOh0LmFHQ^ogCJt zs&84zOJi1e&jsrnSYD7;Jtmhn;12~nd|$J>wsf}qdR$&NVZZ!}mM63MZ{Ov-F&^|C!&XRe~HYolz)1SHZCq~yxduN7stBfwY~@!v{z4B zpUQFuzAb64bE0%NW=uCw`l@%&rgdGw!8ER$5?-Ho2%qnN=lGlCeYd&#a!%+c$2-65 z&&eA`+TTL2=hF_p^0M)`@cBi?P&}nx4t!I4%-bARH)q=R#WvToa2 zs5QpI-c#s7|KBz2zhY#>ACIb=>VKW@<@Y4@ww-!*-kj9^(yf*@zM$(y=~Aw``LfyC zwkPeZh2Qvej$?}&^XE1g_fCAS)M+*P@F_g2a@;b~5_pI#w##bN8)9~AWal3hb5&I9<^)K5l z{O)c0dzAA>A|uw?HngXG)#p%uAF^HeErAT4hjwLaKG#y+&6#Dp-u{p8YAp1l^lTyR zTyNazBW4ewY;=`B;rF%v|N2mz|C}Q{tgfEn1SdJgh|}&XE>JH} z)2Go-dp6kd&k@)92x1XQ9Aa}#f7D9@%Hn5iUtmDBf*T+6#ELcVP zEtEo;CB1g*@Ok4m=k}>^x^pU}pZ&>r^DEA1%MWPF&gV6+8v0t>XXL1Dvk04v)TY00 zY^5JPO+57~HxE*t$EZtF+R%y2PAObF{ZztuU!OTaU(ioqx>Wq%Bbzp9g?@56Q%Ub! zU$@7I8}FjJS9rK63BC|EET>bI zzlprh6ecr?Xr|Mzps`i~|1(3_f?byPu#aq>r;~RhY&VRz7{X8vc>Om9S$>^?Okf;i z8Bcm+iV%;`Mh#IGmNLuwSoV82Dak+wHrv-%G|1u_inF#$Zu_=L#MAm&wn@sqyOk}D zX_N2GWuA;ORHiObJVOr#Fp_BQ6_3zvHB|PFMoaTyu6_Hfhpu_26_Qrl%~xgg*>E>) zto#|3*Y(H=@68q&@%sb%w9m||&)24wQAV`Cy;{pBCwH{7vC%j7{gN_}&$;J~{PTB! zm))z~&SqXCqx(5?sUJBbBOdd-Y=+2)q2>r)sbIUx&aGW!L_Oycl}UN{P+z#p=M@|D zwHMsSsjt|WKQdzfIO%8~bEHRSX*o|iq$(O2vA}tCFRu;Kx4vJ=3EtvEwEvuUiBdm~ zyG|RSoJSiUCs!x-c>YCF<9T&svb-Oh*gT@Jy!ugAzGPQFkE^FUtZOYEcUiy4`&Zen zglmq42c?nvHbA|~lE?U`kUVvq-P()$t*@P2eR8a|>RJZz2>ob}ebSqUU-fxndF3gq z=futJcfqKt&1+(u99wz%N;`6xIrd*eT;g8vIim6BH~Q)FIpl$LsjQom)!Y{!I^HVQ zQ%K#;XYM1txPF*JedH%(`=9;n54DWPw@QRILETK87wR>d`uWAe97zM>80)4W4k!!e+tQi&n$0dBYnJnHSCx0 zzru6NzxRbxnNRqC;UQnf_I1yh^G~2m##y0Hk^YsJnXe_D{7=dP$6QV-d9+3xx>!DG zyCw1>YO-q(%2AYI;uNiXy=%K>wp&wGf5U}TAqpZ4oB*OKR@cF_K5n1fxK3eh&UCBu~o}dsJXvW4G z`eF8xQanN*H?opBQE_g>Q#9vkI?|0^yvVDZ)Xwx&E{BVIl(@wc@7>ZgjWifD>Bcj? zwdbLnhH>5sY4{VraE5l$vmbBr9v580MW}O=sT^reM!GDeg!)&SM;V|#3}z&~a+$MK zPNwm-x;fSBVO;x%I(nCIp7rgtPaSDP8oLkU*tZ?)sr{}8zEI|))Wx?Qc8s{a=~~$H z4ex0~jVreDgtlR({f>V}n-yC*BvuFc_lh#141Pc@ZT*w1d_1FldyXY!xT*{bd(p}AH^O<^)&VVDn+l_u$TVg! zols6gzBJyfZMNUGJlRjkbG$~%vBn?jV-qs#M{_e+|5IbWGE5VBU5w}AsWaTpBege$ z`LGnHl@(GlTYdOCk+w`Y+BrnDQs*rn;&JW85n*rPP_JF0yXCH7y*ZZ7!Va|Olyf@C z3DPK6iMg8uB;*)JI7CMA2<>SR=hIu>7m@cJwKG?wcY9%9>q=Vpn(!gvr`pGRr1OiO z7xVmOVF}?Mj{Bzkdy8&gncLNt4YU0J^mZrUK2?3=|Br*rBJ)({dCIH^nWH2UnWs{S zBAE)2Aw(!+MH*Dfn7I@pks%e529h~43;Dkmo!@`_xp8vkC_qFzSPiyV9KGRxz z?fo5$7qQEEFFUrDW5-JGkw#y#{!@;R*n+dJbq+<9si$)vSB_7e|CF>VBFRB_>GSq2 zvwZ`;LWJ$VDR)F}F{$5wV-xn-c1YS=nV!RM)(_cs24h@f0{UYXzZ2vm^dCR^m>$#f zNP2%d4?ir{dj6moiM?3YLVQktX=lWe9Iho6s7W_h@tF^%7YFmZ57}P6IGbSmxe2a4 z(KsItA`@Q51NQykoPmzb$B&dk--YZGJ8+9~g#K$Id`4x|z{{)bTgL`tob`Bj z8^_DS=amy5IdLHtBSCw4;daD!333|x*X4ibM^P7z&}x;%`eOT?wh??GlnV%*3Q89qSpHIl|ovRw3lZQ28uVQR&OE&x&{>#4EW$9m&$cQs#*rImy zx~v%QQF3WqY|t0t&jX%mY@n}kTrxO6JmVOARP2R8=*d3rMwqABOZpq4=4)=WUbe0J z*Ct`!W?uHJ3d$jB4rgKO4RAl2;ZEFz(g<@q3!oUH&+!blBb4JF+iN1s18ssvD1mCY z)^!@PD_<#B3FRtdy(CKE4pc^Y+=)uK3sq4C6>xy>i(ZcG$`QuOeq*nW;ye;-$1=z0 zFy>$_wkc0R=k~=rY}rS+S-YK0tS_0wvmYEMJ1^;5j>mMwE9KoJBqhJoT6u21Q9Ev; zd(zp`L-H!GUGGF{(}}Bs``?6i;m4iT$W7#l%v2c;y2}QbGv7cY|k9jKy5r= zUpc<*6;wer^j}N1$=Y9-%*Nf}Lf>U)!f>>^_GvBzXsJ!npcPw(e_Jxx8OE?*{gwY` z4_1L{be*dq^>{Au}^1F=*N)t$vOV5oLZcI=wABiXN({Rs6upTX+BeR&^)wZd8 zL=63JD&+{z@~6+&9ymNt99KhZUej0{is5cNjCJm9lz8P(Zn0G!F+x7&%`b1nbqVqj z`V2qy*LOnV0iK&8H@4HAiMTAGK1Sz|S3F}w`1^hL z+S)T?I=3+qyPQ^Rl~nwbjBiP9tb(4dL$jgcd7QRAp6zj6h~TAnOTYYujNuO?_*I)= z_dd@Lk!Zho0A*1dKO?_*r8ovD`zS1CPd6gAOQ?@vKh7OB_JQO06DM#C`*09@u^+$T zYR}?hn}5`Kw^|7?@)u|1eH(wpR#ZVzPP;QjPN4U|&WiJ0Gf@i?{$Y_M|?&-!g zK1*XB%3!fbJ$;D9o-r=wgWT`b)R7Tixv!a}A|uAK*PlJ5aO(2VCc4AkPFbhCx!Aev zkrD6zA(q-~tigF_Zi|d4-c5b|glFjnf1H61R;$Dp?4TE8^hMa6uC7&4{kAF=8Buo# zKe}39O#T@oA|n=56T^-0Y+aga0J~L$9cQx!TQA(o^SU3&>nr?wB7M&N|4Cz7C&6|E z8}<=9y#N{Xhi*edde96LY@3R^wc$Z+`D>(p1G2Cu-%6JsG$w*-e!rnU-$hI3J&L7l zbdx_lGDUXV^W(X>Y!h8yU)25MI1*^n&?Z4fi>K9(6zdP#V0=Zp%&5htr!?*)kK6RU z@>#!^Znm4~{K@(;WON)p`$|7}6x%o2cqhtZy5A$yc)lUc`XSkuc55Zh>vQee3H_(g z&%bicN}2e^uG`3;ufE#+l^WVF%wc)eG4UL8wYexp3GEX43k^S^Kk}}tOt-s! z!;P26RLYUT_xFm|X47YF|E;!fA`a|($T){_*jC5Qag=U5rr&%_zu*h;fV%5`!L#4n z#G7}pMbb{i`6+euOM=LV73w}BQDnq=?LQ+)WJFij`|?j?=*NwTk@dgn^U#cu5yR>J zqQa38k4RHxij4Tny%+av;DCH8%jZ?c?^|>EIm?I=kr8(&cV%P#XXx=;bCgM%RXUl^ zJVfXBy%&6hJWENpu)#T%w~RCcUCMvCk00h#e&@R1pdVd5N|s*EsQ*qjd*c~AiAlB% zlm4mB_M!Va?diVqL^$SlztIbK*thf#GUM39C+L@Be!xzYpwr=h|7Ii9KWmK5eNU%Los5HI z)rQr_h(*SVRisU%U0kz)bh3Tb)Wx-ywEvXjlxw$g{E41?9o;(7&p7mpt~r~HR`2;y z2&Hfb-jjDxX&U)gD&iae+GD)>eKDojR(hjLC`Xuk@U;88h@=yY`=HZNG4VNZ8BXGB zvEpg_OQQ<1)Yk7osfUaqV5estzhGV_dhGlgT{1Y~(s!&*lYukFGw5GrKDHCzxW_bk z_&06#E=E;$uNZ@8(I5FD^zA-yA4uV*;xR_av_(?sDFz{ZxX~Ca;jr*rFcp8CxuA0N zCg<8^g8qFWZQpkxol%Bb@gpOCE<~3fi;Vc`kbcB(`cLvYPv^S2nV^q{>A|AAA|rkv z$6X7XE47hMe&o6@)8*gUrRsG1b#ZeyKA@`cv&Z?iwQMzA_^bz?zR7vR_3bzKJyE_D z_?0EvpoRPf#Xh!*K{Z@DB(zC*zVJC;wGwTEZfl#J)<+^S9Z7|0smUe2Z{vAFTkkij ztDkF{>)FiM(yd|wJdPgdgy_!>Vp5jd928_Dsd_7eMe2JsqQC2xg}o`wmTqL%qu%+O zNNy%0K`G@#R^-Qu=4>;^_|eN^0!4LHdr_`qgFG8E9ZC2%L=x)AG2^M97TD*k?3?E8^^<05{W?_WVS zze4=O#=!BrdOAcO|C*@oCMh3^(dRB-iOp==&9BFH3H1@?C*8<9LyeTNHy-C7yQ2@n z|K5$j5yVg8*&)_qD|+y|?bztM_|@4+%ST=L-ccw=7%zQ?EWS+VCSn@i!x#7(oybQs z`F6mQ=#LQ?hbeegoejnqOvX}d#v!C)i*7|dG(RNFOx=#ctN0Xiuo+wNKGvZD-oh@l!ajV-=Oz4$ z3?m655Q&()KN;jS_}U~1jZg50d&M3PD$4`NB6fHdgV7%YQN#)N&ozdK#&j{Uy57nk zJZL>#E^_VszVx|}<5oUO-p8<)bSpW(7k?)G;upV_&vGXva<=kVPY~QvMA6te>+j zp7mbV(@0~xaEF)X0}ftoY!pM*8RPy&pH_dU%x~&+5Bq>~+BpF^uf_K_L`rgfh)hh% zpngu-Mi1h$aF>_l^!z`vmYu#&;zJU$$>*$RLpo$adSpfhWIWEj(z3m@`e+xpCd9N zt?Tq%X4`x*&d2VXj`lyvA577wFR1@!`zA5h^tt@mr|QJ^#_1v>QYY4SnPmEZv;!wZ>YuVK4eB+iUm~KOvUmTZEj_{mgA9*@}$+L|OYm-8K zjVGW3df`Rv?Wa$weSgDV96{-mV#p`sSO}+QNAN9W7}X!??n`Wbe|G7T)u>eL!px-ZL*!fIZ-Y`q>`dIlt5Thva-6eTn}5d22TR zZSol2Lm%k;tjZB$!g_nP$r1B1P>tQJkWX3UTb_=sKB|7)dq-tV?YiykPa~~s|Hx;Z zr;Jnhr*GJzY2vx~3q2pOZ>HlG*!C?wnf9%*b=wb?F{iM><#<%q|8G$Zmu%@HZ0P_z zgJkFRtJ&{k%JyX&K89Ugw9j)xBs;F$NQdM|ft0uzsSw*GvlByqGNt=Zs_Yq22IY_z zHz6n_k=2(7o4FZ%y!~xat<$<7ua?Y+B=a#>@(_e-reTCtkah zx7rnAp!V`P#9qGW{!e1D^&5$4Iuwy-DRB#;e;=Z?-%Zg1bx{NL@BqTMBchh{|CFPj za`Z(X3_*1NG}iA|lxwtf3WC3S6(eyqzctbJDBl&8&-KzEr$Jx#h@nQN73Y$_X7sik zo1Bbnz9Bx|KVE+UZ7+(YK=W(14R?hGG^ks*9Dp;Ru{bN4o@Hk_` zyTqis_5Z~xQQ!UhO}V0f`!Ba^V%HDRusz`N}Kb*zb%E5B6hm3FFAAjJ*}qwroHb6llqwtJmjcREtfT zO9$GiiwkeD6?9{X0!4rKf3b6;zyE(u8%KQu;CiJ><$%zKx?cZhpYr^noTrh2E&LMu zaRRq1UrlsIA4KmfjdOf$ZCD>s{iZvuH$*c;^`U|t3-7ihbk9j_zmu#^%wc}6`);T5 z(;=08HEd60`z9Bk1%e!gTGkD&ZkrV8Q8QQ*3a9vnS75V-$`&2Zc{H$NwZ2bAw6ok znd-`&8p|9%kFL$eJM^fMV|Qz><+j&j-^RG^z0$Ofou!P+u)@Ajj_@wndj6)?a&tC1 zm{0nZe#<(~Gx&}@s5`}bQz+fqIE%QWruEwR!a1wh{y!WO*CmuAJV#%4+VjYG`fl3u zarITj{cL=cJfhZE{TJ;r&U%T2=4q&dWcL5yoFZ)cK5g<6dtQQH%kBPi;C42BtNUDs zQr5HCcc1N#ICnc+^`h&o(%-tx{=D`Dy$$aV9JhbI-+88qlTjPt-N(|^$(QZX-+%my z9NlN^paGgKO8 zrySwi9Dljy-_6-~eUs?l=%_{C!*@CwNTa^hF@Y>c|6WH2?eq?P+)r2EZ(+>DeSJ=5 z65g&KS@eH?&*NKV`Hsz@EKX$Fp@X;jW1=3$pj;*YW zq!Y!m$Y@_a{KC$?HBWP2Rl>VI=&L^t>PS?ymPn3wmWT$diO3D8O(;f$d2$XUIAR| zeZ1w)&+Yv3*`sp)?=;x-5EG7ajn~Og9=_)SpAk;Hu@Y}|Gc`J@`tvveJxp8Z2QBx*hspR%k_tm>po;Rm;AC( zl#I#|p4XngAa-!QhURacdzVbCcCU_KUnVl5Cx7xwa_ulij5b#}?O$}1&v5?H=h!g5 z=S)i9NYj4ZYq*B|_T6e;r}C8gn!FmTpYoz{wFKr02ieH?%-x zL~VX`-*IEnepg%OeRT5oqw;=zi}=#>+E3h5&)w|xYvvZ*Ee?v$M<Ot^`@CeS}-r$$?UkRBvIqtCB?*GX4bH+F{h=z;R6ijoNLLB@7T z=fv<0i|qVq=ETO~rM)nhd|vr2&_V3))>e+$r!3NIeHXO9<3`~|mQWv|-|{N?d>z}` zu-R?J3fALes(N2QKR!h^{wfbLXE!z(DYn5BZTUJLvF!=e9Lh)1ha-5DjQ7MO*I0&C zm`0zLV-2LMH)Y-t!5du*=zz$tY7SS-DitbR_0f90caLOm2`3+kdi z9m%PVGQgSsQ?yF)dL zh{qBA`$NUquX1?6_J=W<{)O)mMPHb&OV21rC3Szvj8P*6T`7tjVxWTBxir3L&aPtz zijtqK+VOqo%*7&9EhvVE4p=u<7-Jf zAT~?TmmnYO#6Mfn3C~~wR^UBUKrMXPP8l9C*9pIg+YV#+Q|uSkU=L!ugmwwzKwr?; zg6jLY{7&I4l8S!{O7r17!hf(N#6|0o(jn@4jPovFl5xEvsE#i7Eyi*zz!w;*orkhd z*&_I5WJD&UM}|x3<^JTu+HI0{t1w&qIaeQ^ADxedh_B8+kbZ=TxJOL+3I?jb#Pl^Y z3ZN9Kv(fisDORJle;X8bT&DeqsSdB06Wk?;n605KR|0W+H77Op{RTMA1%Z5+Ga)X%fJ8u`c zIDoDA87uG&zQx8W`q$Wply}Ee3a))zupc2N%;MT7;pd)fD<2tcms;CMFOq?d(%3A)?}z^6tjWg1)n!TyP@XHl`7~d@ zq9X=iIvF`$LSHF4KP_&#)_0(8q&(^WDaY=<{F!@v3-685y}=ebQke`7ljh?W(ps-i zemW{^Gim#U{GaxGg#ON^Uzu!g!rLVX1L(bKs-Fj$*6)!x1Mq*=+xBioc@ zrnrRt%E#E;J3xN{wNVEr$V?`_G(9TVKU5rj_yfnY`E}H7OqXES!}GAp@@aro8~w%_ z97ludY$(3%$e+=rn>Lv=)9>X8Xb%Y%`jlU4-_-W)R z*Gcoedl`qY|5MvP!(j3qC8r1WO$yJG*H0b<4WjNTeFlVg&N9Jx~D8^zk7GwDqvW1*GjZxCM zBg(S;RFTQHKJID?_`+{nf) zw4RmU=&25#mVXNQylz_(+Y(z(h)BdoJa`c|q9(m>#+IBV`=@aNSH7#CfbEEfi}JaE z^T?tc69(v)u(>VJsHyi^$=&(A#`)Qp1g-Un$m`SUBW{? z)Q@u1A`4H6>9>%PTI6A}`<}~owpXri)Lngg@eaFDiS2z)npHg91}(I2a`JQwil88F z#+6Gd8^WBz*nYovvGT1%cn9ZOJWXEuA+L5Uj{CGxV?-!hQrx2KSy6y4{h&PC5WWGN zRyo4>M|{3*W2Eg^lvuoh9q5>n&rly3@P~Rj4Ie>_NP^#XuzxtF-b?M*zK6_fc-1>D z)^BtXGF*D+<^%WiZ|}^sCjV`5y?1ABH2iE9rV^RupQydn)osf!*U2x6YrAOqEl&t;Y_dblG-{UbAGcX&=@D;wn z57>nRxHX^tFY00uTa&G=Fs4dXB?#f8tZ0lE2+mEy4vhnPR_+A;lBY;5z7 zIxmxz;9ru+Gc~?s12^FqyStKptiuQH^I3KH0_Iu2S(*Xi{~U{Jzo`Fo{5hU}IlZrd zb=o$q>xK6d&);$R9mS|Tua>6%ryNb3n>4<@8b7*I+wDQ+WNar&%wiYV#>8T=pT(#Z zl_4)X`ZRx4&lq?vacmy;H!e$Pmrx&>`{-k%5puKH_n*_B<$D`TAHfs219ziVH}j(8 zn;GA-SzodDaa}@O800jY{z6_9Lld+?cNER(eIL}o16ZvcHewro#jSixCDg$?_y8Yb zqJ7hF2maQ^g~cgFQJc+ah+KSV3$en6mE^JJWxF2AF z@8kcU#UR^`V1xbRgMQ+7{D77C5JRwafxbJE;AZrxPQPq_wKzRM0&!)O-iCGw@y9fF zae!+d!u{I*d%w3^uc8c-`KKY)k0CoB)fzQz8z+6)w(}TfeF%nQAO>M5p2rA`#9+LL z7jQDC`&MtyId?zO|5J_u>TW0oV<4VKYcxYkG)D_Wi2t5<-eIJ5og_KEZ-RKZkVE`~ zbGV4V@dpm!ApY%JMZw>O__Tp`tRLEwp8m+j7h{t*NqdsTMdFYWeiuYxltyCuQ&(&; zO4%OgEK8s(U0b5f`_ri#U4owr{r!ksd_RtUpdaA+Hvv{OUQ6h{;Mhm)59^re&I>aJV^$sD{~iT01|BfmMlpwsH{Mwg&3p&WJOQwtNP@pH-%(|3r^x|ith5#MP3QOAdJ z1bf;?87jKp1@6C*K518d{$p%bu~XVjjFwvZi}XT#zE<8j9e4Z#5mS zF4>$I-h=+_ee?FkIa_f4Wpma)_DoT{^(7u9yHBED8~Ta^xQLm`{t@P5HeSa&ScK0o z1yivA?_&n$;w`+1=u3J(Lcd|?U&boz8|j{^iBCsKYe-kw_NsmRq%YW3!L}jNyQC+` z#ZiRs$@O60e{@Xr@5=Qer!ieJ{!@-`U1JG)Bw|ygr_kH=k4ewtFRaENSdTAp07ns% zZeDb0~ ztK%t#=>AZ-v0TEb!JhW!Gsfa=e2GmMD&Dw-F5iPlb<-Se&<^>v%@Y14o$~c9OTRE5 zD-fF{lp~CplikSxoN16 z5RaANBVTgQui{(h|A^adD~S&5=e7DFEgg4dUnDm5k-fpHpuP6!F0M=J zzFxBZb26~s_AO+0nEMRlqKD)k)3MQ*lq^d-n?_@?Jjw(Mn0!gMT2Bu|vrE>-ZhHkys4ScR|gJ^JZ)4?tr+;67

      &rXTeJQV!H&p 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 diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/files.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/files.pbxbtree deleted file mode 100644 index 01b2c8f4ced57b6be1e1b19198e8f219e9608b8d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3104 zcmd6pdvwor7{}kA#KxH6=hiZW7Uq`A*=YGqrb6Yma+&K~%C(a?WIJV%9qhOyoRTwJ zXDbnfUnJUTVu&NR=B_g#r=oTcie4XIzxK29`(>xU`kwPT&-e0tp3n0znEld(0V zHPxln+}pUfU}G&5hD#Oh*bS{p?n>yUK8O#@(UnE+&79l8`d^4FX=f@rk!~lh>PYLa zt%Zri`X}-IK+c1(AB!*jShJesq8^Oq`zpQ_Kri0k>$3h@yVuEg|2C{$d+AIp@-cFS zyz#hnysI=JPTJYcS&y`5rT3qaGM}RcdQn?Fn3H+!RSg<5t*r%{UmKg-ZT!ZU;dWvi z*+se>FZ~QQ)-li$3VFWPnVdlm*tPZMcM0DE>2JVa-!UDZCV#ve2lF5?QHqDWFUTW= zQY$VwdGL*GPM_lVh9pR1pC=!1>;-bwR~p$*x&k-gqyE$%wOcX|74FzgZa}>>l4?bg z+efJH#_WxD(mCY**6fAmQj4Z2m-6!3O&`P9SBZDLG++{YVX`!QDn_7S8hi6~DL2{K zf0@(S=c&@HH`y06rQI`FquJ~YSU;CqN_X;mkm2{zjhg4^+x;A|P@24e*cZ_o-jVh! zCZ|i77aA@lFW~jJG`g;3PJaklF1-s+WUxPx$t$EOne@XfeEvYHkzH)JG`ekboPP7l zO4jgWdhTlW4$OuFpGcM0O5@i^8T9|UMD52m$tzvkCe2LUIv~`(#);o z;w#6l-4}ssay)vzb!q$92)O>Gv|tOq!4XKo)>}|6*XeQAUu)N&?u;G9`d7a$9&;#< z+Svx*u>R0{JNpcp?UmZYN~nxoTMwm)Z3XjG%a^`|-8<>SyQsz84EA$*`)?p0hPN^Q z_~E%oKF^ZBbL-c z>9Iz!9gNaD(jf0#-gTS&E9*{7{^FZ<37@Xfe=pPDi=@3gU-^yR^*d+hRp|uZ>VR(^ z!mw}8Vz&N&J~QW&_h4eSb8f`edxn1y9G+Oo=tX2iHKSZ)L2aX2A=08IMlT~vp0(as z14(Z-Y@O`_o9F-QMYy;93$zA}Zc#HgIXC{YXP~*AGgld-hhTbHqgBWTK}Jsoo4eM_ zYd4T?Ps9>Q4W!$=s!Eu$#vVkl&Rt&z9~j0Qqt9iyZ5jfx`3LtX!NeRVw# z->qL1Y2@N3!$rN>n#+f@rbd&ZunDc284Utoe{CPLbrnc=RtuwbEsZ*~GTIC=j~X>; feYXvNHEHu;>vm@%y(UT8G)VvY@9ocqzjuEFI7UYr diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/imports.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/imports.pbxbtree deleted file mode 100644 index 7628407fc32c1c7bccf7a9bb074b291480f43bf7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8892 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 diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/pbxindex.header b/games/Pong/build/Pong.build/Pong.pbxindex/pbxindex.header deleted file mode 100644 index e10591735a8a11dd542f7581cf5bf732ea5cdb3a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24 ccmb=(%Pdf0VPII9%gDgPz`(E*h#7$x071b6!vFvP diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/protocols.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/protocols.pbxbtree deleted file mode 100644 index fdae01f7dc8b456d30986b0c8c762fe0a194dc94..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1888 zcmbW1YiN#P7{~v&*{qGBHfA>L#Wsh{Qc6DIgUBHtC}J~Ba&B@OCOI3e6dT134q+kj zK|?XVFdOm7qHG@|MaXH6@w?vF<9+wM`QoYTy`T5F|JVQeUx)inko1d(Md>k87uE(W z(?0xpVp(@$cM7Eg3#8;j(lqS*G3jKDRDMcY%=gI)rF+Ga;rH^>%=_6@()_hjV4c)s zgVeZ1Dg!$OYzzCf%cXAME%p#r<2%cHw-#w^S7}j)bc8iF(J2Sc@&QgIabQL{<>Od` ze=jEuLdyZfe?B9{gI`UIS@4;bM!xS~Db=H;04+)A=($m}TFRuGwg`1tEa$Q-go&9H2By&Sno}j&9BwhIIJ)K`&gdF z@2exI1#!{lc=v&e78<<5069d_0NSENIU+?8#*h;9z>r(MC-A7d2uV= zQFHKv;j=!Bjd6N}Mb3fcYdlR~nW-O~#W<(I@xvZ0^lM({a zdaR!Qy0zi=1YZAR^I&sa!j|0w`Si|zr&%B70QBxQKgYlR8@J`^<+Qe+)0Q-+ih)iY z=0G;~-v*Z4nLBF~7`DfXXaq6(?j;H&cTb_C(5)~U#(s#Sx)P-ohH+d z%#kj5r>BnYTt}|>pmtB=NqB3(&jIJnN@NH^2l0&sPKm^*r~h-odi}3w1_FF5#(w0v i;C*Sev6=Ai<&JThz0hfYVYpwOe$)BWr!`WC_x>9L;zv{f diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/refs.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/refs.pbxbtree deleted file mode 100644 index 6333b6300fe9a1b9a16d17325cf32c45a1dca61a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123264 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%0Ac=Mui=Eyl?ehM{+__xL{-JZJ&70`t zCH~`SRsY{NbGd@!vyMCI&m4jIM9wH|-k^LD{f^qscOhqxg~&K)iEYYk#8ON%A6Jt{ zumBJ6K~dv~VfX~Iu>&j6A8WB0LzNA!zW!t$?b-0Leg3WP^R@RM+F!@HENJEa1IcCN zX=N|rnBzF=NP-f`g!uR?{RJL3pa+pxdFQ*D4wyHa*O-?$z1|vPBj3Eq-sV^Q=NA6s z8}As*(<$cSaRlAx{S7K#Atq(RyX*jtAP$@I@k3)Ru4o~yX!xAYy>gCydHP2B zt-cTDdye4tbVJ%xW^3|<^?jHaU_?agbT%ikJ;At9_>ibRHAIQv(Wf70CS8?e_O+Mr?|I?|l zeGI;8CqM94{43_61AZa@Q4*nW`G|dCV;TY1u349nFUV5}dCa>RG1psT|CxTz)xbLl zeK=1a?$U<^>Ce^u#+K|#Cki&==O@v#4u0bymOolktkKMVEeGKK{YXN zTbrNl=*|G&Jd9xHrJo~AdoieT!RCuw(~1W(iQzIBZ}}5fdS}5_bwr^d;>Fn3iS8So zpQ=lbw|lm&NSlLyzQfMY%^d~UxWSldkDKpUvDmi|-}5&=unnHC|GB@OCj4R#N|`6+ zP!^?827lJyc+PBMZ?viXAv&6o9{%3neE#*cfdBT;0lyG7u{aTPur`VJN8~ngE!jS= z{UUNb=16ZOcOtU$3&};uiR{RYtXNe_494D8XDdb;k6Y5!q!&ncXFF!H9SPdnXC@oV zUqsd*r;%;QEo39*nqZ)7KCEJoKzgkFc4QkYE9AEj!MsDl_`Tu_^uk*TY#;xDq9wLk_ke`W7H$Rp&}WLsR5hVC;Y|#ig^BjUl^a%d$@$+zjwVq!z;YO$Kve){Ov7N z5;L55>|3Cx?120^X&uWi%ol$VT)gjinBxbSD&068-BE6q^d{#IOHYxWD1V$XuP{dX zLkz=648mXx$3Tq2Xbi;&3_++Q;(F_WxYhuD)o~powLO~r)zY!Gr?=x?=!qWaiyF>% zC1;Qyke$&9?a>Bp@mKvT^s^px7-)@ezLhXfZnCpO%)7M{&CMz1*HrO2-|()v{2YbM z^+cbDzd!YkXo;9%x$l8K<73Uuxz?Qr)>vPd>*==8mpyK<&mJ(+S}$&5E9OREC#(lk zny;1c%DV4>F}>p3lQZ`Co{1%rHS~_y-2IAek7v$4vKF|Hd$@}WnAC{9=q?r^i)eFk pl)`-H=3y~{6}JXLT6J8l@7WNcx$mIWeUM$a>3Ofo3-DL|`(IR2cclOT diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/strings.pbxstrings/control b/games/Pong/build/Pong.build/Pong.pbxindex/strings.pbxstrings/control deleted file mode 100644 index 14baaf85a2f625fe6870f7f974cced37c88a774f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262164 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 diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/strings.pbxstrings/strings b/games/Pong/build/Pong.build/Pong.pbxindex/strings.pbxstrings/strings deleted file mode 100644 index 84c79db7026cfd8891e6f4ff7dd2bf1699461586..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 345248 zcmceaiM+1$aslk7);u+`oxT0*U@-2z?aUvp2IKkL_wPGzZ+drw z+1vBU_{M(TeC~&Dok{=mVE*RrC7cz7n4M1t*Tb)G z?)$fux5tAogVE%EFnxPI>dmhw)4SQ*;rZ=kJm?JX9so_IZ|*%NA?_Uiv_QA>X6w!D z>hs&q(`-JtdwV*(oc5+qZ%?Mg^>H%&JbQaGc^F^y=EKSO&2@mj{V?cVkw}#U`QNSA z(PTPEf?w3FL~vWlvZGeJe$u*V9@n~!R15qs&g-4*LsseC-;V~p`{Cq%Zb-w{&d*Qlwev>nyepy%l?}viBkOc) z#IAi@1|FW)3!wVXt<#?y&G!Z1MHBWi<$1gDbFEwCZXI@7r*(k+tHHHtc63}nF_p9I zu>QW$%#Q0vryZo%o5#_8URk5M%qO$;SMCe`sMS2Gbt`LMUq7wC`damo~JKeUF zTl>2H>Nj62{mFPXue@@f+3;pOxT?JJ-!Bsi`fxO;yo#Y=17ubU2=0 zkA|NIm9^`;d2f32x_UjF&gNfwRJ5D*>VjNV=iWTas_5&uvkaakycUO9zc>EX@{ReM z;v2^yE5@`4uNAK`TF>SrdcSH3RqfyQrd6T;*Z(FuE?ugBghsTa!BOk{mv-a*2Xc9) z2nU&K{mK2)ba-<+e?3!nw2wNC<1)>(KO0^-eCKEx!K|NCoVQ#5UO(z)KiAtGDtK9z z+Uh}no_(R|qCIm`sVyHVudU|kFWKHscG&1DH*v|b0`H_1GV^gh@!Z@}1SWRShE>5ztT)~#h7N)3^ASLlp6XEKg zx}9d_)erxdkDK{_$m38uZPYrX?9<)4D#h$>?T74#YN)aX$LE6|H#f4qjPXKtN(bMr#0px3 zXTFfp7k|xZXd+Kr&G+_Gd9}tkU`V%2pQZkSCb-t@H0T_wzx}N`vQGE-D74C1_TxtN z57o_g@7`@}o*Ko!(i>YIzxwywmyo57V--cx$S)JH*te9Z76@Lc zUpcCENa~NZU$Q@6kWD8IvT==}#jtld8oaLl?V&dsUJnP;*HsNL*Q;y(vu1tv@76b} zzpt*XMKafw|86~sSg-zAT|{rJSJ(gPqvE?>|CSZ{2Gx1D?Z|vqTtt|% z+X0yXQUauCwfRdK9hNbvQjBHyehDm8XU~*yYkEgApp8~wPSzvLG zzT30HPOE#`}ob+1^Ul9L|r=BW8QY+7e$m4u9#^GXi9=#}wQHi=h;KX&{jy0j5Dkd;(k= zU;@nYl(UW?PoaPIIBhh%{5+VBD_N^^_%t81rYuV<16y=QfJi7yr|d(X;;l~Sv3Gx@ zHN}PoXj)~YrEvo{jTqL~_?LRY|F*jE_4;~)k?)`WR6SU){s$b(Xf`&kuh*-8_yaVy zJm)i~80Pj?AxsTLk}#b&33G#g7Vg$gA>aa`0*-`51xs{}(kq!pWPvV5hJaVcMr$Ex z8K`K-i`ed7Az}rd5HZJ*^X!l&NiLLlid-R_QUWgUq+Efgn3hXe zawcQ3y#JiX^coB`7(d(#@jt62 zp1fHQ`roR#{LMWe$?8K4Bh=>a4r6<(9EL%bg%Rr5cZadJQx3x*>y`0*ayzpPmQo5> zQo~faos(2XH(Ehw>Kfgs((JZAoEn`1{9{$}N1;uymIaX_V(plfq?~9Lh^*;_=tGw! zm4rxoEJzYjD#?^BOM1vOHD!`GyJb}7CX4)P!d1yG+|t#9$1yho#Y%_HdU z;s>CulM{$$gPYmk31aq0Ecp6?(}hvq_5M1Ux-42F;atbT1XHu|*o)9ns#SA6CpG5| ztrwXnERN!uf1>Jr9x!-ExHbgWSXg8rul@u=npWRVK3RWsWYe*3B`zrVBo32-PVfgn zw{fNv32O;Vnl(RU!&US3IG*ez@ZvyoJQ!SM*Nhkkq&>sNhrZjFJz+*$Ct<@_%=r~M z!@UigCWd*<;o&cpSDL&Az{xRNP8}xpQgU+5pdut<^>=ye)Pyf-7;YzzcfIkGQmJam zWa;y-)in~P`o}-AEI`v{u(uBOZyK+Vgx>r6>LzLJV{*+f`f@m*p;VYIU1dXz6^JAw ztNUD8AJ4V%>+1dbtE)-%|E;1dT3%mK<=4jR|AS!ewJzXA{x6~4mLvPWtN#J@<{$n* zWa0eRB$_TY$ld=@{r{?uw`}aLrF$MIaCFKN=Rd5#Z~s{R&tI!Sqod6BIxM8w8p-gw zN-8ATh1!3qw_9v~YtJlnMVEgcOebsiud6=ie&%#O)tq>S+mzI^dK4j}P-Ab7HhRJBUd_?OI&}t&o?560F1d)`b zxb>-AOq^f`Ir;KdiKr~e)}?ZqFy{_(`~p=@kWapgBqgOCSvjy=OcG_+(S!u?D+ni@ z*yp7yEhn9m#;NNHlf{;Q*5H$=;M<#i|Lt(^VDCq>ocYl;XPX;uW#+UQ3~nm3Ifxrg z6WN!lwcl%YX!}*cE1McNqS&&kWv7jfTK1dqLq7{^-+UQFGNf4h@_Lk3>3}eJ1s@Y* zh)N^?feEcuza=sNM+vI+l{J|_Buxjb)*5)r2=A3dw>IzfCLS>c0feCrV{H~I0-$S? zW6#Qv`=6CR-rT7oGq~wosgL!5oY{0vHZIQ3VceH}OqNlSS+SN&Qx&;>gDkpLtx&QSUg>LlNU=K7j**s&v=0)1?TcnTz|)0t zjUuk^7~uX&3n9<`O&cE3XvmX>q104;PmH5d!=u2G%H43ClOH0CN7)dI!Ak7^9{clY zZ(LZA14Npr!3?9Fk4GPBZMM}uY2hk*%!bW3`I)!WyXa6OjL0E6|wA(wTv;etX(Izw2o@Wjl$LtW5!_ zkLOcayp2h`8_Yx56YvgU+j0xbf-)cLk&W$$iH%v58uVtU&4j@igH&g7HMam=y-75dl=1A;-iP@6vNyC z$SN4D8((edV{>DJoljRCk0Nv{fgVTbP6B-&p$7?+y*DQpvANvy07YyLrF=MA#OBb8 z07YyLr79S$#OBaL50%&)%6hNSN^A~oc&NnYPz=~aYhrWgpB>c1=FrZ^4Z$5Wk}q;rtY@R)f*=qS)pua^GPV%I9=Hu&U&-{a9GJyZ&a(MuClP@YZXGh&~RqW7p}l1 zR}l5se;i)TY3`}j0lL;#AMJg3gmK{ojQNB?fzkNk&c64zJ-(Nt-uN?LcBG~wzE{JW zA=CcZ&9rxa%hv@woLMi4|DLW%_}P80Kj0f8_SG@YCoYCTx1fn(=M$Pscy0$@QR0%y zKE%p$Fd;0d6k+$+ln0=tkb)cZhrLl{FrAJkHiTm5x881J52PKE3^=oV!_q+i&I8t% zrPR;s?Xya~*{U}wn_HE7r+xIHQm2unSnuFyRbK6a|0Ks=rM|@mMdj7LaeS&DRqBVe zJYez?Qiq__KrG8SoIF&IcAv9ZE z#;Ldo=J2A!M4Z+Cdi|3|c&|1I=@UyjxDG_>oP-9~aRU{%2(Hm_PC{!mf3DFcY!O;h zg9Ds|cIKTfv@Stx5m@(A_fWxY5!{JIYs=!*Ij3FPBDl_Z<6II5uH8E6AV+I8)C~f1 zC{`Kk$1S3_O(^YJ^F8G3Bh_o~Yw9bv3FTw!LMBmcQCD7hI9g&8`@UW8sG<>i?Ns~k zsIqMebUQ}9jS9zgjK8rnXxC{Ywo&A)^WLpsu%TW@O1Gu=4)_<26o?OXw7i7986obWj|<=g^$Bqgg-%;7qQ0jBQ#%v4Ow|CO z%!d|J4~q#az2=Ki*+U_esGpsyH0_}hiG6h1peXF265`tgzo#7h^F>QxqX}8561k5W z?fMzqxY2+b)K-z(M+Y2djm}xEtMuAO2gJU=X!_LMM-2fI5@i`7=OmUorz&mxR+!lO z!-*m%uAuCrNbRDF_yfzH`my(+$@xdhIkou!O{i%!Ah=PYh4X|RRD5WFzI9doR|f=+ zr=}L;6_#1##A)MDHg$Lj9GpzVXgCfC-&sy8*$+^maZI!G>YY?*QKoSce&e*Ga{f-4 z(b8-fH^EDekr4P9?MCB+vh1B@0d^#eEihPt!`04rF52QHR7$gnAxP4xi!SuNu29HH zpsjN4kcr?^cHd`=QVh$K;HPE!KqLB%{kr%*bqOa-aA&LWL+TnVh7cN(-KuenH%M0(B<87iF*>=03ZENFAbkiE|W z_HKpiIGB4AZeWPPYOd?0nKKCU9?9}fiHgv*K#ZUZMc`t+Viwq5mUBB{rvW7uC|)uj zXDLAPf*aL>Qz>$BY9a%pL%ArMJJPZ`fGL3sIRIlA0T2TUfDl^nyC8j-h{L9hiKzy; z465i*ZG@Wx6X=L#-!GLbhQ@c;<=)%ydVV{3m|^WVW4q|Sazkmn*W_Fa6@4bJ87F8i zC!>no%-o-XpT!^y)l)%&6om;A1>R3)!};*bAk&Gs%6M?YR4Diq7$+n9nGO4AmDGKo z^=F(g8}!+4n^myD8{B7?sA2O7Hp&y^xQK+7por#-@DjH|D@qllD9X_k!g53lpfnUu z5<_*iuyNXGUY9YJ5vQymU@Xh$sCBBt4d%2_39z#kL&IA87Xh0WXLZgi$f?nrzGn=U zYwwvpWO%GkW+%)EXLoXbtMWj(?S4?_{Lfx3eap(pEemaZEWQWcp27v5xuF89Ygdy8 zto?C(xOiV@S(m|a-VokC+zeQd8LhFg?$Hdp7V*~!!BPQ|(5%tiX1L{21(~cjvUJxQJ@%evev(fU-C!2gY-o&|>v?jXDM&sZTbJAR zf2!MZHgy#5RIbj&q4!jGouBDufb0oE=k@+@L(7U=n>+hE2ito)`>v@DNQGtU+k7@U z>z|J5Omvj@n%@}+novmhB;bNi=Ua1}Rta=a z)tQF8AU@urC$N2Yq)PltVpgJ98oePlzhkP?OLHO0bZoy~YsddBtsTV*t%qYQ@?TbP zqRR06dVOL3ma?E%XiA&#-I`iE@|}e|Mib_5X$pF&rs}~kdiYLVJ=d>ISI@p$Ur(^S zX2vM{!bpWIfmBCJpcJAKQSui!z^7C8d1-XqPe7yNDB}E z+CmBD6W6`VnL-PGAG_ccx`<7DLXHwYyz)NqCy^tmtc{u(JA@S%P_I9kRrGVsW+FQ} z`oW1Uq5U}LmbtgCxw2rUzw3%fjZ%dCK?nTS{W?*2ptyAs@IZyfsPtnpn7J5bNyUbZlCTabN72)xt~1h54OKSpdTVK zwLkmm%hyL2E?~Lq`OkG_?!4|pdJTpQruiYX(S$W<`@LpB+?!rLF@Vfn*A?wF+YeIB zZNI=ZWpuy7n9qIidP+}<*P#PmyKMc6{h|VCXg|mt-1UZI?9y|W0srH!6SKto(IcdD^HvZC0Lq z+fzBqWB~AHfAe7LKz}>C?>2UJx3+h;_cpc;_ILI-w|BSp_O{qSIAcElehc!=H#<99 zd+&BPb~X+U4&Lo;?`-UE@4kDtwX=7?lJ4fgJ0=j0d~*Z(jW;{nJ6rE|b`Cb*ZESDt z63+hK?&jv!!8>R-_x8AEfOT%RGHZ0>Jy_6M=M2b=J+ znlEY^ZFJw>*xEhV-FUYJF}m*^>}+iAzk3HQ`s^@^;n2`ocHXE|x8H2;Z0^3>+S}dU zJ$SeOZhLF{U}tY@Z)bb^V0&wy7;UjUF4_!5Hs9>-Z|oDjt-bwsJH&Hu^WE0=CVK3l z^!B^`-OU|E6Y3qQy??N~{q6t^DB_CRdz-sNjx;6W2m8DGrpTtLvhiknQzQomdwlob zZS3uD?r!hz@9mS^`#aKPAG_GIY|E4HZ7ckJ(gBi#&F!7-js0EXv9Y_o^KN5fS3w$i z=g;k~BD?v91V-}a-u}kB-QCTt-TiGMu}RD~wn@s}on5x{&N9(kY?2zPJn{cBR+hi)_Tm2h>|86X;V6HAuxT96(+5~3`**Hy(9-56 z>4q2vc^U@YM5hU-qZtc?Ew=NUX}eLai;fuvvw-|bbu}R zw4r_M?gt{L-dF60$$1JZoE1zM?U+mMCp;EFCU@91$R5fp$+5D+f?Nw|tXgpvcV023 zGj9%WztsSx>E3h^P z`38Ue%)lq?=>q-9bFnWjZ>RqLXZy0Jhu8L?#e2$L8egspvF}Cuy-{IqV!%Nqe^;7;dU7JLR~u;}aII+^OL;?y;cutgjnYMg}in9M6ZAtO-g?yC%-|CH*Pn zD9?<{Tn>iZNb{6)%(?f$XO|%8M*+v8j0~rA0>Yu{Ives!*Cv2moZeUH953PO7Rw!+ z04Sjz?vBxmpQ`|k4+qzq&9%a0P+OLrcsD{H2Hx$6%(Bs%5l8Kzafwb-Copukk`aYz z{cCIx-F+wwCrI?+c!<$qhx0I#tH(VE`i7vhOSKHls<(#0CKQbblmvaU^rVpp9ClE zTySC%5S&MuCp4;j%^2(5ejZrE8~6gW(M5*5SX) zsT!Ldwtr%=(VYBXzj$iYLOzI-t#~Mwp0kIB(j!J4xl!36D0i^DQOgVG% zWD)>yZ-*jFV_>|P-37wVIXO-ji9IQsbTJ+rC&lAq5Is(J=Z#tiujv~+#7LStuh-E! zkj$A20pgmr+>K_Y16MdneQ7B>LN%A1aj#!sPU0XWW5YI1BF(lSwazciBbjkID$=!~ zZI$aWO>jf$|A$ zVFWkIO~zO&a@R#QDoR`&XvSV4m1P!bz*wBtxNOfXj+qSI$;x@Xq6SV@ANoD40EQ_hkKJXoZSt~_z;r&9w+cbaj&Zc*j$lw zI_bL{9Wr}FsDM5c&gF?xkjEa&xc4|L`a>2LxK7BE8oRYB{(zgvCfwaOnClP~ZqoI4 z@^YB`kJU)YVLah`R*g6Q??zv!5rNzZiv6vIrR|0#vg5)*evz!4Vi zOw;fc!!hc*jad~xXz?C$QQ*9V!50@2Lx=(vJk@jF=j_r2@%AfV+{vEqPsp5jgFqzV9E6H>A+2-Cw z9gwSYdU&Ew(|zpL-pjE|XO(mOFlmA9$3 z4KFi1!^+mqHOBICGFV>Od&^rpJz~CVX5R8@q>NXSL(U4fPNZF{I1Do8R4E4W}6MzvWE8TYPVSsGJJQytUG0LMSpUz*#2Q zWpRLUQ=R*j=oig#bfJ+H5bhJPaxk`@-z6z2OM-fUB`pvV)tAWloQ>X zWg_MSEk(LgW5V^LbLe~-_|QI&rIH+ct#RhKg{-E1fEJ#9#ALxTpPqafFuS+u{&c{R z6q-H@oKS6U%*5ZmUdGH}NogzWKE)q6O+sA0gs6S-)L)!cxwaz$B)U$sK5h0LJ(gCTg_A4YBS5{&BpDk1_E$-hAXpBj`Dd$)$p&(ES=`(%GNgu}1EgiW=SbmlU z)Xwlt&PFz1e&j9f?=bK$SPXk8EX~kd`bi?^5 z<@qXYbf_5Xvmg2V_@`{j&6*o_t%dOk#~C$EgXxNl;{Nx)HyZ_=3)1O_nN(pUsRp9PYDFez4o7f75&B3Qe2!7Ab9wuNgCQ+jG0+raCuL=q*f zSwA3hu0Bsos~B8M_RqhSg)0s)BGSbLp+~LL!g7|;`cX4(>rd{mEwf>T$8qs0_ELsq zDiF`sono`i@t$yDz~plF_l?ThYv=XK;Le0 zxa>1SsyP>)zIpQ|RfMwQ>bgj(j)W>!&_hthe3_2Max9p2SsBF4d>fF+rkz_BKtkw4 zFv6Dw6WZV;7BKW%>lLD}Y_k?nBuVfTJ3YrCF;~xs&)E-p2U{7T(yK&;|^8h$O;LWlP8EQW)B7 zp-lqY7VmbEcRRC1%L4DV_8QpYNqKj~YlrUgFm}Yt&QFmJUN#$2Sct{DLSi>G@AB*2 z#YDHMu$I1+`i1O>m}AZ}aHc}*PSt`HpKfOfH!8pW!Vxl;vui&vHPLy^AKZ!I4Q z5_i9SN$kV8=Sm8PzrR=R$9nCjtZ`=Nkjm;l4tk%n;hnD3`EI!^*j${}+6zgrT0fOC z?!NjIFTQ47gB1pr>Dw+T>&>4V?N;-Q194XHR}#mnQKZ0j8Z+0{M<*>7>Q(s|Di_6m z6-kKXDtr*JyRxtZik)XEwx6ZgdX_@hB`z;sK@U~QZ&0YZtRhHD=qj2R43C^}V#DVF zRdp3ZQkhnf1SuN@nJ-9;@1!rve?B`l3-X_*-}+AaqCU?TprSs{(--x5o_@Qa|MT=k z{hzNQMg530h8eV)D;UtQPyjfzI6UX1Va^u_o-PhX7h^Yq2|K2N_} zNT28Fll1vkGZU-(_axv;1U}z5CMo<9fzLNVNfx|B;PY)rl1DEQ_pRWab zd8v4bz-Nk0vsMtNOKj=nb>dkAC1z?h?l!?hV~xFzK2w#Uj_BLnI7{o^Z+;^>3RY3f z;RQ!V^HH4%V~9ANAQAfG!F?1Rz%C##nu>fQETbn_#Jj*@sc4DbW&+q&Xd_Bxk!xnReb+kLygxRxf zW!eMQfp_P5&pxubY$wZH-h9JvqNkt&tB$a}`jI(?QP_f}#Cz_;_gW;iSxPE_9s3Kc zlMJ(2X*79}6@byKNGjIv}DQ6A{jCW~?ka*R=md zuCca4dLvU{{G~s8G~h6}xYmV5SkXC9n-i4bv<_!^;w{N`ajx#nsqSs-RS{N=jkHty znM-wS8Mw%rV6_e`F9k;?Bi^Ys=z8$j;cSm^Tfc#UC;tKw?^bzeTh>tCokQ7_u-g+n zLRTjo1&(IRR`i9+IMbx_qTE>Hlsa#9cp2>EwD#W0A=^<_99eB~4jJh3Twm+do#}E*saXDa#!bwl1FJ z<^{pYXviT$_9E~~J+zd|6+o?B2XfpgIbKixvDsp4lr2Zw7uVEwv-0tR>pR%94qNDg z(oKBS7Hehg(e|*0ToL)Z_21%KuY9y87?o15+`RQ8xz)wy$WFI7KAgG}baQ{7F2+@l$T*E>c* zmd8=Ww+W!ZHk8xQ2k|liS||+yyivz8{tXv`+5V8o3nYjs=$Pv7)?z=(Rx3$?sGiRZ z*^UIc$~DD~xQ2X!%8X8quz;wnVP9zbrdlk{TmEatWs%50ix>sh#v!#U1=IakwfyTgxmK@f&X zk6D+!40OV!_d%~7Fiv^Q+N{;ep6M|=VfUIn0_gbb%qREiT%5~sb?|9FM7~#$y-7v( zgGi4_f*`dl2#?7_ocTaNbP$$@DTEItAWQ}NQW;$-V*ayjo}CI0xo~1x9j%rHj%w;I z9gHW~?)=WnxS)&Q#-A|M;(RGCN^}!dfy{=-}yG==vQR zTfHr2O?!Tk8)4pE>Hsvo(pR0Or*U^Q1w`*sH#X}C561CdX{)fE)B%~vP(M1KFkzSN za>o81FXD2JfS5}?>|-HjgKnVKZNQ;y)*EN0G6y)!DYZGwX&iSPoE=y65YptaKf|Ff zXAWk=uNlS(+?K|fjK9sK3)iyIGY%Zz%zP{t&pGB{AIwwb!vMoR9*U0Ue~4eR(9p$s zgoimOx^YV$-%3`uXzuNdu%9I?%$*1QFFZ=&J=gNw*bn=N50|_N%b{{^GUux^jk*GB zQ2DE;9_{ULQU>G08{~{U@b0trxhi*`_0}(657yOl3eH7a8&rto#aY{IWVb@8D3ZyY zec1O?GTdYM%U;?*ob(YQ;=_fY`Z#4Qm4x=(Zch*44`a_k?(KMF?ljv$7amusR`^pU zC3uELQ%ZocI=c*o09T(Z?=!x!uWk6sCHqKy-RMa!Y?f7MaOs4Gb8r`z0O;kum|)8P zK=z>l`>$h;_kXb@@n6zG+i=ni!b`Iwz`^}3SG_Mcf?>eI(23#PEsywGAqozZy&JHx zXTazJ>d5Rj_z1^JAb$5H{d-r#uf~hMF%*(Hf|aPcM%yR7oWAV(g8DaKF!@?p(oLka zb*e^084Db@a<6B2)r?RX`nOa2sN~?|R#HB;FU?o!Hk;oI3VR<@3?-a7g`ko;AI$Qp z^6Kl!XZM`fm}{q=UGU%_-Z+)Ke8xQ6=e|zD*t23wWn}l4Q*3_b(-4rC=&|#OA-`Tv z?@V{k4A=#7^>AOg>?7IkSgzQ`%oXf7^v7O4gJ1qQtivg;uM$9PF=U-!HXEJ6&wpL4RiOWYXs==~#XFEC(Xlj-a33LR9R3Md|@`O;4VeSQxO{tmr6Moka-^c+Cr%sbpMpb#)^5NJT5DaOZn0$QviZ_QarG-$xIA@?Y*mrH=q{bH`+W z1K@Yr-&y?RFa$SEb}|lLu+WAjqt@j3SDF9a244)s7(xzYY-bB?#)C-4_P5L{xaCzV zZuW)sY*g#B{xJM_4j2e^+TzJHNl)4YC*2P#e15?9h zCaZKA;0@+S6RfLsh=T<^BkyA8Qr8Wa#|_cfPIVa30kwC{erDq1C>Ga{=2*Q+oOor@ zi!JhT0&+$Z0pLw2It{K?taV!)c(Ks6sF$5{@~7zKCd>q|ckol{{lq1Z2^KGBDpE*| zlVl0OS>wEu`Z;LPE(BORJ^xS(6uMcB&HJO1D8oa5a>=BZ3#|CeUJg&**2{q`f$BE7 zx5u2>8Zph9zWt{>U92|{+yG6_9#BTHKz6I|m`h`6V0Bb46x#Y}RgY-tJ~zFp8=o!~ zU{lZO3W9^7nLxbl<3M`k$ARqmAyH|8*Dg21=5}U}^8#cfhsOj&pYcYYv5DW2+M~YF zXN)=0ICF0d@j3}m?iijtF*teh&;pN%i%ij%2Nl`0IL2ZIDS&<~UW62IFmXDdrKMIq zcp!G4Yps-!=G93S10dW0ocH$kP>BrP4Ek>$l6NPuIfKn}a|)J=61mg#z=e(9xgtUdBdq{hs<%2O~$g}{>J%#k5DLA*Ohh5!Ze zZUuM}6EXObs9kB{tu<#yaM|#$U*FUU!ku01#HIeou83Mlgo8MG*HKmd)=Mt2g zG6ghVInd|GASG@+-6-Ko7)Rh-H0+m?i5+3bfcKE=q&Wm62qz#8^nE`Wdj`Cw-pPFT!_4?C^8ynQzwzC;$(($z!4{-Zw*{IE|HJ3rTm0}4k z_h2l6ZZCy$Kg1H+-KEgIMJQR9o7*i&QX)p{xkYTso0t?*4!Z3I`{&&IQ8HRgj0+h< z=iBQEOJY%$K+A#>>qi9nTwwEmK}jV&N4<`@rIJmams4h?{r~DxWfLHY@s9<*`C>H_ z%Ced-PKgpD9rsf8H`7d7Me}0Cw|)&}Nz-4Qg{z{t^^C;Tsl8g_^X1~@NwNLnL`x|D z*@?FOU!G{sNlX%~6uDK|u>FFvnw+56Q|0G_oVSHw>CI<(&> zvRUIjfCqR!eag30K3a$*qBD52Zy~!BbuBA9{*WRDi!r46U z(~HI!SR00`EG~GdlRJ=pS^_%f0h1EAcB;E7Ja?V9916S!aPJVHRe_A#GIa4G7gu0? zX0NL_qeYp3eqFC90o?tJww)oL-U#7sFB#!CI+=4hI$`wZd|HR8oLn@IZ2RTB*5Toh z+<#m@I_;dZNfjwrzz+t0|q8_SmR0YJsb3yrAL$m6Vt;3f>S(0hot#&z>A+ z1b*WL<*nMcItOLYQLTN*gG392aZ}0@_yS_31>;0}qmFGVj)*VE@bqJbZOdeY@z|R; zmG?X)*JeAd`Tm@ z@PeGun`e^VyeUFTGilEnzTR=aw>m^d) zuOG3JRy|wb0Q35B2PAFB3gqj@UENdmX*K%w;~o^;M$r5w&Fe>u$?M#hiRx)woPwx9 zNQi>$^&?k~Hi`WU2wy+GBihdgjZ8>iKW<{qUDwqK&nla9z-1|3KmArJMcsWk;^L27 zX`R=&vMuYa6jpe#}Ke^`#8RXno9Dhn?1Gy(<#cRMlh7ShRS0XE~k+B)h!KR~d7ad(|HGxuECL z?Qi;(8*@5&_{hiJrF?vNj8*&dmD^$E!cMFVu09GRG#kSr=5sRq%5t~;o?|z7!plf= z_bYE;bW{bO(4AY%fE_M(nixIVhYlzDDinRWqv?)&sm;xsf%e_rI=7dhzE++pV*G%S zCO1)abY)emQ^!7mTYB9Mnx_-qbncC6+@h&_yXlE%^Aha*mMh~En!~60KvMNR;)?UR zxmxZzs^f=gPy7Crn%XsNdb_e#XxUA|hZql68kht-uJgm62iP1!+v!h-_t*@Oj;B0C zZI1Tf29!BZFyA=hY990O_#r(&r9GJ0*LkImhnQyUK@3Qgb1rsssGA|C$kV-p&jED7 zF(N|mjRHVlpH2mwhn=?v*CbBm!hbvdJDw;xKR1UX7spxUbHlxU%{jBrKli4?9;V-? zgYnJ$wlqEDY}%Cq5F1EHur+-AVn#1 zp30?Z>JhRtpKh_?%4d%Y6X#PEWPZ6|5yZZJd85|gC&K}k=;7pK!k{T*V%%7NdMUVk zN>~xealuP4=RG~^8vuLTML&hIfZyIM`nUFr{>_rSpqHaU0hg$pI50gKQ2lNVdv9!5 z2UpcT>8A;p$E{mYpn!Jcki$1nB0}R_af`HAr^6W{KTfezL^SV4$4Rl3IE)_LQnI?Dl zMYvJOv;`U&`Jg11=0~qNJPg}Q-STUK>@qykGgRgAWZWK%+Oi0r>%<|411Hnk`0DWC zMnFyoPNs5TC@$L+S|Nxq^1tml=jCATU2GZlMh=+Ew+cmzbKjfNmOOIt)mA@x+w0by=OG52sbEf>>XgVwJ7M9;p zgSX8~$Zf8b=gXb$jC4OAo#-eM4fYsQINEQYjO2zM|Nb`GHh5oczT4wo`xlUA+uSn` zF&FJTE0@>hx3>1)V5|2$Dfi#JfM`n+_up_D>;=TzFCp4-61iFES&0gKZ~H~j*&;ed z%vrYQ<#I>R3y4T~1^*&VdD7tp5_g@%mt^Huw)YZ=`!69nc%DdcefRD~Nv&I#o{g)n zVR`|P5B4QVyiF3Dj`Zp;ki7d6qCGG1MY`^L;unk+sSq^W(fn#XT-uI1kdK0Sk5PpgQ?zBH>Q`QOt$O8 zd4c@hDE|e-doP!}_dRkcNEW#l)ZLwz6r>#$B$N1}Yw-Olby z8joESN=bZ)s=F$bM*M<`xvNIRh+oiN?`A$?%pIOBF1xhXPVx(~bvL67m>Mt0v0ci5 zBYyY18YsbIG%so=_Fj?|d&&w)+ ziRZaSCFRlGe&Tt#Zg%IOcy^x4(>xrzlTbXn&vhy(kJoMQxkfk}l4N$Bp^}+d?$L?n z*UZ6>PTa)&#GZpVI{DC>-P$n!=%iuCB^@Qx`3i>`P8eA;)rHGB1ZENQVXj$x3SxqY zVg3B+l!XNmSv|O8TEbj^HtXK9`jCU_dPJ=|Ng(eT&NJ^bI*pmdIh<+kG~+%)f^;BG zpHDTuw-ptpU7I>OyQLYRz2ZX%&B@$G+ji8$$T%g%S_2~5ETu5hbKkSxXFFG-lhr^K zRl^%xzUBkRLEOhhT7dV1xlcv~B?^(&?D#*bK_A^d5u*RtUCpRCM;KEUR)3aZ&U$tt zI3;$Vzv$pi3N|fLz{QMJD3=~dP~3aKV~9tHJ=7Zr_P$I3ZF{g0pP-J|$2}g*Y)MKh zP(egO;v+POIMd#i*KUW*P7~6$JIGIFN8)=XZ{xwEo#Rd@j~6Ku?D=${`@{!V3MGm% z8DIP=8aF=>WsYCF?PcvpC-LwXG%#EB=d)3XNv3HoC--aS0i-cllDK)XNHpvW<{@Xj z&|(3BDc}>XBdZ8$cp-69Se}Y0G*7V#$x?RHIf*%B`il?r@>E|hZ-f1`{GZQ8~{X3IU+@;nT9|J5FZ^x^}}OjT5= zW~$^+Pgc9X9}Ne2OJp4~&S>{R1>t78x>)G&jU>leV)wF_ji zZs|ZJ3+oI?eA%tsx|Ts=VsZABs|-^(ZcI|Zm`oL*a+QOMRN~il@V(M#!YEZ6M`yX|LJRezaZM9HvkO<)+8XNEZIM9b z3vQ)CUX2{+Di(1F(&Fb>Lcw;vq&%m9v=|?ci{YG%hWB`uXy7pg6_B%>*dfZa6cES_s`tWI9joVv zJ+@$KI*x}n5u~+QUW|?#W(-DaQzBpJxpGN<6dPKQLMY18WOTZerre$7k_)|Bs{Bub zryweh8*{cYR!X?`ZUs#$+UnvrgqQFsYq_=51!Jm(d8mc7Db&N9#({G`1vS>h9O|ng zL687xYJAbaCD%UKF2UZ-*=Gagr3&H}hbxm%pz=UQm7ZoaTnJ2&( zIS6MpFm1o{Kwv@sj2&g;RPD);z&W z)bp`7y|P9v2iL}Z3<|IyNNK}rq{vRVwoR80_PP^uy1ORb%*2ngf^8AY6PS%)Og5Mj z-{plzR>qiCVOsJ813+1JZAbKfC6?w{e?-KaqE$rSIaf+Jl$dNQ)XL{P7RimZWzHAvxI5Tl{;Kd zc_`u1`krPZ@SIHxBd|8GDB?|TW{f2vdAkrr%o<}?IGK`giz5QUEIN`PaXF)F^(@e^ z(7v3Bk!QTp#ibO3#;o%|iI@%Mt!q!zf>3}GB_ozI zdnmRs=E5A-ogs6MWdY}N-o+UB!SEuY*bJul#w_}r5(-_Ql9G*?tklZ1%M^S;5;D7q zl47{5H9K#)h_ zWIDO?xi%`rE{|MENQo{H5tHKu9JU{G)*F*tW(dq(%d(uUaK|gZMM>p^SCAj+WhakR z9u*GT037vgLEk~h@C6F7l|`wwcCe5*$HOUwkuvM;dcQ$&iiv1<(l+DJ)p88qorw4w zvbvM|?&Q#!o357S2)YxfV;U_e9x)_BK*pLCqgP>nQdmp7kO&FKDWz zev(NvTS;Nx*U?=$oFmRN%eM*+d^}Ve%hEMlwe+xDbEx($W?7;}gvCry(T>ohLCArL z>3k&gMzWSs5m^7qRoobv$Bb3W8nMhd84UNP%d`o&gqpoAi^ei?_G9Tr>D~Ljy^MjJ zF&^h(&^yXO8RbWTodNscwkHvp-cKhF_iV{8L4_tRA4mCIOIpXW(vzi8{4*ENTZ9fd zbueaxuV*U;Q_W7rXrN-$mwJ@ds-z; zM?aPXBJg2-1%kuj3&~)oN>+eZ2-@C4P{@+QhvA4JR>&C*8C*nYN#m-5o`_%T1LrWt zS|DIprIXJ2mEQs3cF8$!#M=T+R(0)%AFAT7{=k!-1fe&0&uUyu=MRWg)=pm6B#k@K zr^8E*7iHPnntKg42Kc&q^152nlc2c(?*F{d^Ou#iRqR|;b_3G5oHqFk=G+d7I%tJ6 z3)9LVl-UrOocPGoDIPJEaMI|F8Y8izNq&fal1ZH7rBPM4etaZJTFGMG=#w$r_-!&4( z-0+CSESYI=@@>wMMm6ysQ&^Amu(%kRlhFh5Og68-xRod;)do^T{VI{?SHMVT8x?tp z$3rf1BJ8?_EJV~Q>f_$^ z!-@-IHr@{jObRoSslK|km{_Pa;XBkxFQ(#hYUu1F$jfNfc|yMv0YSdCK+_&?3*Fy( zITYwb48CPdAD-@S2Mn{BMyUkodpMvw@ao&x-K|JY?AWpEE^W~~#?2-9AqyyXmsk-n zy|5BABLn>m!~seSmPdzAelC)*C2?YXDoi3{QXT8 z&r5xxaV0a$@PjcI*!x<3teT9(2#aW9(*PFCjy6vbf-gJ1mLG6Uhrh+B9Nbk z&4nl+?k7Y@zObJUsGD|xcldWJj!IWM4C%sL!2R?s|0+4(hVpnkyBF6uJ9YfzEnU3@_unBT})DrTNto z%nA17kLn&i^hVd_SVCmXKQSWs%+lW~{D&dU$Z~u@eM1C`imZGL$E)--ILC)?cwB8U zeuk}0dzWr+$mMv9z2mi+_$pq`01Q{*j-IBx6S!J3>jQ(&OPITpPiLneXv-J%?N0m* z)z0`Y;w@KWr=GVvjae82#r5r2u4u`14x)7(QGqt+hejc`t^+D^v#qEtoB;1mnp{qy zAwhtYDa-ioWEEwAcPD-sKx<<6I&vP0ybrvDP9$nFzl@_%Yu3~*(M%~`2}enEu0x3> z>Oj(*O<2#-P-Q-(qhK|olmb~6bE?5`jo#MwzWv;x%DMe3TZVSvF!=GlOQRiJS*OT} zdL9`pfaqkSE~)ecIArdh2OAM+9@}P(5S9{Y0}hLb8y3bsu=E`nqLhSy=64aV;+5`s z(WXU-=RKb2V^uMipZgFN!$3xX2N?yKIhPgLTUdGbOYAtw470OvnX=#JLLW3N$QZ*dgW4@}O2`paAQUp^TZcCI$lm5ioL*tIa^~7AuFJ2b$C%xf_ zCD=AAv6Jyq3f=KQb$sgRJ^~&a$}_?OcW=hFN4~R4vox{khGob zFH#~-I@=Wzh?pYFY}2uweK5)u9E=N=A%fr}X;DSZ&#>EE&&<0FN?sfN~XP`Q`_ zw1kd6g~qKm%7x)9sFq8}W0~;D6^u{3Y9HtjZG;kHbk4aB zRv>hZNK{6ZHz$%r=0&qd-CGlB&UNXK?%46^)Q@Xe+G6c}8Pu(WCmer%Q1fRakX#H` zc-{D^jn`22#EOmzukCH-!~$#X!kP?QeNGj(#f^$?>P1soWWHY_D)QKr3zk)3M#6&d zT!q0ZWrE-(8mkn^{LhaS{7}O+Q8CWG1eKs^IVzzPkZ=5=ki}w9Vp2YrnPN^ap|#$n z1XqDtkU^PRfR)NiNsJYaGEcd1_yVDB-{rnfOB;YO@`y2~Lkxw73D*rP82!=16&W3O zJ2e_nfwLTTh4PSkqp7xv5SDJtw_OpQRoE(I4Mw*n`4zR7a$d|376z&&CaEp6r4^;1 z5avIN+AP$x3w9LMn_O{M7N%@cE~$)%u_m7AagzUFRUKXi>{` z27x?@qz>T)C<|gM?k5}cwW4>NzOZ|lv~$jt6GXWvW@9xfLNPl^kuM@sc1yC==yMEl znd6Co)gg16cHV9AGFxV+BKjohm?V_X+}P_x@`W6Z%2}`aaDPw3qOLIS_zDS|bbYHS z&ZomKOqpm~?gn&epJ!ze9V*Y@>Nz~dkJ6^h?DunB6+k#_J3 zU1J<|_SRtskL3#wgA;)7$nydex&@eLt?PyI73Vy@sj{QiUWmdjX=OGK!;bj_C71v|gwedYhku-A}id)40xyb&6Y zM2SnQ=Py)d%~9u34his$(A6&agZ@^{D@y|ZqH`|4S_k8nPC<*MW#$EC(if{$lum4+ zeJ)h=+>nw%^T@CLnuVJ?VLY1jogv&nXQ&XwQd&?**|l7$S)@_+*#o~hp;jD{?&WmSyULNa^+CdnZ9yW6DH266i>`4v zA`+XtxzxHCbNg>1IP%b)g^L61x>D|4n7GFE+TSEoC@G8N$}*A6Dk%d#s#_Y0)(A== z%O} zgJW+;9D1-h(Ni^)7a;-qyF^nB1FXgHosBwT<05jYc)Kg33n(-$_|d1;`G|qRAm=Rt zj3cEmmXzANjnKQ7M-$at47nfNUD6!02Q5yA^Z7{o+SoPXJsdJ)@@`EoQ&PnhJn~4* z*VU)>S1wWxrgRrD#4M$JUH!X=Ej|TmAz+aHz`GL#>Ew&P3{JCFlq_Ebbpm+`4&>6? zMRP&*2rg?M5iY7}1R~1wByn(|M*=H!E*d3FP)#v(F7K-EPK*OcVM z=3h=%Py@Q98UQZ@ZvL`7mu-36P1&`zhoRcPY`zYC=t0spHZXWa90PAeKg-}XatypB zy^;ZKDVr-=_vLV8JNnqy1vR6j1q=~b!LukWRVfMrxF`c)WKVmU1$~wwqqt?rrD9XX zQl?b55*#@gx?gnaRPuE2XzQY3c&V{)aEF6x3CM}`RVg*jwmjL&6mH;>R z(qv90EQjyyEQbd*95$7cR>B+}lqt}&X6_$$@q__j=|xdw$A0c9oLHryR@z<4R%W`< zr%2~1+-RzV4NBxvQr^9tZ}FDHPdQicIrGRBj1IZL=?|*&!7Y8Wp)*a`cvuPHDBQg2e;SxZPUfxk0kEobxHzTLO~4T23up1NPg-Cd>+ z6HKozp=iC+R`Z4NYxEp~a17v6$+GE7mw(NZ?2TH4@7M#*+LfnofJtk6@r4?5}GZyh<3^;C?#u2$nj9Oq-cS$HY;)T=9`t? zT+MHpr}xyl{wUkR}R_4P6UXj{b7mw4pFcT8e%ddll$O54V>hw$k@g+KhlH+Wp zEs1Qx)|gS7Y+bX{`@+_)#3g78r;PW@Ik|l4hvmVdBr}iY%!oS&9aL3Z%nk|@MOoz9 z*^@=2Ug!BHMKL_J2+M`MfbRWZ94>uXE+Y^u2_s1^CA42YA6!|M&FsylL^W5MLmo$UqM30pyz!ZKMrR5@A=`3v{592;J`UiewCOf2k-}NR0F@h>2fs1Nl zkxpSE43R97E`buPUFoNG<;pG#PDB?lkDsr!ZywMv`pX%~<5^=IX%iZ>TS0U8=uSQP zXsU6oPtDdc$QQ_(IWjPXSbmjY3t3{sy|hPe)@40Uz447HZI6ii5@JNA;#A>2j!7ugqDX_xfTE z=z}a^RaOcTWz&35`>9z)NP7)#SfNjQw%puCCY}jxG>$7!CrN3->;j9A99K#>b@5HG z;Zf%sLMP4vaT{z@QW-RY8HB@znp}Ez>RHU|7c*^&O46w1XtN0^T~rR+1*G58nD_Z{&!bNe|O8#PP2 z=Lm~&d4@Vp8HvlPnll;9g2j7M1?c9SMc)}O;$V*_3-0Be8?S$NYVYfMozf0Qb;7YVaND78mr?KxM zuLT3eIai#XiBap_S*P)rdc{!Z?*-`aEZ7FGt9nr9L*t}dIj4X*%2x$a2RD*{NEps) zou4YN)*^HD$10Dcn}E|8*w*hhH@0@{C!(B;Kf`&4kxYX;xY|gw|Tf4vK zK$A97@K*oyr>ZfWzc*oQ-l#y5?Kwx}*Itl$?&p(BFKq3e8#GBkp7!>8Gu1!*p(xVv zaKqO43PO%WIyF#af%W%+)0DS#sQ$M4pKD&l5GAk1e2T46LFA&urQBrh8Ky0@86^N{nZj!(PD&#g;o zTDhc>%JvTdrn0qU#dKE4DqI;gZemtBl$h$qdL_~lUZUk9t>l%Wv#wN4GE;$+g0C*KHqgWekSI}<^))2XdWE|oc!hpM<1=JUpZTS0hC;;DB7_g{6{fzyijkI zbA=?;b_R_v5%f<IR11l{w@~RkQTxu?QvNqHcy=E^u|K*G^Bp5-SAy;L0klE(*AKT*qG3TF|S(Xx=Nd0kgs1#*+f%Ze|bhlwdcDK&#b~pXYYR zrHQN2i{NucmAVEpZy9D$NCM+B*avp3?`PTljB9e`Fg4BP)id|s?6xTnb{aZr9mTw5 zJJwhe_dNrRzwub16FQ!yzH57;wyZ`WdVfA`oHe@HU+V2vvAw#Rh4d+PPM+hi)@kr~ zc-khWEQMy>vvkfVFRNK-Nt1N8jsJ-3Y?PZ}cxb!0_ zE1_xP=vV} z0<^>QUzS=0pafjC9&Bwq7r-S{oHn`gs^<)K-es{(Mo;Rl!!sppUAh2v+>7v!J$B^X zEzF+2cFi`=BDnt5z0?w@Mxz=Rv44RZdzu(u4@=eZE9`c`N3J~EWOtLXfC+cL?Gyz9 z%J;B+*uZo^GY>V{>9%0F!6XV04ojX=NHyEQ^BQ2bWY@#w;$^^K3CSLEu(9%3KDlr_ z4T}W(dOF@^Y3GvK=UPtNn1w`*x_#uu;0tZ7c-blxxsPN1TEaY}z<;h>+Ha)9yw0AQ z^@Uf@xIYB^M<{o;EHX3XPnq+^`wN+_^%hvw~!^3|~^zyi7CJ;Wh+k z(i(Ec5*Q{swN)18Z!C9Pbp?)K78Yad0zpvFy@cruZ?t0{p&^ME$RmOlQFp#pxav~X zQ5F$ig+Q_-t^wuuO+BxwG8Z~xt>m6np3oF6leVnp2Z_hFEg%_7Sxe~`xR#}0#Cg-Y zWtuD`iZAf^@o80|5gU-7J7&2<)|AySYgnc95}O9!=M<&`XtCaG>VxeVrB!@ z8TD|SW5Sp7`AE!jNI0p>;3p>BasBAjub)-5oN+a{uFhDP@6W4RZ~M(}vRUlQCYPPx`+O3aE>F2l8$zz$ksddQBrS#)5)*f8y zzo}K4Bm`sG`XyY$GnC*HhbUJdrUe!}&$KzC`#vv;HFC$6C9|5==+)uSI2eGjW_fjM=%k z%A8SDkz3Qy*3lA1*^y29M(k=tvFf)D|J}6;vA$gmE+1}mucKZML+`pzbC3C>dV4kV*(AXnVv1G6ucr6<|=3LY4nmg>gJK=kn=}F2Qpwz(b zHfbJZH%)Wa?9`94b9NH=R;rtRUuk25x>I3WXb~qwWDXP9CQus& zqi$5cH+vfQT?i#0sjUlia;Q;8M)@F#eh$uX!@XUJZ+9}4Fe#~Jzr8jz&rD6amC(5B z!pkh_GDPcO>QE|c%)ftIrcUa-OPBL@qt$M7f5|?uMww?s2^rQlVn&tlr(|N(OM2Xl zCYNlGIhF6HLsqL8E=CfU;(a&l8TBq1cPshJ1d`;ikyAwdJ7U0I`MHB8a5B@KGX-PPkQqhUG-1wZM5) zJFgu!PN@bCZjuU01wB5rSc*1YAKS3ro5Jkj`w-}}Vg3SP{u|;JarU-LAk%NUq|5$6#+rD=|Ux9P^^-o9jb1Oi;ECpqQPN(%_ zc9M(1_=p^}n%#Emw1}h0zfeQspp4kqS5V?~f?&*wSx&{u*ry6z?oZMOI-YfE{ZfEm zG)b$&Q=fN6+WOcmkeD906A}njQ&p*_fPMR=^ zXQN5yks=hc&c(UbcY`|3)-i#iPagL|;@DQ9!4Q%7E$ zS)1mi6e}r`&7d-~YOF0RNCu@CQ4#D2QWC4J_p|Ts55SM-3M#96&Bm%yj0b?j;Wr!( zhr_aY#@L`O7JEDeUQKon&&OfmFU~HRU*OLe;kZ7zV^JczzHXD*d#4Sm>ucmq!UeOv zlh>z5oX1y(IB(iC@-`W9_^wkPJ;c@_*gHJidxLpgTwa7m(!+$atZzSG4lz-?jYD2P zjw@AC71)I!<i#ZoyoouQZ28H8Sa_1H|3X(UeC&)}8_+tr9pP$rPAgn)75AYr zluluX;C?`!+Q<`WPG^$oCcQO3g`Q@$>XTYTZqp7=IaW&`mq0r%9J1N{0 zjbaF=z!O8bHb%LxH}Y*$bh)=F$U~r!X8q;$M2{qlB)!oU!AfBy)cWnaN(?rO_gsU> zm2|PZl80Ar)!h@6wDyQ{A|Fwivb0f$z7`joJ{8MAkD) zq)0QBN?LPq!4t$wu47wUmQ!v{6zBd48{P_;hTH7-+B{9}mhWea)VA15bZC%ERH$;o zDRG|B6Y5k3Dv5$3r?6g=j18G}07~(=VDFhT?b`0l=5EyhuOb-_hn9@sRVB|Ym#P=F z@bLAU*M7RZrOHZY#*OL8r{+NX=!{<+|C|Te_;yPKKhfbNrXojdWch+<|Q*ssigm%QcwZ0NH=lLb5+UeEFB0CrJygD=+)Vf-b6XaF$dBot79= zIC6doIzIU4<8Y@k8AEkYJ+Lq8klUQx1@E2z-UaUbI@>f-2{&jcwkYg17 zoR~p!&FOa46C=;Px7M6+=wf8IGf;y6Cx&`0om%JXt^e^=d%;f}xqGnv2iRG&_VH`! zX@8WfdPP6mr0ylP?2mD_e$~ggrR>3#Cj8P$rCav#?5Ku+jO)&?eN5>CMfVcJc1yNY zH%=vWFqykf93WS#ZL+7^Ak^wn8?~O#(ij)!P_{y|pvM%TsmF(&(A*JnY-Xhdvi(-m z90sgLia=YEm^LREU4NEwRP&V0ec$48P*b?k-!F<~l4pG+;T#=Yo>wHr+E{XVQQ`A+ zh#|93#7tw7s?6sn94fe{ZWiRn1{at0?BMjs=G~Cwr#>1v!dH1sduYl89*iz}h};rg zak{LCI0e~#!)-0I6b6&43a=7{A8{_xtimS~xJ{&`V#4+rP3VPw#rZ~^&(mo722r(` zxinAv+8TX_OTNCP$eBL<&gIe!$0zVsIeDhW-M+QWwabA#ghx(p#=UZqtdaH-a}RQ+}5ha&o%1hIVf4;z_8 zcXK&WiE=k1X>>E;yurfQUMeB_m?+E`;>P%bkM8B%y$E&hAdl!^q8PKMpr)Fm29oGw z4JNK8q>c}Sf^X*dy8C*cVqb4l0RD6A;?tT;{>&F*SPV_dQ1aKAd6uK8UN zUQBm!i2|RGcKh( z)$H=)#wRbmX||}h3n_3W8Pt&9Phj9HobtuNBeXt(Z=Ds>4t7H2) zYhB#XMRdeA*g*{0&-PcH0}jjkae?dikhq5IXY0oK!D_IPKg8Cjh1{8Q2gcS;gJrn7 zgpRwyaGDP0a`cdYh zqcP;c$asry_K6U6=C<1Oy!rX;@zv%0&JJJV7vtS?n@Vw-ja(9 zO(Ap%ysl?a)LH9Wk3$h&R5uIsddQ#t^rx@4u9n!Q=hs_LN`URzXWml1d-7i}7kq=Q z_2z3`#J9h>AmS#|0}p6TFmX?~vNx6!<$v4y_pMLwIBD5>!tMVCIW?U;j4gK_Qv2I~ zB>TyA2w<podRLt*d*zuZ7++^CI z$X@)Mp=Rn2x+Yce{y9hJYk>F6d+$h252H0j>2xQEp4H%RNKmIP zl~P!Zkq%*9069rLGIt%?sj{g(s;kpzv z!JzZ*lK_fus_5|+Ro;1J1~2WHmc@8eKlgK5ZNu_dD8rHkm7cBb8~V}JW6HIDbxTs znz%zw9oS6Y!wJ*?GcaCJJ=qVVT!a#vbg1Fmbl!Is*7urYDz_F-wXf;*Htg0X3!Lyf z1wFZyKT!&(-)d9OGJqv!X@>~~H)*Q4rX3n4?i{(agVaspjO})g)Oq%FnYfEiU2mq? zc7!PGAxRv*fOO{u?S0L(`RNOYf7abJE_vtY#e4GRvGp$@OC!KueC%QK*V$@W!jHCE z>UerQh)dJnAb}!fuXQ`NCs*Eq973f!9proP`Ig|B3mz8uaIv&d*)6HbIC`grk~M|1 zO)~xbD9L=mo6TI&UGl6l5orh5JW7)rNfURsmwDuHp3r=R?o7e|=n{5azRM<|d6^z% ziQ4JO$_Mao^D7<+>2f&5S_pq%?>ypvtI~oZKL+2!q!Zk?#o{%gwCA@sb9R3{62wxg zw_4|)HxP{Pulotol03*E5e#x*xV)Yd$9kx5sn@KCwn49$-aOh>6G3j<4Rc8&&T^~T z80#8HTBvxGX}CMi7hgm+{rn|l)}{7lJn-t#CR#EX8ug=hVl?DF4|nvmqTvXl(Cq+* zc{RPcKEQ0W3BQT6(p!jzK6!@+5S`n@aSZkyC@fmUCIV+M+`EEB5OfwSvdH7FgJe03 zr9-D|30^WU)aCj*}vc0zdzW& zKia=P*}ohViUsF5_Q#Vy_4H4j0cU?Mo3v-`$t41HDdi^1;wniX{X+rW>m&}Xbdme} z`4#$ABTngFTanB*5qn_9|*7 zs9VQ5Mf*5^fAQQAkow!sIWZccp5Q)N>|@@;5mCV(GLlKQ#w9^t;+L3<&d74!rv5%o za=38vl8H6T(!qi%0~1FOs7A*T1(QV3cJ z8N=A-)bD4!V9$iQ-dS9|ntJFJ`ZFHv>bUKsv2*aG4LoxXta}g)sqsC&1r@LJC8VRZ zplu0#V6_uy=~0qKjsV8oizj-=!VN=J4yq8B<(_J^9{Y~^PhGbZON61BvqhObtk0J( zXNvvO$cn=ClniJqDUe{|n;*|Nd&4p zBktEpIIQJ9>G@xdxH2sj=Os(`%tP3B#{@TP4+vy$WW@HG4ZM#q<}NM{oQ3Sz41}-z zkW{nc*itJu`*G%>=lr8O9&tcE!SK&y?oNpvjW@yF@^X3e614zJ%-Z_+eEj6!%v5>32nstbBFLH_NeNpeH>5O7?|0T23iFJ0R;4$rbHB)f7;QA- z?CN~kPLc>U;l;(k1d3ElZ!JVm9h4)aC>}$+olL|2bT(VH;ZzP;SwxqVHJ~VYg7~`H z2=JCG1ZvMUnJJ@?{a}uV)csOVEwz4N-LeZGbFQgQmGevLoKK<)4(G-ew6ZirmYO0b z>e*GBzFiTCa;S||fr&;zDK&p}^DG)+7MR8jdybY2XR&%X8#_S>0JkbN*xjSH6BI&B!Y@X;qeTr{VmXxxR+#O>JZGj}B4t;KB zcOI|QGct0t8{2E{eB`dC>9|=C!|zQOK5hDrw23rvPA<*VP|0cuDbvBiF36%?Y6-3~ zwP`&;_OSjf^3c_ysOocSl9dlFjzZgXoAK3`2wwY zU+4L^N>RYMdXm1O0WZos`cuuR==WByEV~TKmK-+cntcHCCTj16{n?w|PA@%3WFERBB$D`@EWC-%fi>D{T8)4ZY6*HErHY|_w|XN2|^ruA;5 zYEEp{dAyocUbTy}q(Z%{eaLvFU266Kot83ZRL{Ys*K1Ysu;z_kT7wI*dQqAq>L#qf zh1h1U2Gf8P5}Sou-BJonqZ4(fkh+VBS%VzOy))n?_}O~@`O=6M_aE#tQq=M{C!vPS zM%Ku{6okg6*~x<4T;9;)6Q=C zkyVwdoUn|f4Tcd)S6wbNm(j{ySJGcQ1Zqmxlc;9;W|1QFY8#o@HdyqNjNSNABd&9#IAMWqc z%2p#@J6K91WtjPE^BW1U2AEPWWv@fXxd^Y`+BtU{?=yoc`uEpIrUQQdaASW>v?}Fj zwpuM$6kK{jGZSZ$7~EDH+Fru_+3eO9l~#3VjF0bTw_(m`VPWrx$;YRYZ`E#fId_SD zxO%7wn)u+^1SXxHoqX)zeMG8ltnag%@Rhllu2fo}*G9$Tqi_AZvX)G9#@=$Zy1y-c zer^1l#d|#+&m)g(j8)!)S_Kpv&#f0-4b{{E>r7l?4b#x``;on+P19I6N$_HB=r>#_ z)|Xirc&*vOUZ$-F-GW3s@Tkz2O`tl)euSf;E}F=Lf4%1@Gigo6gem@A6Oz7cYb&Kl zb62D>n6jXx^y3D`*qK?UIwmkn2v(vHSXx{RPAh=E`N06s+Lw4Txti-^{%zgeNF5hE zJaq$9C}Fy1QCw0M_H}ZdCVVmX2|`vtobVD|&)4BK#x`!LL_uI}M7A|FL*Pw0<1jYt z+$uI_xGiGNt{`MyeYy3l13cjo}cSFekC10O@TQ=f3iD2H ze&@2w^UQchP5B!(b-)2>h=Zkkd5kJs|yA*y1_scuoHR$UW z=kKQdWjmU3{cWJlf1WK@Z-dIvW~#FL4a)?Mh!22g-YmzrT%>{0tTEOg1)dkPyJ@Z`R`Ls7XW7&@y>Krf} zZeft;Lqiap%m&Qky>kNS4TBKuP_u)=5{FfBiWB0D^S$1Z4)r-wAM+ea-v9=6cE4Wt zj(c!ccRiyARDWLrF|0L!tS0lDxxKU0octgeQXER^ex2htoHmx9)LooTHF8I%f{Ma*F7VJ+w!#%K1pG}6ad*45M_Wk6Co*8ERZhn2281&@a#7|z&7Qft|XTyD^ z2mQP|dG;I;2$a;BkAB|$W%5%`gOcXykKaE3c4DDQI>~++?@hk@o(lW1XV%QfpPo$y z8e;EwJbC)``xnnA(46+nPECTIA=o77sUD_vgnxzzr`=*#$Vm_L8r>sYjoy^=-tmT< z_Xy6+yW5?r&CGu}>mm={?DdvM@V?vxKmV>=cB3)VsSa$}GzYnXJy0nZjotV1NTH|6%sGTQ|4rc{Kv^@}O9i z%5AphXN@!Q*^!y@I=pqr5uC5c_k8IVzrr{{j0eWKyVa6o`bc6xmpWMp8^Q(~bNoew zFm+}lW&w>k7x>^_DH?+yQXU+8ztm}7ohaeFa(|sKZ`e&$wo^-zP-i4I|{KaK*Sx z$wYiKUEguIVizq`a^+Xi+v!HSffGqiK5>?S2cOsOtMl_yKjg3u(gq$W?DXEt9bRdf zU)*zQ>)LSt6z8Ek-ta&I{%08O=*_a6wiEa8^ONzghqmb**@o6rSR3aZ(cYFZsWmhA z)7UZT{RN#Fb!;@Hbc3W}lWp@s4zH7*gy5pZy7`04tk$C$C+K=zadtLc@OIQ@aw}LI z7-k;PG7Yvm55mC2SUqU+pD#S0n_leZ+y|L za;`e)oK06J+-6=?z|Dzz#gZ?1=Fm%F=JHGu4b(%qi$DD0fUw=_gI!7FsgjY*f_bpZ z0yuaRT9MWw%JCk7KFek34g<36a`i#ifOC3sp=UrZE!$SAvAr>-gR9-yyXi+>e%fbA zdX#8yDdR6uNSZQqxxHGNhEWUDCECZ*M^rRUR0(Oq;fvq&tqR;t(#qJYltGkFa_Ss2 z)-FZ+*ARpK>FU#bVW}TBP;$hQULnn1k~mrG!M3_GdvkH+BPVZGq37u&9PzInHqvp6 z3(u_5we-?jyDC{5YLcGHZc&ISZk60lMDw9%Xd13LxQOknH6@p0Y8I^n94}^eqnTxg zlQ$yO$%fUx1}WB+#R>GaClOcaVyy`-MORIv>6EZal088wL=U>|E}2WxsG9&4PQu&U z4tOP2nZU&`rG!Ab;$>MhW)kyshFu_}&6NF8Gb=tq;Zt+?UW`)|5}%3B^}qlg`~!g) zTmi6<^@RCVAcnMC$_cfe?y@vFza!SYdp(ZgnDF{3SdvW$=eV9+<6WeyQHtOHtyh7bBvnL2He%bWYF*+25$ z@ueO;zSJDSQ9fHzWzC%yR);=trlU zoNxe?o@<{x{dV#luY~Lq&YK?Q9HU1X_k-WPFUE)ULi-*4&wqOl%pJ+3o?PBciTJl? z|Ed`Au=|MHG$ZcF8)%Konk+OUomIhdv`YkUmqNdYf%?)K;4cSb;=&5__0tirM8t1e z3lAIe-QPL;jpEtE5|haqgBtrkm`~nD*gJmP_bM(-+nyg0$XzrhWeaBZ)Y;YHM_e05 z_!QmoK-K6z{n+8fw^x(#tHYO!)TiGY^Erzz4(?Ye=Qk7+^=)*>8=gnJHcMFLCkXQO zmLyBW22uGf1gm|0RY{)Fx+VXFl6{@9aJTP~5}v#qJ)t;XZ}pVP5TnCiI}~*Zorq3f z`cD0!o};0Wu`!wjD_yMlmC_V^m1vKbZYp-8CxlPE{AO!1ztyPHh&B_Y86m@u(>0-C z41M|A(O1uZ`r%K!p)!~rs;8r`UOfBmPaHgKq=IfU{@Ek==a1lDY{Wl9%I}{&Cgrn7 zq2BoneDu|K-+ud8Z9RXaww_a4 z#^?EFX`WMSM)%$3+IddxIo;-3c>YK&KA$|6{)f%A^H}XoehN7^*Ro3U{SS}T@{31m z`GwUoe4cLZn=h=Ep?kJ@B)*uunCNEyjZ61zbB`AF>GIQTb*dR{V3uK)ctM+3X`gNG z;V)<#r`y~{FDCSK)!wtsZS{h-a=J&_!rDyyetM)FIA?7xC_!{A$LE_%Kz)4w!=tVL z9j$M4k7WBDys`xzJAl1ZmS2V$AS~9=?;m1Ec`$F=kDhuQr%2IQ; zCWd@N(-m@j0i64b4I`u`4`IIBFg?`dAA2%0TJ_qUvJ9K_(fdV z(bmxk2XuN&G1C%;Fo6$`tAs}Wrl#jOfk)!Ao}2bIBhEuDwgZWMx1%%QanhEj`4{K_ z8bLaI3z%uNH3!$mr~c=7Y=7&7MGvl1Wnpe56(S`-m2@HBXwLkO$85)S`IEz~og2an z=pfkQJSoua8pQ1ghxxaQTS$+VZ~fnoDA;e;BldQ>y^M~%UM@J1CXgBUlNGj=+0_n* z8x{w#fW~B6zGNfG6g_+#Wbr)FlAme^qV`QjaoKhWyzYjiCj5-;AAwJsz+_pcrsSef zCl!FBV8sz~Y@x+!Z%fXIH(S}GezVKdZ2!g%<_^0Xj}uQ~+q(7tZ1L;A)rehfi7$lM zHN9x@b8pYzCaQmUe7@O{-4MA!Wd7D@y;%9-0eIjuf+Ox>wj$h*CdrEJ|6F^ zR?`Rev1SWl-(^4lin6c0?eSQ@z{Q^kD!`2g?l=d`4J-DszMIOggs_^}nHOxp*`7Uc z>LZs~aUp*E1E-Tl`!{EdJyM@BBw9b!kx!R%9Rh|7o^yQ2{Kd;HoSq!q%!uxOk)koX zyja!@?_VLp>*;$uj&8KSjgD}NQQl;>j$eI6Sj6*X3a4{&-Nq{H;Q)Rou7STMCKoXp z$YhP!B`Q`EE-Ppaxnk5>g-vf9T*3orI{T;_=8OzTUeE5{Ew9SeWsOw^CYUsW*vF^F zWtVT4%eFaz!)$VCRsjE(&F%FFn5-yi^4jhIKI!br_UGFgsMMkjSpM>^c`I>6Tm3`? z=BdvQ{QU*5rju)%+_w3opgbp=0n;>{@xnPV0MmJSWYaj%(9FR{T$(W#iUCYE*V59F#-V)%~XVy7$jnVVRh$u0V{l6 z_7Bz#UUGFc78za!KY^*!xUO+o9Z-^A4p6Ug$wigUHHmi;Vj-KzI*oMMB zf!XISer{vhh7WRi^Win83x8S*y;CO)4f%*?1aLdt350nRo8a~RD&E?7} zvw`?+x>iVQ5;nm4X6DZ4-mwztZ5=L^62IcZTB?cqzh*l7utJgWB~D=}F}SfM>43%R z@;yO280wh#cOP<+#aorql5H<-7F%x{%{F85bMyrln3kLoMP8Q3_`O-c$i-tAulJ_Z` z5scf=;8W zYBXK@ib2$eTww)jHB>$mQ45T)U77|^)zKwsLQ}Q%(=}=Bxr;*R&xDk31$8W6QI`df zijffvG;{#fnpaBsPNZ#k)IgW8gRpw&(zU=|ye?TAUMi`dwoM-uRftnn6^K_>`R=Ke zR0|n}if*$|nvK%mqBcw8brR`;>~#~p`lY7U!|;`4LRR1bL$Ccf{i*+XMnXJ5*!-FE zrf;a(dD%>tU}Zy`AojP~jLQ3z;R7=pL59wg)w;}ehG3ajW2igAtzuK~`AhlBE;ne&L}6yX%m zA|fC`VtJ!;$bn&xjtdJEE8QdT1nhV}EEnqJk>}Fapb-m&Q>?eG@ERzT_vAWd)cg!5 z*A~^G@>7V$^W_FiNtk@HG>9)cLD98d3Fa+EWUL%OcAZ z`J!C}{UEg0=L#h^|zuZmvtldLp3NqFmR$dPFq_W*+tBk9(R*LqECp{XgGF&UZv~kv9mQbafcV_j6p9= zDCK9hw#&}oJvzfJ9`bDh6+5gK+xJpXgSbssGJ*{Qc-^3Gbf;4^V;G&Y^KA8-IP-Lh;^n`r^Pa*sl{XOjPb3$ zq;tNtdqFl~c5z42Pc@fzQEXbcdtO%zDX0zPtYp|I z@tM#H7<%6&!!!?|=;cWVPE%Evpg=4W^%GZGS{&NoOxH^0pW2BZO5tZzYQ~nFvCW~s zXcYG%G+r~~Hhq$yz>Qp+lv}Q!Fx0N<>6V6w{lAGcn#yb0HDorfv{-yi{XUoWpmL8_ zLpvq_{t>-WRJOrvLO)gWLRqo;v#(dC+2>21Iei;*M9QOZOOOzS4WZ}DT5iJn*LI%y z8_)(#y@d3V*97XObBq!V4kq`ZBet2`($6N*;UfA&Ez0`P)r?l{WpF8QRXMR-HtKtG z3Yi5Wcg+trG4!ufhAJyh-5=I07!+;xSu=T~5YZS8uR1|B^;ZS)d8l`C`mH_FHwSy& zZSt5`g=;)j!zqGRRs$wO*m)Pj*(nOU?PFW8(Zu{kM-vP(3X*&Ey!?DtevYmbRz%Yp z7ujxnZ|oPs5@Sth@6?u(`0T zR8Oa90HuWfRj`fu!af`)qmOdkCQ_$_7ANoE*F1~F)Pr-TA*j!r8=i3aF#EJzyz?4~2!gR@cIoCueeoY6Wi93) zBiVf8%*xbNWDxzD?cz!1nFO^FPIYKUR_;#M*tBH5mWWM=8edxdR?uF@?+CNyszwHv9nl~gvq zly)t|A4ppzZDsohg!%)dsClyW+FtAr3I9h5+RQ{XTo-eBEvpnYneS%O*Pv-sd2)qy`=iWe+jhc}Ms*p{ELhje%1oD8C=_u8 zUz!2{$0l6--HvRBR%TJwuPYm#^(#hI!KNI_{vQGTVR#a(96@5i% zzuxj5^H2Zq4_n@A7W12b>1L$5KDTp2&++c!=07*vCvg0FQ^tpB)vE-!ur{j&amXJk z@KDa0Jmc8cZ81F=Q+a<^?oUYgbyRrH-}}Y>oN+R}s&CU-b7;M_)!L3zWfebJaolMt z%OozdXDBHqN5uZ-5<03VLD~2w6i5D080wmM{Aqe?W<#ckj}Yq{OI!SsMX&lDHtFL!6y)fr#O($b-A2|GyV!uFwSVWSqaO`aZOT7XWZ zm316WAFTBFk@Z^LSq1qQ8mk2&C@B`ECfWYdr4+gh@zY!|8 z2XxiRMT9_E#pLqQO7hQKY@u_tpaY+yaFR>tk=zCDZ|Q27E8~h~#?5s~klQYSi;|3r z8>K8TnM}OSu~!g5AZpzQnbrR%FO0BeAC1Dr=|_BxK3shg1(nGytq)W@mYPhC7fCNX zfzAARa;?UNboyB=8n882f^Tqu!uyQFTt7t$`uW0=q4oLzSbC)^Y`imU6KI&;HdruX zR(FqA?5qU=bA3H#T0Ul`vdD_8v_~Z^) zci!=CdgvD{MVad)OZhzOU>LLVsq4Ta+~(ft(`VmxrK_=Bo;CLQM$RubV!!QRDTiV{ z{<&NA#IhjPt3p|K5>fL{zwd{l>-m1AAMLu@Fvat3*~#qrvyE(@KikN*BS{nBIgz+(C>24wi zn*~GI=A0Fif(*^f&-ioVeP~(KkjIkX4kul|B+Y(J-g4U`Ze`0_H2-Wr{mFEWJ?u>C zIuSKLbD8_WUaA(0l*W;%$W!L|M3`Gi%>g_M(Lp3$gDDe1Qxa7lF%ZmYEf$%7y_bzF z_oXP$AfZ`Ky(zutu+rNrTbk0XE3u&2-wMIZ&-0qKx-fQcl&14Z(j_WnE;y=`Rmi3J zn0RxkFGilJxFb#m@c*VyID($T)w}BZlH2Wf-j{-6P5mc{&sXygsA+FI+1^fhsagly ziSm?P6@=$YkH=vKb!WJp6q{V929VRI!X7ZC=_gxnxzVoUlOcKplD@jS+nz11+@r+t zQpC=@%EiEbQlkN4#1$TB0v-zIF-D|v!WOqYm4xF4lied||AyDxsUP|ZVEDAn=Zq`mFYF3l?Ms>ne#sVo7ovW@O>uM^{R54agO~1}n{1Yk_ zAx$w^urxVEKUA77O->yvE+!EU(=!i_F6A%Rr857lHd&FI$E?QPlDxW{o0Mf*C>CAmKwC!IiNbf>D zO6#%B*fo7wmiw39wTWiqE)NImJavs_jJi!3Xf9H7%4yCtd2EFAF?qFFqzy+s{1a&< zU@&Rzh9dyho8!a1S3744bH!O|`r`4DgTtR+olkZT&sFI>6vp*9XT&#C0IK~W1s=5P zqaBPj7BHHFINO1Cf*>yIxqA zkk|EQylB@TzP(@ImSNVC2E5w3^~ke+_;AsxKJKA*s^+rFT^+`il%hXSOV*DPnf9I5 z$txWrXm;m!AEviW^A0Bh?md&zCw_Sl`0$wKl9j9v_(Fqh1Z4+LU)ruj+M3oSX9lQ!yNMc z0-;O~j*)H@?!v4IL$r=5v?D5BWUO?M}90sQ)bl@<-s5#~Ep)q-CHRb5=*T~bw7 zLom5aJ`vvrTg%FZowwvz0(F9ounjkMg6J|08h`YG>2$#n7Qjx!Iq2_YC>;X;8j_pF6c|B?TDTpkM z9B~dE8L&5tOCo`rwWgv>b{Z#Dlv$GRq|l!t3|Jv_=HkkbPF&;DQ!0s$! z1Dejw8o-iKnl8kqSU!@bl1(A5X*HZJbPS1Su%s_bmTB3+-6Aa8K0&rc!^G9FWn7Pn zO+=uiiM246?a8%-%cu~=OP(D)k{pe0YQ`r?XV9irH@et_ZR&h0+MzB~%8X$g+bvr_ zTf%p#dP>+O^0l}NH$}Az_MYO2l5X0pga))#2^(6t)jXtqFWF?eZ*c5b=_t|CPnwI`=473${f%93s?om`h9 z_xx!gWfD=hjHUC`0W)az(x5bZY6h+ZQDNS)+#pgs4>ybVSE*0PF_*8c8f766cXx{` z_5uybMy|)p@!f-k2y1}NYql5jnr6TM(2LUMqZjcKLuoIf7non1abs{>;)GUo%pu(9 zYHg*u^FJ*sVy>JkYRE*`zQeoAe`&^xMiJfljNQE|GOaDi@>cdE_e=+}_T3 zo{RMBv072gP` zz$rCId0W4%f!oP-tKt)$cTG-BVCK~XZ;y6fdomHE-`k_p3Yvb)+W=>yTpp#+2q+K& z+VD_MM`RJQbLk>vvXWN6IGY8 ziD{OziR+ZKiMFK8vNj1SNlQ_hBn_E|h_;h&VAbEkPp{eEn!qey6I|Ct6Vt4VCazN# zO?1wyl%YwmO~At0Tb8aVRxFm-G;Dc_x&>uq6FZHUOtHItG(YN?Wwghp8}AQdZJ}|4 zqiHG@UJwhDU6-{FMH6KHj<|#A*Y0%jo?U(V)HV-03ZKlMmwMy?lgIJ$K*uvppd7CV zS;%SZTvnMTQtqFtYmAyr@CoCy3*Dc8#9w&#A>w#d8K-RbyRAuV7{2*|+84-4#ASP?xB*6gN13J(|4q3Ez`Q=eQP zEa)Y(X22Wq$(Wi)BW6zB+HljhSS+wdv9%)1|&v_Qv zE?dquk|ifsmd=Kv)oo{$5!TWDGIyPcMxR$W+0<?!8vv%GCyB_2; zSN`Fp)nMJ6Uxz$r+`*)^VhEAM;rYtth`m#~JQW;WqT~$N1Tr&c)vA_XCsR5skG6}T zdfMprfj?2&)V>{>qy*Vw+e%;KHZn;H5KLqbZLw)$H!`xm+s~y!ZDesaMZ=bpv*}_T zVOr>otQvx6)vm*GfNUdc(_;~nki<(}d_&&SM4EWqGE!h+MoED7_>IJ6YuE2fRblbdv#jddZM_IvGvw7jm(ph0Un5U-!2p!c3FgNUpNBc|lW; zUsv_cB@O#j5!y#>oA88NY)YE|N!awAWlexu)K)8naKAAW{{PFdHJ6*B=T8y0Fs6*t z=%#W;C7QCXjic$3d&|q^)HZbcTvD=a>FLS%@b@O@1dnhY=36(RdZ)Juv6{M3q;-R{ zywQKOqpb&`Ov11&w-DO6F|* z4v4%7+1k(0wupyiY?DUs_c}fk%z_HR%CDA4T%|HuHeq4*t5u2Fc9&TSD=KDofb%#v zl_aSe*7?o$Jip992+rh1UjqnruM?M@i2d0_x$1F9FJULlHH5|GLrw5nR}32LU7b8! z_|cYv!PoSTm7U`w140L4HI~LtCXNuQ#_E-A8QhomcQrUD*>hisq6b9_%rL~XvHDi3 zI)z|CUV~3=IBDbbq=uE>I>W@oFiSPBZf;IOj;Kb#)V#x{J`0Svh0z*2{i&E-I91`E zu18)+@!lUF?3dBmHYU;X>mKVee2e7E(a%53Yu*Z|H|^0g;AINmSm#O2qWqc;aU zbjpLLqbDD~x%>JncNW=t^3k4E{q^KPw-Z*0KsP=yw< zG_k{h(_y>ItB27Odb~SceY1t>jn^WnqNn!nGyC_s{rkfH{qF0pu9jQ>_SO7)>&gF7 zQhrT6e5I&O?Yy=kra@%=FI(?S>4$TgHiJtA9OspvBK=z5s_4PMfPgJt_`z-!GkH0VC?{{DS z%YXao-)ViEQg3EYzU4VvOtt^J)K`vh`Dopo(!I|AGD)xhs+#_Hs?^j~zWc-duhDy- zRDF>4{X^}nf#~h};){j&`m6th?CDb}=jUIL^M5GMZ@<~9vU|2MyT2x?ynn;%@(U=bHLtF!+Lw|A(`R z#;sa*W7q#;{=J>1>ZZO-TW5WgXW>F9t$V=zOL^zm{v#Tq%u_<d})*8~tyHf7J!Zw&rURdzqv|`6>E}oBp@=Tu+HBx$vZ|TCAO-uFgS zdpRgVjZg~tb~cJq6BOnf$?)Zw^ZbGgaB^%YsdiGwT;8uGKe50+7?DN`u}|6Cy)`={ zM@E+K1Kq&b$mex{#4uGYegU7ys7Knh-|BhMsO(30ei8ZT({wI(Hml{$WqpjYQK>kY z++DMm9p7R*rJE7Gn9;txE%D#f0Q)ibam&~6CyRJCuAGFl$ZRl{WaN1|zwIBsz2kOt zD{^msjz)MQ(+!at&2R1$1b|~xKjyamn_1UV>>f7t3?C1$X5pqaGiiJ{$m3U+Z`}EI zE_h0i@O@%KbU0lktx|+L@b1ID?!YqR=xv97iXFTD3P}U)Ic5WFho6YM*aokRW`ed7 z6C38@f>(Fu%nTmT;Cy~_HREQQ%8+OdKHsubLC}XxllA;>A#hH{wMs7b0L3W68u*?| zY{vE$-uQr+0P89`jgXuPV^v~ix3$%O`g!Ix@#SYL-F5Pop%Sg8@y1AQ5*A)2JBnah z;a&=v-Yt#8cE!QxVh=Rhyf`?zT%bJb=t>UN>X3a@+vP$o{ma-(`dq(6<5po_O9U#Q zz-1AavB`=@&ty@mK3^?A%yNWuC>!4lT#*8nhwO6214K0~>jA!Hvs>M7tKoEjo0$1) z@IFs=45BPzI2(}uq&ru{Ul_n0%`e)5vFOfjbOKvvuaeZ?`^!t5Eh08oAEJisEmt@M zt+bZcV7(}@p7L~r?6k71vGCP+W|H?jhE#+0baiQ6L#lFdZfpiK!`Z z@4aUAdijz0r2)BL&o67hDJSg_cnYfn3fuq#k;65~e<0Xd%G+q`<; zfce;JfXLUs89nRw^!6&lI)eh%ibgP@OBQ@&JtT^VPM7d53LqYPB_SvA%w;x_!8@gE zdNY~lkaZuNhIQDbsb5n;EFzlN^t1*UzmHBb+IsO+K6$^g0(>C0lzR@5RNiQ><^-}` zI7;eBhluC{SNHHEi+oKTwXc^poul*!AKB@V+gx^aBTVZ!B8Xe3yeY{kiVy4K7gBqH zB<>K?B4t%?t&V7pR9u^9=uEFr{7x3UmDX6TTM5(*ED31=m9ln!Tj_z(Jgro{qNLN_ zNRnec$V&!|P}e`MyqVMvoVwiHYXM9xZ~hnAs|HPndSvOsvJ#i$az*dxbrgL2f&nef zOenpB&ZEroEr-}6D7&gdKj_U2@6W8+_KdD=nr89-N6shHZBK7?j|Nv`yK11^FVS4N z7Z5qvNxUDN!4jYQde8~fN?FBgWRbz$vgWBrzp6H9BBewPBHiDsLYM66 z1G=80KgqMryX9TI`7Bwh&ooda;|@wp>#Ri(IX^5{3)9O>4@+fUu}l*ZLG^6$95@J7 z8x=x2j8#jS#Muhj*a{ZL*xR(EO1N8^H0XOj`#}@*PUNMxMod@$smid2NX?D%jcVEw{I1FGvY$9i;~I&sI!a3QQhgJx`1~?mRe5VuXU%edf zX?-F55H{liRBcy~!w(<)vBjWZhs_SG+T9ovK5yYYy`s)M{pi>Y_p2p^Qeub~~3>zQT zIJ1uOxHT@*(#eUfXHMM$e1_l4o9SCBY2^&$=AOBIkha7LmNAFM>|#WMaIs07f3zzV zTn5P`WE{#lLlm(ePFiW(rT|CWeFNF8CQE6?eg9>p;1(}a+v*%`-=ID0T;S9oVT);8ifi*o;wGyKHq-q4{9M^|Uv{rqH!ipteVbvIqIG%BQqAmH z*CcRXnvHz(%_=Ls`YLy}?6-!NsT8Tw(kGVBAjq@{WpG@NGmDgWlT(JS-_5VnK<0qP z-uFpi@GrQ{qT&28Zsam=O|IoJq#=8Eg&~d`7xTAVaK_j+Ps0Q>Xlx8MKiDzcE zH?v$dz7s=e{g|5sDZ3JYmQ1=p73KZRO7z}eO$#}W$C&6WKbCiTp`R7n9Qa|TYuI+d zK_`YpAG9`JL>$3t%mAiNwU@;X#w(2F zsc-l$*rOweM-Lp!2>bp^yr7Zy+(G#t2Rq0!FF3J}WQU!ffgiFx#Wjz_arYZU{ z<6ip51P}bMz(Ft|Xp+!}nK?hKS!~usS-C`?z?hBQE39E05`3&kX-i|MjqnhLlm=N0!~tGR1PrLwlJaC z@}j`f%reh);Pgblq0qsYZrzZrV-E z5Rth3GAB4hyZ8cyWpeXr3ln?lECHXFan`gmot$lh)yv zDK@WL*wY0qP5&^gI^PWczPC)ias3+w%CpGvPn}&H;7Qk+eP$JL{j85vI#`C^En~t9 z-3rytC!sInig)0q^gV^CD{v(HtoOF6dblH+-pp-4y`rqyOFDnYo&$(zvotFf9)lE` zjMQUW9P2zkF)>sf(Utxv@PL?`le8O`p}Kd!R#4f$`RIA?)3W9*6J)(}eJx+b#oJmg zd$&~XA-c8o;8n`AEZ);rG3l}WHGnZT`}tZC8q^yzD7u>zV%&UC3QRx5fT$y0drBZ| z0{AnH@7N^Dukpm(oAPH(U2GJ1x>Z~>Xj%XEk|wT+Ya<@##iJQVY`ui`_)Y9L=P(0BCx;5A88oh%khi@t$smts8zi|S?4sKp$%}y*IWFy zswRRf(9H8I^78CxLwpdmqtO~wGf_vUg!xz{mS1y*ZqS);84Wj(pw8abLGsE>Bah(S zCiNaLKrET%Jlv3_<|hkrb|kM^TRad+p#ka-9eEX}5|}uRR?;0$#L9HbRNlxBN#B5!1X5Zqzo}t3Y?lm)HztJTaf!a3xo|7|#1@B`J(PBjhe?^Mik3c3jNY@6y$9wkT|i z%wl>;c}QBq;L|zmgOlh~1Mmn?rzJ;|1yy8NtEamUyq};oHR?3~bhm$rI+|Q4K)Qv@ z#qh_SZA=39sc-nSo`*mmqEQ_h`b^6uftQrH0k+Z3WmB&;F;(g)TPl}>Qs+#~v*IB2 z=EkaQ=2Brdi4Ls0-AxRKwN6xMlswe8NdJjOYqR>vh?bRJ679j4(RmN$MSxY`k;=wWc|6BvFu(IR|OZrH5o10$-dyU zIZ?3|*fCLH!>=R0dR{yajE1>-vwxODEM@30k3NfuPZ0^yrTaGddSveuFW%l`U|=`Q zfCFF?(dwamo3qJf0C2(huw00&0p^)JJVJ36Jz{GkcC|;lmWg)W@tEtZ2rsJQ;!e}0 zr})}QMaY82h^~nu-zL9Ac4IBo#Ko)0&RwM?)+~FH<)?K4^-G>AIhEB9L|Ku_$)vOB z5F8Po@qBrv$c(wEIz)!n8>817h|ZTp?Au-5p^y%9a{T!c;$fl^(J+^TPMoBoov_08 zWAFoUM8h^3caF{a`RBdQH#=EYdf|d=L#|ho&&H-Ptu43D9krW){*oT%nLFRRo-{1Q-R}xye*H&G8v;Gv<4} zTv>r4qZZUfdNlP#B@+>1W|#L=%10iVLh?#5yUF#2A#&s5U#z&4!1Wi+POYODYA2uO zD0`OE^ga<@>YQQ79Gy;OsxuRvpQj@u-tt8K@++epjh>)2O&{Wj#}8r56~NDY91z6E z<9gC3C~O?5Ah(Z%|7W8@b*GVX`d82VZW=hL=@9z%~-QoOW_u9r*3@6HD#(#pF887)A)I8v7H6fOd3xb)MeJY zE6ng~y?@)T{fszSNVW}V1qQNZpk_VD*!$FEQFWKp($n?yHqiQsEr-^pWC7Dp!6FQt zLwoonMXw=_btZ4)Tp6>)zpAEdx^1;{B0y8}T41ZnMVCj(Yieza;#TU_tdk8lXZ+q7 zc2R2p%fUtf_sy(nbsL&^ll(*D+cZEgVbjZ)2)w3-42#=((!HEI1*@zTzYeGJ(nTwa zv@oYm(-a^rwz*F=(X12PXu+W7k7%@5k1zG4g64`Lg4@~64O{LZbU)h^qj2AY1a@mJ z5yTrAEvXV#AwEYOYe{rw8riWpgEYmts#}Ptd=oI$vrDTrs>YcegY|1273xT{4ES!N zgMwc~L-)3|Wv>C@Mn5L-;s*v@3ZU*bRXI2pv>2RkPGIALqneNL^o5czZB&q+JQG3W z*_TU`gl)JUSzlWiZmWWw>N|%{EGi!?Q$L(3WD0J5;=#(c<^hRMsZJXSc81Xm=h%L= zxvIRWPq%UQCi}XpkCH?RZwH}=1n_&*9Fl|<`yRT#5t=o$SP1@_zk2Fg$li7of*v!! zDU3Ka^p74s;Ck5rhf9w8S}|+E`gmrNe%2XXdKt^TCh3QgPwFX6OiylY!rnaFL}g4h z`73c6I!#PZ&TYcpoZCdD%)G*IJ^!pkNjirVit+t*i^3sA`obgSlXxs*hA2D|MdCrm zsf%lmR0cz7goIDsC%pM&Oyc3$7(0dB4mtgmg*KW(#TsCjuB_BG!0@jz&=qbh8U?_y zz8$XOt)#Sm(#i+vZa8xd@M-)eWM(`jQP>?cAl0B`J{QY89{HAyS9=J~M{2Oh#(fAm z9hl#vcE1uYf8nlfi}Y{vD|`pG-VpIM%u7Zo&alB>?aer}awW2<3mBFe-}d%>DRp7HyI5PY zH!{HVrFk{IxjrCP;|BBwwn{z7nnFlzOKp{lOcsc9gAt^y&^AYWE20Qun|!@0aRO4ATztCL(ihf~^lb`z9juHwqUw^Qcml$s~`T zdhJV7M+fO^tA?{}9d$X6hqbJ7w6=B-S)LB260n2I5_d3F5jr?|1QO}0yuxQEmuCAq zSm>~qr#sXqHc@CWpR91Re7l<7zI*V^b@|q%~7 zt2?WYF@_TvcBFm!B|^kFyXWZ{v%g}tiTFBzmFP7-+nCDZt2*#h0BR9bAp4v%dt!jc zm)8zN>)l>3!E9tG^mH2C+L@Z>#oT-DB`iXgw4qC`C)y44pv)QOYOI&&!@y$ZEE$2Y z2ISzngjAlgX*N2pteYD?{b><1z1fV)#m((>Tn>`t;}ZTW&VA$N};e?#gAJmQw^DDO4Ald;SiyMDCe=B8|XvGP>{^{iA6~kv4owVlQ(_> z%x|2trQLmEkk98MTASd}N34L}T~ut$jQSU6TI+HSiZ;Q{ga)9Vw&bC$3G3CZ{lTb5 z&G?g6ir?)A&Pj&zy;E^v)yLY3*JFa?6mUl<^_!Ol-djrkPg{1nX0UzhMlRB@W`xzM9xC&0m-*G(c#RxK)S(tPTdu z8c`O2y>~M+!875Yu^PBT41=0fo%W>6{XJN&8s3EJ*G~8|HfbJz>PckNVK=889~3V20NDrb zgLyl#Y^b?J(8|a0?mUEt>#}Mm6b@DWzOHWIh;nrw?v*RQa#}ja==L4cwJX{3oFp@Q zg3n{9#e+8|*KxsXB_G^;=Flv)I==jMn$SNlFV5$8H$9k>)!Ql2C#~Cd(=k?NGdb$F z`0Zgf=t8+cbJvr_Uk^{av~gD2MVzW8y5ODpivHb$czL5E>23mVmaINi&C(ozT3h`( zSVh7nLIY}u663eGXf*H;U67#`QZa)>;J$!Dlg?kMn(fq!Fv3MgX-p`kJe3lnlkoRL z0@#h~f7KWsqNu!8eD;*Q>vw;EyyEZ&Qt>`c%msfSQD<-sq)nG}I`o(b%4i%&yj_uC zrD8;4r`1}m!vSXdp=5QN^ehs3!ck82@rWa%uCp{Stt~(8;mX3Iy2gR^w|AVFuchhs zQ6IitaCXa4C;C{}J2X#rxb83S>@Z}uW{$_dKMcLSwEi%QAD)Q1mx!Gs>-FcyxjEq_ zyZzsmtE*j^G0<50nffG)N_cB0Fbg~!T_Htp)F9vvi^8*D4p}f?+qM2O$7*2UZ!Tok zR>S8sYmEKqg&9*giJ#u;uAgn7*CP(>raZkFEVa=K#~vx&ey+qy$E1RG@KzH#_1;9# ziV=6VLV4}7uPxM){9Ij(R-x6cj%segQ*=*>lGh*3eukWj`NM~%IgiHP;`Tv8Mx!qm2(z-(dM41=^l5x?32Qm@oT2Velo@7`;?L|iO+#icbabnqke#tabLK616aMv zoj|vz3RPq*=nvw~7Wd1@M^nFCEFZ?p8F7sWdP@xGkVC^Cw{N>68<&u?lSlIJ_|k;* zg_9N5mt4q>gj~p`{kHknE<jUM#X?Tkm;Y_RVVq)dw8rNtnvU`=pI_E-j& zEJf*Tx1U!{;lGpHc)H!Cabw}?uEvexbZS`WZna==1}+ch)%3vvB$PIx`wH2G(s*_i z!lsy4*j|*GK`H~J1GGE2*Nf%YEVM(fp#n*wF0=&-fBY6SE-kd6{<3tF<(?vbYw4_W zPs?Tv%OpBs!9~i9c}`#uNz8O9{h{J#s8>^>MWYkukn&Alpv~YpfHq-HE^U4-f*NBM zeccMcT%u9iv?-!YEKXcyz*NV4c?P(Mz zlW4B$$4Kqy$Akg1AIUx{{HCK~b5;s+K}6}egxtmk(-%F(2-J5OrGBrujzAu%D>=Jb zBy|@*Ym8S;YGkz6*dOflh`pITH#2_mhb>!(2#Gz`E&0n7)6H}4qJCW-%JuU6o#qW! zJ?&@G3msu5oXdB|vrqm#PH|N3mZ8{uD(V#HQRZFXq)dHx#6^AY;%EyyfhDv1+;sNQttLe0nP7}`y_;wk>_9Rb`Uhj14flNE)TZvn&oo^PsbfTF z`poFE1$VyodsmcTzTPthPbaAH$gD0q`5|4Su&tvyu1Yx3m<5yAW>zF_+f|;Vx%S18 z*sTo@-;4~EatCh=Sxk5epsA#tEJ}eb=x6A*dUC^STGp`82LG2Bp&Yc!OWuLslrN# zSw>!UQ2rKCCRlJr(M@mm2Wu#Ea`D{D9kC>DoRQ>D>>l)DJ2%O&@Ep$H)BFqC*d8WO z+_g%dqxTCORnnJi-JG3QRZx#eA{g~z7=}@~n$BX5Yt?UqDPyHu9~eN}RqXYM+vn!` zgWbWu-cN71+Z1wWHB7%%CUatC=*to&HLHtzx8x<*4FpYj2U$E$X6~`PR5K*R27Gbc zRhhQUjh7x#EjUcTB+U!Huk0*zZSJxH#)ioK+vxR8)YpGn; zCLs(Lceu0Bl+|ui+BQ0;GrMd`dAL5C>1+pAI1YpSPMK|+)xMINcm?d%vE@lzwM++~ zA_{pCV^7PX8YFsM2|l0lY?da~l(%LSyyk@O_*s9%Y0YC+>PCzDyhK!+)V|DH-RdME4(>OQH9Yiy$|m3 zvoj$!I)~(1$*8oDF=|QyqDK+^n{&oK3}*oOUT6cqlOCKIq~Hkmy?JY75pcJqcjP64 z%Fd|#7Ep%hNT}TW&fwfU!Y4y7OI;zDUd(RXBc=)CI=RiU-sYLlk?1q!fd{nW?E$t; z8S4H(4UqbQcH5ao0G+Yxtybc)R+z)}&dq#klWL~+@@64WH94>BD~=PMbKRYb-)_}w zG0FDW0eqT$n{DBI<8>_^)2z9sPU{@*E6}CaQIn?b)CamJY#xT$ z=#=hxX8?0Xj*XXr8p?@F)(aXyWu3Qa4a_}h7uxeA?MzslYW&uuM2%UU4n+;K&)1-3Xy zNMDCXQgCFtvMYo&VBdJv5EjRq`Wv446Az72tGP&MUILf8Wr0Iy_eZ2Tsg(k6AK1J7 zqIV4`RdY6z=OrV-H0aSs9AR1TX5M_(8REG+tL-M5Vhc*ngeh$#l<eo;=5U!`oU}qnx0G3j<@cbL;GFgqAp)o zZ^P=_4ztpAk~qe(BVFbNu`Nm1sqn#?E>CXGj`B}GA!qGD<(UwR$ggyWSUg1Of4xgs znf9h0gTNvMfZdbl&n0Kq$7;Zer#@_UbA4*)UyOUia#B*=-@v{=Q;gX6TPC4Bg1rh&Dpd zb;Z|1MO*N?xRrm#=teur+4$mhhjZH6B=Hp4(<0MF)amU}d6U(w0IuIi*&@iq{pCCT zG6eIpextc698e9yo85Y*#`A4DFnL-nW?#m`dd-?>C zf{>336VQ(p)ig{JN5oaq&n|LDF(u_#i0AC<`5Mlb@48ehP%?546DWgjGVM_kGu>Irm!4 z`BNb6R$! zy}dbgI&DY~4ly-Y6&3I8oHgb*uf1gPtixrc^s`KkDS4RucpL$LGkJ6>ExsAH4j1vN z7Y!w|$j)iu&}Es-Bx0PdqTwq{X7Ag(k|NR4lHRE3lI8`De&%r`a$S6);d8<$gSrHh zXemd6Pd%nQJA5;;cGJ~`Pl=_jG@I1Er+*Z4KM8sUDbi0uE1DL8Gt zFL6F%$1wjOl-s0$*tp?r)NEAgTNGw-3aq*R`3S=^n5V9svw76=D$6B?BL##u1Gmy1 zJVvAqs0p1NHtlgVwjdP5V-$-;6hOr0sybgU7ua^#?_;O4@(z6Agcwvl`<8DFP={p~ zW3!szDxH#4B)vd13Uf`Cdv%@0R#pO{d_*&p9nqy9T@a*|7Q@x0CXVQGAJg+KO>7-Z zIKS{xSWCiGHz~Ucwyr`ESE;oeM6HBbPDexL)>+(dGl@O_3DV9TI#4t&1!1CG6-sT| zxXP4qKD*G4`|~Mr6nI^ry71ITr5j)w?pA8MNWg}(7rc1r1NZcridTAqE~jJ@v{Ixi zS*MXT;q!BILxk14bzea8D7$bJ8Dhnh{s=`}Dj8yMG=I;X=jaKoGFuc?8`nb=_ycdm zb2c-;+YRx_=WdY7A97d^;df_upJubcOoozm;52Z#Ce}a0$Z*uECgKyk!)UeQAN|nZ z4|d9;Q|3ghp{Quch5zoA((684$yjlkhg^WYvb)L1oP?5_jN! zABy`Oys4gY#sJs&N_8e4+YOY$S8|@($p}A!ERlN2xaOzV(l=ojRhip~wV;;n<*ESg zl{hZ=lUoHB1wLr5QXPC+H#!KmkbZJYwOEXUVEFQ$C)~85%)t)=k)CntAj}yE7sor6 zk`9vnlfCfNK~QDptkFU2yye2B-sb3FY_07;TY$-|DR}urT|l=fb!jorqVV8aHK~AT z1(~X`l_n|?1tR&OaJ95fmufRBDe@t^zbG^<`ds){Myc}6)3k-F>%R}5nxKQ@WjB9x zt|@bB8NbPi{nZxJTm#gKD{d_@a#53g*vx2^k~LUp*P$xPG$0RhRoc+3#I!!i>2PUH z4=TdVR)WUd&>88%6}?~TDiWBESE*XCy2JHT!%wD&-v~B^5@F-7`qu6qRS6#es(>Ea zqzvQ zgl)cgG^Mf;Qz!9XRvU6do6Px1_@3oT4;1P>RCn9dNnqMF&U9~>iSph2hR_#_-G|e} z+L$Rx_BK!ns&X+Ha#o__xJ9qI8wHem;cDY+Vtw>2J{;6j31<9~IP6#a%_NLv8o2rJ zFv&blcx>r40o-f95;;6s#6|ZV(KaX-NP;b>E88&OnHAM1kmw5fItUZA)Vw08+3o36 zI1YUzJ=UHp*+P11Houb+)d9)qlMI{gw3XVShb*}#<*I2F-5X82YpZha^cI?8s3oYl zX1UWjZi9h}A46!ZXBC-U8+hjT)Xu3I@IC)~t6;Nft=H9U(rSGL_ncj=d6vRQ z27Q`})Z)e|l7`Bxe6uZJbm!rOJ)}XW6K#uZRG4K~hyn^{ ztOBr`U7FnLhO)86)DA%)<1rp7l3cyLPgd^T||f<0Eh2zI2;aF zT@8kkX$=^E)o4##5;(?{qN(g9n_2?**|Jm`N{(Ysgv4d?eDm1NO`;loDg)#wR%Ovt z(bb)U^{p9428Kz^u;CTO8|hxTEv@LOFC|yKgXDLk zYqaUh`&v#E)(^TJm8v4XIh{RXDUuFF%Au)bPE|vtE0lV~!Ea6Ahriv+RlOuJ(1xkG zA;-FzYe8x}3x-b;VIi)Aj1Ns|zleZS2iHOu!Hohb)#qdt|W?WnAW~yrP{{)_mhw&q|jM zyydGq*LyWioKgWa#Y$%6zBg$;OxT3}*GOJr0PW}9=hRhSzgL7q$|EAYl(*0$Q zq$QnhFej<%y-p)? z>xLH9!HyQ$&wed~GADH${eX5qhE|1h0_)Lm$=;DhoqzelOk=DoXvQ{wM6@90QRcZV zo!)?_8(i4+=q&f=V>Vg#cA4IP;r4fNj5@%}P@Hnv{6<5=vV1&}k&adVW&Ool;sreMWnC z&NVe>*gdcT(Qrlm8mmX5lWecMsGmDgs;&4bqv+~zF z$Ji#YM}*!m%D{JfFt+S;n=utBx4ZF+m|sJLSpub$d(stIk$lS)Ii#Lxi5PZ%Te%_D zd`>OU7Q;#zd%r|sGud{734(3RVl}5bH1fp$ls{5QyvY)nwY|{ThZ|&KSMQz(lAkuu z80*m@ObGQy##ps^5VD48K4o%WQ(JnmofL82wp*Tp5HxB$9|vVC|%J@KR<>A7k2kHh@B@@zGg-HRH9)q{iv;iB7fG>ph;m0rM*N@CDe+T1ap_#*XHja=2fnj zhxvzEtcNh^vSiP<;2!p1eM|YYU)-D6tL8c&z;(}kge>G%AA)(0HYB{kTDV2sO7K*B zs|}5*xf<1M_6nrKrY`zHdOuuFq3j82ob3jXuo{%MJ#Ua-*pt}gDpl^xiOaZ7L(IeA z&Qx1rnO)u96UrWN87;W9Dr#KjWxKZ|!Sa&IEc@euE^SEv`Qtg)kQlCy+dnQX()A_I zq<{!Jh&P#GD&ot7zxL?<{Et8X<97b(kABDWkH^cK4Hv=w$dfUT3!*%I+WygugV;#^ zkt^;F`=c8ex08&z*UvY&=uo=r%ftN-7e`mW>&Khv<>B@F>&f*s1p9cb`L)r7=&MgI zkvoZB?If5H`1Cs?IolMRKLXJ_eBgzyORDk3p`>(dnJ!u6oPz76v&Z%0grS=amu8!Uw z?N6_)!CK;XSTL~Q@IFWjM+>1g8l0K{UF7=7=EdZ8wB7e1;c!*Xe3vhZE#EYJw}?jv zho@KSSUQw)r2c6Nmw@72b?{_qs^_!yTvZ-*WW`FU!fvk4j?GVWxae?w*yu=~|9ho7 zIX}C&I{Z!ltAw9A^om>dbibKx7ZplfYgc_cFtVhv3k%U*ZSWxJz*I#<>~htCr)E&) z&i}f9`P0u{^vTnw+wD(3UrVu>EMaPsNZfnXxjH;a)$l7FDvkY$C^@Q-04 z{e2HpcSYu-Ce9zZ#DeH_P=;d;39w@sQ33hgu0&=-kcEZ;SP0!G$2Tbrf^#%`?T7@K zE0!2LYiKy~v{?GKllAmbI!gsQ!b|oucHg>?T>6pDz(SNcP!&98yzi7O%qSV3!VaZO zXaS2K=;n`1reth;5|x%?JqVKl?PA&#`FiW1af#`dkw@Dt5kvAPc`j#halHV2 z%9cT@N|{AZ!jaql_nEZn_@+P=JY9mxY2Z;tob|h3o6%OW+y3X=;F&49Lry&{#8(_( zrh3A(DFENP4o}cBJr0(rvNwI8GXiyma&EryP*$P^gsAOO2>$f^}z4Lh0P7M}Ks&--Df=4iKK7o&Qsh^73SW(&9MwNRLi< z5<9g_D$?=608j&RaW#AR)FYq1?X$RAJYW;DBQ`Zje6uYd?3<@B|{hK|6^~6dmDl2T52W zGewfpF8BN3a6d=|OXN6(5T0sN6&Z{q^TlOphX5V=XfUtuu)c_$eVgVacYqA>(-m_O z$S_~cwuR`BQ?G|ONIJSZ-z;WM2)cpMuSH zZeAGcw=`p`g$}I(Ml+_LeympAQo|F=9E}ozY!@hKq@-`Vy5?UGlTIJcp;~?7w*^R6 z{nAsZQfF&|v+1Erh??N!;OCmgbl{VNf9}C9-%o#vQk8v#<>up;(yGyYBxDuGL0%bC z-cUZzXG=Wgb*!l>R(pqFe=+-Fn!pnW4r;_XU3;}QQ2EL8j+5<@unVh_D)a@wtA(9t ziz0p&!la$B?iE5vV93E&ao%>sYI9BLp_Lfmc zNCI|}BLrt0@N5q4RAZV83s$vX74HN276T^44%1OGBoWVlMucyq zh|9wV0raVeEH$6&4n+wCVzZ@7^=HdAPAS5Yoj5qors8}ArNxy6hiyWX%hN=`F6|K= z^8iiwf42N^yc7=QJd$N_Iv&v;qK_@(8;!9^T7`5;?`>et;wi)XH5x%fir1w%Fl#L@ z1nkDGXdj5k?nhE>>Aic{?De;RRo==fQ&P)LfisGBi=)D0db~-+fd&B&{n)=jT*QH+ z%yfk7@(0+YskB)#Asdhx2uglKoGGYNWg%nDYo$G(?#oBoerLV`R8wSFv2+Y(mgGb= zkP`?K9gm0U427yBAZ3c0B#6|6`5BKkR#a8fcc@{y!ZR3GKh3E+jboyaSL-f1q)Mqo z>Y-GQ18#WZ;Q#Ve=0rlN4Tv3tZ#E|(emra~nedEmi~dZ2seCY1)rOfL+3G+vE#`IE z6W6OX`!*iSu;`u1S-mFI46_NJCRB~oBA*+*9nW2|7ArZyp?A|!ioYrKKGm(};7#o( zW^B+<|JZJqKCaPJT#-nJNo-CG)g%^anXYFK7i->bUw!0dg*KCi2ZFK672M=a>I>yW zgC~!ds#qZn%i;au*ZUdTbX#xDii7n+Z-iM#)OiY5g$b@vbr2}75Xqxb)HR7p#@_Lx z!W?TyvyBTYH4Un)c{L?5(jSZ7{gr~o!2zQJ=1pcjGG0s3)}gIzj|yfnlP}imW_tBV zX`tUx^?l1$b$(ZYyjbXimr zj53b}e_E@b+lBf64ktWeE7`>y@KnhIRj|pzDE1CLk>|7gN9qiQNw3zNwAl-9qLn1_ ziymGAKP$>Z4Grz9 z2KBU+K=w)9w;}o{3ckM#&nutOEg{r8o9a zw-&c}O~m;|@9PL1Vz5hDfCeXExO)oY?|{ z8q{}m16L+%wRO2Xy!hp4|4wrK@Y{Qt@uSF7RH6|K7&8|}M zg!t{Mt(dMEH}}k%<`VWKUuEg1M2WErOoJG=B@ChZH=+7ezCbn|+MV{Lc7drTe~9!Z zeY8QJI1rP~TpDQIo-rmnNpAdFW8B_4%N`|l%39Ktf<{im$jEFM>FS9Y<3T<4{lwa@87Z9l`h0Y+i{6`zEjvVLBhV$1VQ$C z6Qs%2WD+x~fiY)f{gu<%z}3Bml%cna6y?ZtqO7(-jM4x38^?a<3l1vX*D)z|Ky7=* zfZA3Y#_)VhR22`hS3DR~;ap>cg$J|GSw>bSYieMXL7V=FKm~Rnd3}9$`P+3UujdzM z=klFJUpY8Dzc`c!?ZNd=f4cq`Eh(OPRWj9XGzZ)3^TMe@CCtB%O1s;(n9gL1g(o(? zUIr$(jL|XP()v7xvu9^>`Aui>5uS|1Lpb-8qSBSVZ!iXqvB14z?#uNKqS9=hM$hPy z(6e`MfYh!71hIq3Hr=vau#)^ab7Fw|O|!NpM)l8`N|q=cDh(B?P!%h!w`VC=q1l-q z+F8PDg&E8Z8f~oHCf%u4?2TPZs7>e{x0OGRIlWJyEtMP9y|so7)}5iBA8;;} z%hMv`Y%$Iq(#N|WYwG?6->Y?uLh%mVpG($#B)%bod^G|_Q2Demr?iguk&1X3Naiym z{Cm3ssgG=jdlb4(O)fkSp7S4}_@|u|{y_LH9?1saFN9~x-2Qe&#|%-Y=K1W!D4AwL ztDzL@XWtz6SydE8C1Gjt(d2rNG#zO#o(*;-+mpXSG{CKGEeaX_)G4uc6C{RCPSb0DFkiXyPL!uN z-*g;LqnbfS48uI5?_{^h>8pVczTfizHIdrImdtF?2ic!W6_S*~V;|SOxIyMpSM+S9 zxh&;URXpA<2r`zahIJ2$A=9J3Lb2Gy1IRUBTk=g^h~DO##YOgo-S6Lj_72M+Kr7 zX6@g9d%-C~J;OD-A;juAxqE)nA7h`UKL?OnFRjPr@Tu+Cla3{|yQ&7f(^t%p6xf|l zu!?!qD6=sNa(H<;eRt?beXz%RT!5Xl)c4!!Eg#P1Y zv3(BJ=>GZnDXq|hi9#9MX4A34;yk}_524)H8Ay1@G*k$&l9gUDk0GWOOs5+yv%VRV`8*fizJ%YCt_8s3Kt#Sa7UMI2j^tg1dxbx38u2E;w{!^)Wm&` zxVq4=W(=le(u!Y*1H;nLka*#owbLM}5{*lnbmG9+*tw>u$}smtw$>RWuMHX0b&lwy zNXO&hB2ff)W`LHjR?eK$5~lo8g}pcf*J&bZNY?>>Bd5kPo%HB}JYgI-MFIGYm zqo2iWJh|g{q&Fp#;e<8VJr{->;O|tg z^rnuem;)?UBBk(QqNhQ!Rb?Mhs4eE^L?YCg9#!RTLP^uSgq0vSg+D+%Jg*0 z5#G?&I+1#_&0L&TI*A)xDp z_-2V|(Wy3RASh;jcoPq1m*~4)#x9YUJU*^Cxn15?XOag;(|4zwOCRl5$C8DTJerg~ z4H}TIK(=z5HK{?Kt{JZyat(9{7XDW(ARnH32@3LvKtIGO$K5Ct#fEXAldDFz@Ltj` zwCK`4yVXrC(@hEn;A%pHM6B5kqmw3DkbrAzoE;y{TS{RKh%ce_zG0ye0>F%zw&JUU z6Q#+zc>EFH_Xy7;|wo%al9O7>B?)r?z#Xy#?mfF54L4>ZMxgc zHZI3F8gjUhjvB7G&5JS;$GCUMn71qhvb^*LP=~S|_iYzvQo?%K1-5UIyc68l*aJAN#6K836pP-Xi{o`@w^cQBBLc!9-Et^l%scmY*vuEc9W zxKm{I4(}pj0T1W!f{n&4>$~}e7kt+>ykImjdY<70&Dz#;3@=#Rk|N8-FT4<>ZOX7) zc%h@sutt1d5M?e*0tF|LpWB(?TJ2q`h7(nb3{|i0nx0E|$;BJK^#~uvQse9p-lb^$ z!3%cG9lTITeaPP61uWMRTG`Han^6{eyY`X{Xsqa4r+0^dPZoWOSwb$q~gP|~#71-y`j(^a{SnmxdG(!>>nipH*b zbp5}(_}Kl)*S?F&-rrqBasKXNYTxfJu5$hEqO#|AK@59y7sv0{C@a5jBSqxbHxAL( zhrp6Yqln8vj5M?{R<_QJVq^IpN-Sl_mdzn#wW=Dr6+FIOP1nsw2~<-*HrPoL2M0T7 zB80~%g&i!6WAm}XC`oTVc!Lhr+NHR=@fg2OuZJLf;Fv%bfmtKYW1pYy21|?GdqPuE z^jkZk-Lq7CL#axrPV2Uk_L-f)&UD1eRQSkkF?YD|Vkb(zUp;)(z`bIRUOe|>s27W& ztgVo4Wmm0WCL7!EI6cc0a<9`s@~pD?5RU+(6NG#(L)SunNGG@d$ldH=No_Sc+XZx zyyBozB}&0?h{T{95DW|%H%n(`M_Y^PdB{TYdG^4iGXjZbs;yl9)kadiw|EGq-waYe zO=e@ck`Xp(n zX>c-=G+0aHKl>9g)?bviOIwldbx4c!71N!BtG+)XMO8{DxO|Dw4rYh;LIp zWn{2^O%=gbODvpYJWcc&YYY-VU)9;_mbasM@`|S*A6^#Bh7NkqQrppuFh%b+xCblt z*wXQgQ3cmnUp_6k&!xG0nqG((pQ?0^ekYtp5W>r8bwl~@6ov^1*)J-oCUysFPZx|M zBLmgI*eG?W4j?;ZQU<~d)GU#-)oSP)RKyZaYeA6?zSZlB2ZzR9+qW5$AAbDtVZHkJ zgZ}%&fB)$Zlar&9L)rLpd<_kt1l&tElfBjfUaq7DUiHA*M1g@H2uLY67)A#J&&}{U)>gy)c5-Z+ zN`Hbgf906q6$P($$QNc4J&1T!BvsQ%o_Kk{VtROY_E4!yc@R?8Td6ThLY%a_<<~mp z2ti42FZLXMsXzC5uQ~ZIqC<6}{%@6es zPYY$9@%Sb-aD8H--cia9)0QHox6y~e z=Pyt6giaC%K4!Wp%^NL|^wQGVcyqjLFvYn{(a`C#i0el07hiKPbC^6v#K4KCD0PWOKASd|JLvbZ~XhW8>n3b{Q^8Mvs=Gq8KSe zMKM%@bMrRMM8oCi5RI0mM>kTY9$gy3TvuUb9dD)u&rsi{hmJJ;UL!qO+P(41#pAL^ z+9}29dXQm4BaTKx+vv`zL_nFSJ48Jep=Bnmu!m0w z*8OlYps?L+TmXwi>clPrGu!qVs3A?1SF33+7q85YTrvTtM`n%cu{cH@ydqedKhS)% z$_hb`GGlh+SJRAUnTfE;pRP?O8P5!x6#6D1PJ1NBEOr~>(T}%rp%^Vo1pJ4|D9PZu zxFgpw`q2#FWm@A7o)yU`o7}8&2H3%?OE=2!1T}x2PPUkpJ9rL|jH8QD5|6TG zJ=b*EQP4s$%7lXXE@H+bpQZ%u;5SG-$~s9Um(j2tr93#>zxw_BFlsYOhA1Vp?=9UV z4GbN^Gb4q z6nSpd7)7HukK#OBvq$Pgi8n**U;&S>MtQs&M;%{XVgtP&O^W$;_P||Uvn=!)mA5G* z?&$+`!do|6*Xq;<9LrpML)lBs3bUHeu!1axMQLb}dD$YT9*+=%nv;rkey}En?c)76 zoOM<`+77=SJ`eI-E?~5q{hf*ida2?c_V_saH?kk_(oqi`!Y^zJ>2Pf zNIy+>p{Wch3w&WQ2=$UW;J-F1>W8DhE}sV?qB{J3Vt=u3v;52bmd~Rrf}LI+UYt(; z+rl)wAFi)wX)Atx{o{}J0*^&!`r*fa2z$jp{NWFOh{TsyxUuhFADtc_ogPm9+g1zj z?GMY9j6*@Pe>}asyq^9tJvyGgIX;~Hculx;CKnyOS^r@?zb3mMPA{)JjD9?w{$D>d zyvR_&Js-GrWtyl}F(8y{y|Mw{rAob7;6^)<^_}`WK282sP|kRA{bB+5ZLEIAh>zjM z-ZI3jmGfInu4i>=6m171oxMTX6m!yH#%{yo`zQ7oqH0Fz%Zu5dWN``JxF&P-W(~r2 z!vk#5Apf-ka-aJo?|5$KUjE+wH|84j{bc{_;_%(Y^!&XX!4-=49Y^AQty!A37l@Nsy?A;E<`Rj~i=e7)qgsQq_#MfJ;aPK4O|1&?tH#xe2p zgj2?kJgDYhhx3oz7&FAla`jvL`Fs62``Tb3%6nTm6@_9lH&!~TRH0Dpdlfyx^M*4A6Tf8yz}~R`#Fl|AciNXEP^3 z&>wC6x~He+p|z^bwpFW%A@)q3QJR09=-Q^`CQRwK8yH{_Wz6amYmssBL~ zcfg&&!SeHxJBC|AUvNV4XivH=%J@i%RMi^6C1I?hr7)Hk4j9&Hmdahg$~_uRS+Jn8 z>bo4R#)E9MJLuHluQC&nM$s$0RKQnxiRe{c+%op**Nht^;}BR-m9QQ{M%o45PM*IK zWs$b-2n^T!hcGdBI`o2?wBhMejg1~d5nOUi#~Ap^A=5CyMeOW(v*II^Jtn*v7;jPb zaVhtKWS(!2o8>k@jxvecVm}9lBF`dDn5Q;JJ1r1xokcF`ZCu(lunsLa^~4BD<6#h` zZtZZg-mtD6Lgdjg$gT{YL3A2KgUCFZ2C*#Y%jd`0lWiZqDmE#Qqbptw+dn(yolkoU zX8&D{9zu{RNZ1zG#{;k9irN0z@!5sz5c_L@30cwE&bts_64u;aXBAIU7&;}3UApp+ zV+nm&*9RglD!(t(?OdH}o zto33CYWGX~#njl{HMUbTuq#TGsnThNbuubr!K7iqEUD<|OOuX;QE>qXzsxk$lSJr^{OIs2gvo)IO%5cSQI$z%` zVD{6${_Fo}F_&Xms7&u>JiYz%wbbC!!ZFP36<90y7*d?aa8`jnlJTy0-myy=XLDgN zkvO@*u>Hw@?nu7mBTd5rrHB^k?3+5+*Z%(2_!As zZuwt)e*)SeGCSDJzQoTY{|hpDt)mll$hVVu;Zf4ke7Pf23cH#=xsmC4JNbI~ym*>$ zU5x*qy$zOx&tc3m`g8g6SPCAUf#jnQa!cr6wVeAXVK;ktx|d?mr_l^nb{{tjUZ=dl zfpw6~1jy~T*^24@QTyP@H|+iEFD@uj5*skyFP78fR+Xt|N0~EGo0QZMnh>6-57(@m z*7e8@V|jI&C3a9%F@AE!S-Mi#@fl?`$I zwfSowrAb?mx15&PM0(3E$7hj1f${kxfJr@|?;bcY3M|U-vtQL`JAix^bJ2F;Dwd+C zjUp8faTNJyg)}p)l>x(6^Bu=1f?3&wckF^AAFZYwuI3Nw>%KF=q9m#J zM?IwY#PHM4GRQQTewl5E-iC0&(;Ot8ZTZ{Fl?Ry8mhq)8s*nbcRZhBnz_DjNZ&ADs ziLYWX3uBRcq%IDl{Vk@m3IyNj_Et(`=BL1G4d57eWx3;Kiv8JBHU~x_e(M4RfAeNt zb-@u2kS=ehVH}Bc$fCzzs&eNxn#$|A)F;Cekb+x7Oy{3<1jxQn<8eEgrSDu?BU4cz zy1B7GElz!7L{+<}4Ks{EZNEK_RI1s^ySEH-Kj}|+6TLm;);zZAoH}&r=r*yTAhuj` z8l38`!WoQ$0cNGtU3}~N+)h)T;IdqX5UgH)+%$-seH}-}M#2fwL^GqgwUEy_l)L$o zA!Oo&Lz9Cef=anaNhoTUeoC}x&PF0FkGxsJti-X^ZaiVPiWRw`ncktA;RRvt;BL07 z@r>B~U_fSGOM*mPrnU+1O52fZzR%ZEybd*w+-k{D&m?{^i$6wv8cf=t9%)sx=HWGZ z!cW?Pk^v#Nzbz0f2-Hjk646a6i2O|1Hj!o#^*{>=1;zoC+JYbUQ-isb-IC0^(n$ zJS{bn)1WPr<1gojjqRyVaen#=fmQElC4+K5wGD-)G?LS|DV@`lI;TViWg!1R%1s`!Q$uAjkGaShTzr4%HgxH%*%N&;u#zrFA->I>Ji z6Xy2m>*Q8%Zlz=$>`y}f#17)=XZ`v)QJR}C+Q3sO2YJRwjuPlg5h3+|=C5MusdOe_ z1wG_ps3#f9TMpCB?L>>r3pPrvl&)G~`12pPEMK3#EV)#b*^?qw?dwmIuRl+|X?GF@ z(x3P$=dA)NYOWtu@T^q=UHjchfCo2mFdeVanA8*UvWLB*&~8n zcp@3y3AeP!HGgM5_F#HqF}=8$CVz^9xBiy871w^|G-o$@F*7APd-IpW{ZIfY<(u`I zIjdtH;Tr_Sfr>K;6bpaFXZYRA|}?Ht@QZ4Wg-7gK28lVCpKih+NMG zTvxV1R5fnk<-?n!d{f2Yy6c?3meJP!C7rneWC3nStzte+Pl$;!E1&zs(3trR6GKyj$sR^Nch!B*#+Iw#=C8ztFW zq735B2Aerkd_9Q5A*J6uj!=H4TY0WuXy@A$ptM&5mfW>7X>v#fFZ+P%taK3Xhrkso z8fhLkB|WRewrMVx5;r7$c#j8D)SK1q=GznJP%ZxtJal~f zN!x@JQnbY%ZJnZP^%5N+W_5luNd4$5*NM z5vp9IYzs-cq^>v2x}5~wP~QR0L%yj9h&1@S@H`E=h%_O(@Oo-g_2~}U%X_mt+FEh> z9y?N6Dbi#$%-avArq}o)l29~C`sqtZ`a1kf*bD}IK77G^wSLihm?&bHsTDI(!6wjl zqKGcyR3)t&HL>&A5KndBdvuygVYS{-`ZROmMw3=+k!Dr?(@ZM}~Qk5XFgX8yu1L6S86 zKG8+K8gQYrsT%NRK@e!zDFv41gyQF$muE9s1*S;}`jUG$o3z^rDW?-kanMG>wi)r8 zi_F?|#22f^8duwju7x;t!1mussp#+*C~*v(BRD2Z;V1})6-zwd-87X*h}>n>EevXi z*gKONYQMcm*>X%h(r=mB)02&=UxJ^^ZZCLZKuWll@{JjO5TWdq9`xEZqz$~Xu{H2) zgshnyV`l0ykW6{eWAQED_c&lv1_a1zp86_(oJvu(PRgJYw{KbjGmxVv9VWs%gU;}R zd~mOe3_F-@K6S{B<^SD*nc?MNE&tw{qk-QL5UPP*uJ4|WNdtY4M_eCzu)Ir$N;P8w zJ3qXbM5v+fIT)?KE9aRSY^7=lk6#{H_;5~Z+sKdk+N4-EYQUuhdOhk^P_Jtd8DW5Q zsyA9|4jdh^0GiEQ9WaLLWKpN;)~Gc1N6Y=lDmI(Qut;6-3IDDx($fTI8$gqT32gcm+Wv5eaX<6isw)X z#9RL5ngq3p+5atBTVqVv9xor4THRVk2i#zsa7d4Nh`IOinWM9sgbP8>n4&nTOh0OD zIhD3%q6~SG6)tah5O*cHTR^o9C-du=Z)$jBm#GmwlTJpOy{65znBJlZ0#MaB%Fsf( zX19`BmbaWEX)C*04Q`8pPd^9mJZSfPFAdX0IT!Tm20Gg6J6(2&3>hGTcFb-qvNf^= zPD*FX-}p4vw_IK=Xf3f8oEGBiU<>nlv@oR%n_(0sL8=z^ge_TtsfjvMz(iO}FSaAy z7=2r6=OI{?Et5#KF@c^BD#|DW z?KRp#kkhC0jVNE6wvWu|#-|W=$2V38mGq zzm(yD|5UZAsh^FYEtQ7(Y?F?sU9At(JCEgr6~C&OtN$(iJ|=AzbhNbil}n|1$7Z8s zOG$EApzxTRY@f_?t|5}9i;IML(ienQ=RpK)g*Yi5ptk-5eHR?mDj-{L(=KzV!AUhP zc?Li?TWa6~lhg>M4kYEdBDi0FF~^5(aogAVjn}B2-4LqiZBjv$aM_e3^K6MrJ|pBB z7TFyp*HqQVT4JVzE--DqOGdG1qx(K4yH`%cPO;^ZH>xps%FZtUZ_&M~<^S^AN^aY$ zP8&yLz^PsISk810*IlABX9t!yed(PMpSKy?Z~_q=@MQS^ItW#V5$YI@JX zHcpnNWYNOvG?517g`Fx!%P_S@b-R2r4*NWF zo(KbikNOpWWNfR~)?Ru}H*AS0nE>lALh zt0CtvgBR{n`sm?~VX|hBx>7+=omINElz4Q?ptUnu@Eb;)A=y^A57h7}m$wq%GPIg| zUkM#+#qC&2q*D+JO=4!i8Elq{x$QYOiz`TIwHKh9GAdT$#nnv zr$1f)-%Ux;vk~yjlTf_cOp1}WjHp6E+RAF1cre2YNj_g}py_b20b*CI57?va)3IVh z8fS_P>}na_za?`$?!le=h74Cd`75Ce8b7Mpxz+|Wx~8^*Ak z)EP7~jhw=#rAg{acs^Agz@<~=28FGjwO=L$U;3!}Z#9g{KC>)EwE{)MdK^TLQK6`L zBLoQ?($a!DCzy>>FU)V%An@GN4b0KP#x(S$Q8ycI9^6Ns8l0UUUQDmfE{HsR9PaXh z+A12PK7t!i7DQO=S@T^~lkReVdU~4VwZ0wg9O9#!*2Pzc#7{s6Q&&_}I@waZ8a&AvDVhAh--Z4+-9717q`!tBS#1?nUS+t%S8A|9|iy_PHHOiG2vgotQ*k}HPx_lq-L1#Jc8udHZRx`DMBIVxRd38Y2M&JowIsqr=avz((-va)sHRQ6@_M zyhDY0+29a(yZ$I^=mwZkOCi5nzwjcHBvA&PFtkk0WJtViMK3d`YSQ#OR{0QJmM%cf z43j+`FOf%J8m1B`JMps@bk-dVF6AAt1An#tNSrKXbN(8uQ{)mI!^V0CKW@K$UanuZ zuM(PWeYsfZs?ZylDt^%}#wgo=2X)OI?f3hc4-=veoF^+fpnRdnykY1*E^KpL;5S1+h@n`1Ty=;y zL%`*>Llq^*)lS-Me9^?S)!r9mo{j6h1ebfkd;m@d4#M|!b66s|PV?w<&Hwara&V8K zg9rI>CzEGSC3l&r%y>ODIhVYSvh$vc<~GfQE#?l7r>Oy~NS6x<6Fs&!=g4`5+?S-t z4bEz*h{E$jWRs`jI_e9;^Ol2uJ;lOnNIcB6klK*`vZ>g!kgy(tHS;=Jv1!og$dZnQ zB|!emB|qC>6JnT-^)_E3k+_luy1B!}!DODAX+5_CgA&U<%5xz#OO(c>4jS4j2>N#cqD<^5%0x!{?Z8q19R|Q#jTTwN zakUk@yldAKG_AR>mL?Gn7banI84{o^f(6I1QcmdZPdXd-uLreH`LuXCj`^5r2)2HHiOGhz_swSgCDPuq+2O{cC|FN*&aS`g z1>^&Ho7&Y3?)hG%1dL9QY>4QG1x2uXHg|lPxl2FP>4NTUSt$1=ceBUkgKawTP0GJ> z+AX5*Z3Z*w&G;$yXLn+`M=X?wxtm05=+c4{^x;oBo3*mc6cvHl$mB`CaKwtEjj!?d z0gWtvrm}mkUe^PK^^`Sfj?+0%@mcvU*1V$oY| zA6_hQLrDOY^@`Waer|aijX@(#-#bhrs(gLitY4mNYo=MQ)lm>m{jGC91AB`@%a#Cx zUEJ2xTcr{=w3~UC!rP#x{w>a~C_r zr455Ij)ddbQPfy6ccBPYmZ_dJrQ?Jm29|jvGlBx#zC7@opM< zXt=8209K>*Es^4?EO$`VnGcXLz8*eErya>mcs-gvPLVJ#ax2{~|Aq!ym%jqPeOP>z zf4B;MGTSIHb>urhJZWJCxkAygO6)A0(@RS z$8GcLP*TmNm_EvmX*;<_4gRcQtp{u;*S7?(XJ1VEkCSV`bL@QfDI3#GT-73Gmn;YK z$ugbcZFP16>*pH8^MEGND%c6T3k3?k)y`ppH(OW2Ew>?^hcw||d0zwfU9(!SsCcAA zV`-Wo>k9JDB96d(zPNe$h!ZaEGxk#XEB;!P&~(KDTZxQW4Dw&}yu&V~xs?ym%^ok(EyCLju`QrK1V%V=ZHcl@oi8 zAX|3Ae9;-lxs>kkQjPGypu28Av}3qXf@COm9;#b~a#Zlxm(*Z|vP_ONL~ty_rk3YS24i?iKt{SvrJ68cw31wi z?q}%F&uVskp+uyG_dQ24vK)W&DP_YoB%s1bJhJ!ILRZEz0T%FWis8!}rWQ0!`x!!* z{^Wmt<_;J`9`!!Rra|=urMm+nverB?qi{E@6;WuGSJRw1t08^nyrLiZ5(5WV5O`t`_8+X0z~qgA1qucnCZ+QmL!W|7BHbq{WQg5@i zweKw;@^wu7k*marWTxv-nu)(i5*sS>$REVAm$$b@RFC)eOH6_Cx*Wg6oZr%`&bN;a^P0wcIuR!WhE$uRScRYGuzqhG0j=# zXpomMo2Rr~ElKc19`*yD|V3eeE6vOzo3IB7XRRgKq))MnnmRCxl4p9OuoBk)awfezW z#X{EOSXU-3@14^I1<~(;=#`!km}RI(sdb=7s8J_5Jb?IcR8C9eOX#-@>Dda5h4Q0@ zT@92bkD892&n)v}o$I+h#6q;aYk9W>r|Tl)tgWum)NU3ix%(xYvuSL{E|D1qmRp!U z5te>NUMJwi-h9M^l0BAycxouvIiCSaNeQ#RD)d^PkqV3|I*c^ul~Jti`M~bV9lpL{ zYv^#V|FZQ`F;y@>g$I37#WKp_@kv-UY~{!jTWX|e+a~JzDL0gBu~pA7q)Lw?_nLfB zM|4i>N+Uk&Rgp4kZ!*-E(Y>9@`|Pe^ z8mW7ky(MG`i(Or?AVspoA)H89{YHq6aV;F@a>P#9lXq(A=SeM7+<+1DI*4oXBGO=h zJ3QQg;tyURX_9rVsd$Gb>~yGgu5`0nx-!L+gF zZLl-ct>n_&X^M=Oe)SU80{4{RSq(1hXPKw@WM?AkfgZ+A3hXG#3=1|kcarU-(9zLO zf-xiuaA-0-B(PSTL_%s(D!`M^#lCjLT6;z9^#8Bx6RX!~)?-vXI)>()7a>bdao$}Vd&9-Mo zrx=zJADjfYa97I7sgK3m$4wezSk5eD@fbrN%G5ZD{A%`vUalXA_&LV(!_$r&{Rq61 zojK~bflNcb&P_+xEFvb%+{QhCeJv@+@uO_PovjZ0)nw7PUa@}AM!e1!WE5-|T`n7- zL}EH*G`9@=*lGkR?s8}7=30HLFi`x$utQ0Dm~v*flHkpUJW<*)x+^>Md4(t+0=+^P z2U)LBl@^FXz2`m6ziF*}wfF;+u@1C(4$!4FWnLp|#1(n=@W{>U-*P`M>Mv)3*O19Nu&xaNS_yrBG2@ik6CE4wcok<|!;w3?hbhz6YaQ{w;l9x)*&%=B z;>WMN4Gm=jXC-1Tu%HeiF}-#ZyvNPsYJ-dL%#_UzyDM&?jbl%+o8m|?nwq?%e&od= zWM%`)3q}J?QnLZVPER*s*I&4QwH6#>p1@k5((ew5=QB(YC*1v%uxt9k&O9`L@eA;g7Gulzu*ID}lm!# z1QHDz=i?N3ZL&`2!s0F}w7@J)c2m}D{2FeQwRnu>!Zi5P^=Q)H+tM}3NR+ONs6|RH zHFSEpe{_`G8QKJHPGti%KUYw6B4lcx-O}j(cnk4V=QF9&bw=m+T#W96fqcE4_NJ)l8rfo<93ha}!6Ds3Epv!AVks_LkSm=n6+Y5(t(B>QcJ+HQEUD=h znb?^zfmnx+<(M|eGj<0C+2r?9qT7sH%0~=b4Q4)8Oe@ckDR$AVF38pCvvt;oLa;Ey zh*-X{OwIIC3C{|8%<>uhD(IWV-?$~@EGw`Db;X7*Z>%1&E|n@ERqb@ao?!@qmF!^= z+xQ_op_~yAI|!!ctuvIghOq;q5&VDmlD)nuEi$=g^;$l@*b8%74JXxc6;`y^m6a}K zZ=)l39}{*$e*J(8pmkUN#EwJ3O5mH)ktz>hSS* zrD&t(0fL*GTr1LSnb`$Qc2=(9nV*trjU2{vu~lU2&Gh+M2miA4V$bN`0Mf0NY%rmj zwYlD2Tpi<-q+lMnYh)$Zhn-mamfxlvQd$+n6M_GIAO@&7wy1l0gmBzfOCv<9K)ArP&0`4PAPqE;Y3YqffXzuOC2GeVD^Ygikpq(-y_R7t ziqwz=$|C2+Rg4U&-@39TRiKC)wp~fwfRu31ATCf7Fcn7MEVo${fil72sWLnz%Q#Qx z4KHE;cD->YChx5dsOp3cChFLMR`u*)Qtdk6T+j|&`!@};ywAXs9S-p((I9+}^Z1vCxl5R`6`@L! z;d}TRX{gHx;G6WS9G;sAiXPNeD%n`nZdND#=oGzkn${&P1%8FlOWz@ynn1Qgnp$_^ z*`XVp9VpoBMqUqgPsT_75zmnFP0R(HSdz6!-sw8VlXN#`CLpq=IDjh(e>c^@C7nT% ze7mQMZF582(9wOYQMgCepEv8dy?YZ_9OAW2Rud=sXB^OecPlDTE#O@sU`M%k4IrTK=bKK~c!K zP;h-?N-!!x{5V?KEhN{gY!rb@yMsiPFDfYycbK|<>h{Kev-HNwTELCs)UZIWb6t zw;HHI>Il<$xqpsQnXV+WJIi3ACtDJRAt6gF_1I47z&a)4mj)q#wOUi5AV?~R?vp9|I|ROhpxCd z!9=A^lGOm)>=v04%#Bs03(ezR07AGnufwI2aU28Dd%%hoQ36GRF*6#SJ zAin*#A+lRjl8jzCZlYH$;Hl7y_Papz*={W|@xdSlMXIwRd4lwy%92Y${nqEPiUQ>VS*(kFH+c_Jj9_-%c$>99jeQ0~~PQoNqBX+dbJKHkrV7 zoVXt_?jAfiTy|G)7JXU}Md$+1B?&;yh{3}v5YOMBOsM2ya^J3Jgg0Gs~clm#}wyv%>KQa$Hx%}bZfB1iX80Xec@b5qD{V-HqJH+`zu3j}d zcnl?tj~^?Qj#{*z|MP#sxYv0p?GOLw|NQXx(3kNxQm8zlCN10VDpgJ_%gXl_Ehn-u zT#AK(_vNuy@v|FqNz*Nf8y}m;n8D9HUW-v{3jrjp%H#hB2Um^&Hh4y$^Es0)nG-u!ueT`*-gC||9U2J>xs5kX2 z4BK~3Nx@$swM$^%P0c3tyJ=BiVqW%|O2<88xYYFC4=^DV=17Z+%{bO?Nk985_uOB6 zVt&ZJ>bGcn@ctx}H4|53;`*3^!mP_?tLY2E<1M!owNA%ftwL#@yJ@u?m~98kFeKHz zmM3*IjE$S`qO_LUO_^J1Cs!d~=$LMZl@>l=of#m=wwV@3Ei)iC%{Z(hlV)h^g9-;o#}Gx<+(sv z^Y1Vhau}{9qa!>xt4cxL>#aqB$`pw|Z2YtGZxuNoXbOR!vFyn`0_iG)oF+Ff z-mp4Rq{Q;jDPI@XNKO9~WWVonskQCWg68MF8LR*$Z0-qYVn)pj=avSl!Q=)7;**Uk z-~4*5aO$w=dBlf(mJ#=P9;{6tQYG$;Lg>Q4AhY zK#|9P54$gRfXepl<~kxTuf!Q$&2GkazgdW*$(okW^fEPGMY$IlddZ2eMc7?EtGIqr zld($Updsmz$+8Zxld3SgOw+}045u1pHe+~GWp!T1%tITkO!tQIlFo;k7}kCdFD7Hk zQe|T7&t8%8C>>64=cz6qG0}U+&0nXG!GImu!fKaU?;U)G~t!>Dr^NJkTDZ2PC$KO>%tt zd08d>=16L8BGG*7VqH;pBen4=Xk6^Q88a3QK*bc zeV3m@p1`(pm}R>Is%*0rxvwnBGn2<+)=~P*!JGFS(xLnWcuEjM|-J>6`-I) ztw9)+&1i;iy|y>F?)u&!V;mMaYrBGK7INUeS~FK9cB)DdoyMiKZzHM%93Q0wO-`l) zm^$0&W(|#sn)R~=GpM5xbwgLFL-JM)}ZO=q79zyR*{$@_L=fwHA|1!jgymg%&S7nnPFLoszAwz zY`2xNhf=(eWVJ>FQG_9s7Wom>&=Ox3-lhmAtXTx5`gp7VJ|lWLnp{539!z63TXxdI z3k27)xGKx8@OVu;RqWpg!@6d@Rq9 zJb_qep)^i5D51v5#kC^~Dgid0j^h7kk_`zq_79wu-K{w{?ssP=6B9UpPpMu>kjrCq zqb2cWGFCix{=K3$1RiIr8pFHE`|@cweNRg5CfAcYzHs*FUKdGihcxtknbZB#_yf`!nH8FoYI0U;}$f%yOS^JhR}bwV>~u|>mur{FNMxm zex5TBWzhhXK?CTpuW&W<3VeELZkc*ghr0~i#5(+nQ=rUv+sWq{&m3q;jYj;Lh%EuQIjhn<6KP6?7~!r0Q&4YD4yS-52-N%f%RL28ra zP^(K9X!Yp=JB84GzT#AuCZp!u63JP=4f+JM9__%aQ#-IuzAc+N+k`RSZ1c)yK%2i1 ztGe#a*^ICah(Y~R8;)iYnsER>eT$mj$M^*gtb9YssDU2fMFs4V7fkptRe2Pg z8N&uKmoqH-gP7^ODR5zyV#WJQ*Mn)_DpL0jyv4h-_ndNT75+pgviI5sP%`e=<=z3@ z*@kC&bmeWZL_A~o>5;c5bVYX{alY3&fa7UKHo|(rZvd(AQp1>it_*Kx!#E_`7(<4U z7V?3t&g0#x0hAj}hm%!C)?osUtIT5*Uv|Z*ler&fe@>ZZ-rCnT6Z~qS%>u5eRdd6x z99FYqa{Wbd0zE3e3}E(%hEJ~Y^D`#hqpkbRLZk~xH#3XhnvA=00p8l11@bJZoF(1p znSA3c=e?~CcJ{bvKyaEAE~Mi=x07U`O}pHPTZfOYInJfLz4!u!Wl)8X(r*s^T;^&U z6a=B&swOtt4ig{ZCSn$UTk18}=X+brCFu6o8~j(eHW}yb4J@6n7ogvw?9n>7PmW>6 zGteX{Tr_HOQFLEZor?u~aljx>LHN6XIDr&d+-|_-hf^$h{%|$)Vdf7lm1G33=W3?t zx#n*I)xUH_Jw7>gup`y8IeQOw3Oqufq4?-egsY)CpW#7(AuzRM^;1i=D#_)yj5f>6 z=h;KLXvHmZ+WUetRl*{+WYx`KBKj6GMX}Kr9?2QH+>!R?n{i^<-S>1Aw`I3%)6K14 zwcOiSnHcx@vQKr6uqX4m{kVPLsPM~j%TR2K%z{oE`JjuRilTe9Hri z*p)fWus>0q^7XT5Idm?GYwS-J2s@?xSuIkMD&@bu5b|^^wUvX4nku!BP5V15OTD-F z_A?4LSW!PO7|vF7qW*9Rh42tod44~9%NiwG4M(p!y*{+R;aFzrtk|sS_ywX`dVm-o z%S>c7RLt^b%mylrVNX@YaG*0lw=?s!0C|$XteX&ZHcv3{4vc;1*>iQLge6q*G(G7F zqId7{+?j?0!f_aJ$8^&B=XyYk1zK(WcG0%ZS{=d zf%6omN_Fv;s0#aTj{1JqPir zO$~_;!JUg%|w}M$p zS1X@4?Y)SC2+?QN(VGDB)-H8xAXPpIZbeQXotpR%@Y|qP8k;4hAXeurLy!gcq9yS5VjbpUbncanZ{}jlxn8)JmeGQUT-|aQw`DlFhBD+ z5pC&(C1VMxZlZAG?1EXy28gAkLAf}$c;6;x%ctbG4k;TN0Yx$hoUZ1B2~3fbzlN~7 zq19s_l5v z?eFHJB%$?6f(GmxQY4dHs4L9rC4n_~`h`_mO^^1A=4kVYuMH1`+|Tf)2mlR_%;nOA4`4+v=-V|1Xf;%xpRR3rGjH)=Af{?>#Cg3sqeww?7+ZC}rac=z zU4PXLESol6H}9lng(Xjw;7NkGBhAhE&7yM^FDO zw!Wuj8!v6={DmeWL_I1JEeNkI`-yveIjsB9m^1{H#b@%D%Ph@<<+w~Ud~M0{f+kZ5 z3ml-8Z}MfftxhQH_+!fBR~Cc-B#~vxFi%$o%{dZD;rPVN=s4EJ9Dy!ZHIIHlhGvM?@pB=O5RD-Sd16NgXES=*}r&65Aa915+ z)g8=aQG1m_xn39(@N9Fse3;}(=%2|@LVIeG?%mh~HF2wkWp_m5>zDNeXCms1^qYuT z`qBm4)Jx)Tvpwfy#HtY8!D#Up$YE4}3eC9o@suel$b9%Tabja!xtBU8rx&De2Rm|9W!+(E5qteMKkiAknT}Sll)BrUIswqp z4g)NH+6YO%XZHMnhGl12;PS-qx)82;FdSYsP)By@PY2F-uAja&r1Bg|>$)@b zlI7qvw(y}t$W{Nt>Tk=Z)c$HfK8e?oAo9|$-Hor-%0K&vt8q$Y*})-&)K!@vc4A$y z(pA*YSwXc;WQ9pCFB0GuqpHgZL4Sy0&$I0!l?s@;F?4`G|c>e zJ!CHJC5AMH-qpGqDYZ@acGM>7hh zcI$&k{yR25zVI{7IN-7~qB06(AEFFwl9{9k8~$LoxzzzVU&Wh(RjAiB5^J`P?}fb> zrp<>onwZt<8`Si@Mq|iPL|f*Py6ihLtVzf6i`BlDU(y1Y{G|{yMQkC7f3u^F$0ir? z7Ir0Tr`#*V?L>TqI1lTn=PTsR)O>}unQYo4a_4IG@=Bt?`TI(mCZp7~ucWE-`OYNf zBWeO`XnwzvpFB4aYX6y(+_h*#!)rM``JT$9i|ksx2NliC(SuftcMoU#wRFrm#L@_8 zoSF9j!^z!kP3{N7c$&w&DTcA`2%#s}$I`#$U||QEIke_7836@GIdEofXU#192xZlfIdOIoFQh-R6hRR{Y>_Mw4w`>k%^sJxDp-%a#nq`^R${eC z4`eFy4ur+@f)!9lt_qPtD0#c$SzVipD|>nkDJ?HrcaWWwtOmVV1dwJ)lxc;D_PWGU z_dq;n?nZ2J;pkE68l<&T4`o-UqV^f7Z!$xp`Amx*gvRK3+Uy!ew?aj+n{2l^Z44o`HfO|NmOjC5PG^?Kdtr`UbOQdIahD^a{I^OCCigM|sTUetGLh13Y_YAMa>kKUR^tq)3>^r@+Z# zH2_^d6(A+WnDg-PL2l{!NERLmk$!HlvH>8_LQT5h6thF;gB6S97t|&H@N}}=Y%nZpRqP^_#SXNx+JUw#ci_X}3`e{P%OnL@ zcFN2xQ{4}f3xnQqx6=_^9^P=sur*H18_6hNq^TRHN zi14D612sND54zf&xY$9WI;A>q8#*hqX)uJ~N-dFH*I(GR<>SHnxD7a&xp7|k$iD6l zh&5Fy0gIqN8*XP9g}OSQ63h0}F6-2=V(>Nn;W`d*-1#ELpm`aS9n#FLUnl^7AAuiV z2aB8aGmeWj)6b|brDEuW>{Q)4K42-kt=s0vLsMgv$EJbh5BjvV73_f*&F0@Y&v^n- zI>iiUT))l-c{Eg9ht@N67A{j=wc_gCVoq$Xy9MqCdPFWxF5z81V9j+)f<&`@@d4I+ z~r!mLZ9<(l+*@#*S?lz-HuVV8oFZ?g>kTA^-4$Cr9TFNWC=as7sc^^CB+y; ztavJ_yaB(1>|g%;r>}qhAAkA|$`g)p#>-aae7x4%P=ht7sK!XV(a;C93+3QaZcoqB zng<#7sDELEeLwYXwtf-%f;H)T=&<}^-Pl=9XSkaN3BA2ny%F`_NvRXl?<76TTD$vr zRZ|V+bu-JkkMYwem}z{C5wNh?iwf3VV?>7>9WH#wHb#Ok(37^IV|XiwjwVK09K{-g z2lka6G{)luKM2fg+U5-oG0a;Q`@kxF&9hKmtn0_r5-2-QK;{1=V;$?byBat1{p)k_(h0fZ*buZldQd(z~&R zR6#V<#W4seQ1w~yA%>EMV1~e?rmQlmCaJP&sSwL`-c@UXDMf^xxvFSH&?a`GQv(v- zx~4}|L#3xM_j$F!ocnT=87=jFcu=P;0%bC)_+}Ad&5IU_IpQ%x`ry>AXLKQkG_9_x zg||ipOmreJ%@YNV*zJk30pmEzeOmfoLQpY#6keN3M2iEFGE@O>tuLz%DU2(it&MFr zdBQU7b9pid#m!c(^ca&FF_zlnc11{uOCk)tY2CBOJWXMO=#mISxiO}9dO~@ z?5BB~`0EC#LiFeEa;hz%2d8rbB}UK$NRgtM{MMeBPPo#+Eix!(&$_v$QuH`}R@;k` zbV62X2l5ZWq8?^znfC48IJlbSx4R9}!FSQtg_Wm&aB&@nJ+FPo!RS)&K_<{%ozpaJ zQ3`p*vx8*{Ci1-N%@FqGiCL$uS!&Lt@u6pJ5-8lGb@eYj z%4XLE(f!JIvf<+FEK#dXntrB-nf-c~E{RH%$X8FEdJ4|(R~iI)R(y*BBIYG7KKPK4 zA_eBKx7w^KA$zMbGe6uP)~X;mA?MgAd`9|r)8xw1s|{7v*cndHnwQ6$1zS9?9c1q8 z9RTb3R8zl?pu-=3zRC=?+28#^SK@Sj)L}3Xl8MgZoh-W0yqm(6**i5s^cJagGA5|i z9A$`-MYjh;LYnnU577uYO&>G>PK|!$Q?*VXL0>SIBApo;uVV{-WWzJFtY9>TI?WvS z;LJ+nAJ#}XL|Xg`2?oVEXri)4jKQ2D(dcZ>p1IJK^#?9VF>}liWE_UDj5aaHIhfZD zMQ&Fc7?$yg0-!Zr28{x=EINb+BLu809Gn8?&;((~$;F`|>U`p>=D3u5j&V0=N+3PJ zlNRFqI!Ca9#$&;9zbmTmWlthfO|D?w)6Hh~O>PeMW1L!Tub8IT;(Es((XeCa9PQRG z495wdW_+3=aflO#pz}B~g!tzwoKcpBqK zb1v^pOsb-X@^%DAoe@o6VcGKUn*_@i-6;KXnRe-Ralmzv7oEAD;!AdZ#D!g)&skX65%3%ZHwpZ-9Ab-_9)RmiW+UeT6jDJJ_+cJxAo zKQ^H2YpJQ3P@=VV2d*_L8c3M($!-DjaOr53p_+c!fLomFnmRUPOJl=Hmj~`7_k;9V!)qU&PWV2`1^H8H=BrArul{K>o1o6!Mv5D6_pCJ2qd4v!D{IoebN=wnW*ZCe6R8ueA7tlzq@(u4h`fQ72ulrvuDZD10% z))o!avg@ZW84jl^cqG>H#^n@ub#&o{JuVN$=>k~3ilXfxWKuly)e|PKz;>#euA^}B zgeq?rSk`XmN!M4;v^A|qy|1QX{HR)m8E9z%W%C2x`Uf2vIV;_LLCmB|9THj!pYMkh^xv`z8k`ACd~7FHbh}0q6`k)Hs1$Sd z1?z-VKnOe|M#WcrkAg8LVSwcf5eu0Wp!&wZg`8w5;jSyXle>19^MuX~bw3ee z8>o#s6d*3-SLvfnNfGE{xG&qmPkHezHWKr(4D?+*=JVzQhTH%>Imv$ zC%Z9>)2D=hzr3VduZ2u-B3Wt<7NAyHT%|tR8&D4w{3)|nI#zEs;|s<|%EcrOm_5fJ ziyIWt;&J@5r0#@QSm%_eB^$azVHDJ0=lM%&bNQO!=7OH*9b9se;aj0+%%8zJ(p$se zb#cr>E>k+gxs*astgQ-MHvp$NzX+wc1>H2@Or{Q?R$(eJwZLA%yhK8F%1m~`gJG_Z z6n|-#s*Pmnv}(1sBnW0JzKq;0hEbDq7_N9lfY+oIS7N@fam8`oQLcM{KX*yg5v(W-GuuHokOOHky0Jl<^eORc-B8mCKgTi`|9h z?NUzBZbr>bFL@YNf{Nna{uXw#XBHHMsG0~sqxelBw`OBshPqKnkbQfr#mtLzGH zcvkXf%a(^y5h~? zJR!dSz`b;-KHbtkb}z4YeO(wWJUs@}Zc4T%SeKHSP47T49HC>QL;<4`2`JBo3{{k9 zyNm|)nO@V;)iZues%HepkN#S8)z&rMwMM^#ZoX33c0I9eEYq!2_KlDBhMw`utzDS9 z&Xx8Z(b{cYT@2F+E!dQ=p)nEjePFb-TS{zwo4R|MXEF3Ds4*J=mkmG+lw@I|kB4V_z2bE2> zZ!&~$-f-~L8y=Aix7ow3uDf)yb1hOM(u&p;Ww0dl8k)WA&rJ!l${x@h=dLA=h<9zl z%Rum&Fn5vI)-1M&rVnYKim0ng92@2j?WpqRvyK11ymx@j^7cbw zt2u4@dORQql30-h1^_9^>j?xzf)b`lkV}wyjMw*Xzn^brz0Sb_)jb|N;>IeviBnlw zS+A_BtgNi8!ixE_7RA9W3Vv2^&gE)-5a%#OiKWm-;?AuBQQluYA}K*LuFW@P(C^RJ z^7_C4sDV^yn+zzj#z!?e@wm>@Ggm2uo`82ziyevjHb+E5Dx;Ud+$Q*Ja!h2#93@e% z0?qd4@zKW((OGdBINXTl0Q0542)VR`=^9StxrqUSC6sE!4w)6slsEM?%pq!u|K%#o87aF{@}qfl4}caRXWsTYX{^8!#=&ipC}u?KeXg)#pHFXl<85 zYzRsEQ`344=%#vsP2=j~pB`uG=XaVtA?FP4`$tqDnpOa>s!j~JU(R+{7ZyQbBO=2c z57=&0NB$g5S!`~3+gB@rYDhO$Ye@IOuSJ~$yLdH-HEQKl8xV4%M5F`>7_pgRdR6Uu(;RQkPDW#PoQQsyy;oq9BN*qCCQO!v;q)6jThY9qc11ci5Vl zH&;+Y>-0<3kBnVh=(ZL^jT_aox8A``Y;LyzR*1I0JdHAn(vb-N(u{s}8ar&%lF9t@ zSj~~v`~eoj3!}PZN|u}HdvgUAg^)`O_UCsoWZj^pD~wW&rXrYFH;!VH47jvdp$Q|q zV;`rw!>L%22eIzsC&uPHt#?wE7AkU#<0FGYQ)B>N73l$mjrC^2aNo$9HB1yqVg^G= z4v@gxW9=qhWKc|KB`+y1mbR`tTwR_iU)J*WCb7m76>kyHH<7cZG=fbS-h_#ox8Me9 zsoxnV>hLQbq+=OG5;)JIJ8qy?J_!dZ+E#PJK&ms+tu$q@Pnv066u@@f+%vyJ>SS9p zWwpQLHCtOeuYAy2>6E!YwJXUdh&LHvo8fG3P~ut?Q;w}hwG=g&xU-JIx)Hb9e%R*f zE6yf32tu&MoXu5TQ8--7TkKS)YD`xHW;|arJX-5|+-f(g{Wr!|wN~b^JDsVR-l+v$ePAOP z=wd+-pEz|(jaf3IrckzShSM7rk|CYzF9C4k7voo41KLmXs}7$0 z&hJMvc-~u%W4y%VlqLk(%=p1rjn_9}>|UYost~MFc=aB=_9O9?D2^VfiJv`EQcOPB z=jw1H=UzwATM#vbaH+9Om6U$2ehV{+ZSHUZ7+i;XCaL(`;#Q7db(1aL~sl<%+{ zd53z{ossHN_4z#7b!LvK!YkNHUPBZ}T!$6Pzw+j9OAr4V1x3uRKC*vuf`^GEE8w$G z8p)AevlC;uNEaE8y)Mk_K@DiL$?RG-yyxCBj3TpW;bBX)MhdDtDd2Gv3~An>VZdIb zf;;d-JMOFFE5)BHK4F&|3L>L929Fg{;Ic%hD2ZDv15BLT#oCUW^ypNL{p0%J#Eeex z|G=nW;`hm3W-PHoYG7$zV-$yyKc{w6plDmYqbf40ouuj<kgZ+7iW!2=rb;w2-lG;1{=u&SuM*Uw>ZkHV49K9V7W{@#>4=SR*{p9B2K< zSh73SAz#fmh$xEkWx}>Sc+>SqFEEy*T5;hMS@~X(i8x@UPWm@ZiE94^>&k_QaZDXT zuk+`d{P`L!S3r29&lT0wqS<{vKj+0DoV~^;v1R?)$677BUFO!a8{9{BLZ6=?R!OvB zpI2T3TlE>-$9sW~R;-!W&F1#wa(U_ab+R$x+xvc;cVn4kO%0=(B zH*SmXR%s3bK}=VI0#+@PjOCg9h1Ttq=V)O(hynb?AT*7+KcgPBfQZ8A;VriGyU4DG z$rK@2E-2cGkm2v{-*UQ-{K@_xGZvQP zCPv7BEU&-&=wxoV{9nS3mJU5^2A>J+H`L7|Nto87(nU8F5S)CFmZF+kgNV@3VIZ#E z`QUVO;WtXCfKF9a56m=I9~W#6R42yFSo^MbLu?o$WdF{UWHJOX3l;b?^h5?6`)tbN zL?xQd3(Zk1N6s$pc{Wch7}N!k*2hOUjKzkO8)4^|390+TXu4rFlL=0x;*x~JmFxiV|hcpJf1eDh@#_ ziWZKLcNlhFoMw?v=B^kX%!6Mr8?Cl|HYaZ!0|rtWnKfLOAp2E}Yj!`CX^}Fq7*$~D zKqgO>!t$e=1luw3*4Ij+3wR}z8&=~seXz z*T__2*we9!oxexX;<|wtN_zeRgQdZu_ZM>+$FQNnP~P8cv9-p}EQG}*E?ZERAlrKc zJ8O0zTCKQRtyRnR7(4-~Z~#l)V>^KO6l1WrH<*u;0FiJSM9vD_FpZ>WN%qg?BTVzx zZ*|cy9cF>E@@KQSs3%)2_gJGcdpW#uM)MWR*(w&s+MojS{Sw<3L<{zT7pp!Jpb8Kg zjL)F32$OHMesoZPmvza|hEjOs=91XFzd5=&!(zCrQ$nx#OOGmH9jHP`PZB!O@tNp3 zycPO}xT0Q0P#*c6uhe4c%h}k*dAKHCpy}+E5wRiGlQLpACR~pb#hm%hy=UMWtRmxZ zGr{3XgNrPkdF`MvMsZ_T)C4Y)c<*`R;8IW9+#y7=8CS-%t#QoHf+ozJPOe6Lv!NAVmImj0Lp zE0GN3L!1|@7IzUfG|WNTVL(Jp(-vRg_RM6sA$8qn0`-TBp3l?eo? zDK;zE7H0;*&+CM8)K+8E_~EVHUTKV61I8uCs0Q1EYDp>>ZpEpK*^g7ocs-m3(l)i$ z7+0vS$A*g?kCdv!*u`-AaT+r2cpRf18|J``B`D*y=$mr6(sCt+B>Fq)hc{x><2v!O zUsI=~NamXGhGW_&Y$Q~F_0ea(jp(MKVIWGWUMY3TJeb8)BH60SpYWwF!kX1+EwRP3 z(CBnf4HRa{FQIx1gUs~~-+OONu`wd_hsC%5`eI3+^BKbxu0Nx_KvtPk4L2Swu4qO8 z=FlNu8BI7cRrkPxH9z>VJi_x0s)7O%EZOens2NN1jSG9cQ;TH~A>-1NB{m7clA(Ml z8+^zPSptv=ZJ&#gc}jkpjD^E_Uy?;b7%fiW?}6tl>Ue6fV&Flk6ecB@O{)UXsSU z7cEgsLchaHsK>uA;v}QoSl!>nS-e~h|)HG36|4E4yqA2?lP5p^y}g&(3ALG zTVrx{v9>4`pmJX&kRHbhJ?%2^XpTz_x5q^cFjyX~7G#T;+C{4KFp^DN(E&#R3)S%Y z`Zb0ya;S_IKP^=EN~-2eY1r0Cx?J9yA~zONPDjRE7O@MsVZ@FD%hXs2Ev+r?TH->x zve4mC^nxRK+&lVVKeY?TGG0vGoNk@--d)rOpc{A1nfM`eh~3C^J0)WomB{Qe`FOzZ zfYnB;Wl-bRd&2p~Pp4B~l)zBkT3o7!qlzD6%`zmv_h(~VmD8{b+c@cKQ#D);;Gop% zr4SRteMFA>Pj)#Ecgrv})CacCZFQ7t-G*FT8TRNt(txi|07ykTM6+_|acn^(l4@5< zg7#UV3I`l2g9G$57l?+A>D4qkJs7D_8I@VY3!6d6=*4bG7X{Optwv}G!1lHrA}X77 zY>n({k*O2iMsOB~W2|e6_ku&N-us@gk%=0xolG$&`z#Hnk0++Ko29|nH|DuKS@;%M z!Ms<>6uWI_rw#Z>(sHTO^ui-+g7SV-vJ|mneX)m~&abma>{c*8r;uNc~an$h2P1KWUVbB9Ezwm@o zDUTSu0x(rkJi4jNPOig=vCO}llO8WF^x$P#vI=Q;X1h7Qj2Yd8r*gu&yD2X2?NYVN zgkeY57+0%FnQXnBWo*5H%DD9wC}Ybyh|fRye!T>j-x7G-4_*ZdgYu;795-)a(Q0w< zb7h0+llc`(5$3j)CC0Ya;OL^H%40*(aG4_`m7Vu~f%0WKVJfz9+|XUQShlAHV_n$u`ahZ&QLS-R*<3%hLa8R(j7c@KTC9$S zcP?C+r2dm>+%3kpY8V8{nbwaSSya}}K~oHMlbXWpkE{HAe=`ge6LQHTi@Ye=GS$#X z}gxt6OIZi?E)I{dM6K7ns@_BB&4p zCJh$O?6D@q9G2WX`;BO(__6!$GD=Wmgn&EC4}r8FVI{9^s>6oM*YQdmina5frJ)I% zZEPN-b_rc=rJwjIg!lTIzB#_A!OLTNDp~0Efx>kgsHISX|<=m6fSY2#~l^dppQm5eD^(ciJie?Wl4=vA@Y|AedaT)1-s`j`>*_uE9i6s0^;aW`@5WBiw> zRM<}DlwtG-GYt$!ya!pjxf!hIS;kmk>LFsYmh_cRj|91|Mi$Cw#JdSE+?p1tlqMJw znV5xM`~ib#JmBi!=YfMUpB77;$KtH@WEpyg1LQmYJ7-;H!Eq{#BdsdDljw7Y*2}25 z!%%_s*ar^>E_AB-Y2@AMIL=gd-VDC@Gq+iKHDM2C#BcfSsxrl>d9ijlZ8?ea?pK7~U=< z8sm$LK~sJkZ^}9aE^&!K)HWKfRj@YLuA!PUEweGZjSKuRqCCIwjkL3{8p{_4S+L7T zSUtAC3Z*sKET?)kixDzCaV-s5MbBv5C*)}Wah#7NvX$+-y&0eO3DQ*+7a0?ytYZdF z94vh=;^+5Kn7o>~mtxnF24=_twq`4LC&oNtCLG={RiLnnZ^#U!F%r%Nz>? zv=sI-Cpj&_y&&sws8*CV#>Cp+!L}A>ma48$wS6COjsF572UK1-Gq*FHQA}+$b6rW; zV%n^fRZ2=6I6ySQL>YC0A!y4|Sxgy>$(keLmD+5Jz{xmvLu~7P)XwpyPCYj!dOOET z*r&8r3-*qmff1N-wv(%Jf*U0-aejIAcbmQVmt;1=ESds@jD#;p6ymSQ<}l*x{K9J^#s04(f3F=Wy|y-Ot5JX?AALTqQa-lC?c)lY$zCdra+j?VHN7 z#P>JFgq8*@rJ{Q9}=ccC20kzO`?1}_oO(v^IzO$QU0qXS%3&9#(0!(Pis*7dh7pfMo4d4qb zm2R-?Vb=TEk3oV5!Ntn2RB?w2HGc396)qO~F3qh-)D}r#3H=hX&vo<@@F-SzKGcbq z2TcEFr|fQUs6#iCJ~g-6mrtqwnWjVL3Ne6kApatLh^V)J69rrp!j4vNvyBC{^Q_aQ#IwI9 zr4&lPHXQ~1Ym$AWtzdgZjiM(L+i$KQ*?l=#7$_^Fz1HjLC2=*AWoh%V%HauP?(Ui- zFx#&pBU@^pKHq5+N(XFqyKaj+uL5lbiigwVrbxGbvP0_TcqSnk3OCT*o&SYVpyTbv z=mz)+n|mYF5U1(g;)>IOh&?S%5faS(oxzMwaiu*YEg6iGOx%>-BuZNW&o@tO$HM^5 zDSUnlw$~}%Z*uv$(wyrlf$9S*RyW`B%z7dB=o z+VHdCwA;7bb+yL@0#RLH;=&s9c7Fb7B^=Is+=ag%#N^|K)Od*+ath*6>ULMCZLU|=mLRaqp@>T&0g5Z$yR3N0DYdpwji2pz?~ z#-owV1BTsH^Gq)#bsPPd%suAY=&Zu2spsF2W}(;9n$x(wOhcNFiwoN-*7GNyu#kn@ ziVbPQO6dsA`NsQy4XGEa5ZRbAY6GnHCV)62tix@#!3An?hB&rQ1U0#Twu`-H_ic9b z@oTZPFKb8%R5`K$-M_~fbcn?%xh`)f+#GUiE*lFS+f4eE9na}riK1|0ezqmYEzyec z_-M;AV1T;3V8AMsj8~8fc!66M%LnET4M6dZhjNMYNCADK*7ell4Y%9MwXgbnk)3r2G)%#zDzJP1DUKD)mLf)^EI)F6b1Ri3Rwz9=0T zJ&qb2#ow_vf4E-SY{XkvkelCy!1>J`Z&r+WSmJ>t)-PKx-^oU!a9mi8!1SE-BJW28 zDb<9>v}#dK-a0}F$b$0ER~b*oOUpB2TKk7LHy36-ArOAWW2J&XX3ly2n*>!rNC%`)+r<`H5U1p zv#iBms4ezAhGCESsa=+KNVD`gG$JDP;gewL4L+udZWw91ZgLN{&(6(GFL1L5T#Myr zi>g_a(G?Huo@$o z*(IVi5y=27Gn*RgJPxXcwj#gCGEtY8OUn9QFZ>!HY&3n~)QenCorl2}F|~KDbAB~Z zL+NZlRoT0qrZygOWmUFcm~?%N7;9u6*HkjGZdXLO(FhYLR1BxF9Lrn_DE4CJ^)wm0 zKl^|~uzPN=H^kuwhPR!AQ8&bMGLCjfY&e^u5GmmICVFZKlwVCzhurq%@w|pY#LL7@ zsa)&PkVyAprIu()bbPbY+lrL2A)zAGpN%!s&NB=UZH}~css)nw2R4c$=VeN z$xbdBorUA0@(w$#)5v{X-Pii=ZlRoa?q~RNh}y<_mwIeb6j;Sd5#)92XupP(c{B1% z9bPDxgNpa(`Dc4*DB1>|^Je^AJ`W$*bX=JO*N1(zX6ekuPf*nUnv3rB8vP@bo#}7a zEayU1)+5k#ha1EGaFQAQ;SvRIxWOJlO9?Xdfjw@-!NaYY_ZSPIjOZ`%#%-igm0Lg$ z2b-G0H}(3ACx6mbU?gF~18_W;6vGj;+x6kwC{1pDo-Ywwq<#{D0n_^DurcFM{uB8Z9(;H$!<|*3{e#JDzGMK<8 zntaT$qiED)RUp<#-6YtM-r^=VMak|>o&SY`#3FiLZpBrc>ZGV)HG7`ZU3yLv*(1eeKHMqg3I%SL zLq|;LJ$y*xp1v8*J}|XItuu;tMG8>` z3@#J3N;#CF^_y0rz~%5q=kiiZu00>`gQ)=8ViePf&$GhXObGl%G({L?eQbj7BPIzw z6(bix%PO^!bCwL;i#I}$r6F75C|pF}DP?b|z9>0Kl`p2JYSZe4q0r}hacMA!JfL!O4DTgUvDbj4B&NLG7gN-9Mr)&!oY!jUWgyeDTHr8UO zRC5v{n(%+Qd!SgZ)NHvp36us7s}BzX>ov)192Q)B=7)Yl8^YFtZ(lzcV18fw8qtlp z4;|AgwCr`d_YJnT#Bj7oAbU)EYSMCXKG3hj&jvS!! zX~t%(Y!*76{TUOcpgXsP-wMtk@r-zTeunpl#p>1UPFKG93X`7NK6woHw(yH+-fO7> z>je{K&E01xyl=$H*p)JP++@c3r!gkYjT=(RoJZ6wu^zR8UR8YM|DzN{8>Ppwxgi7tQW; zEu&Xa=&NgdP5JwLn~)@-fEad>jaiM%M0pbdjX7kv*@yG+cZL+b z8`9c~-y>N}u8=9E;nCt7%uOT%+fzt_Yr@+(?jQHmV&?h|x#va#w7qVXaNQKP_3lQk z!B1=u80WxY_7%Y*t%YV`CiePT*|V?+=sGf+X%+gPJkP*#vbepMK$L7@^ZVTD`HJ}j_1(JDQE5b{_CD^gyB zS(URt1NF4{YtZXtsd@`qVFYV#L+jzNdo2=TKez9!95~KDonPV8M^~#ra#~!u=7cf$ zt71_`M6qRSxw>S0p;al5L6sy=j4Xh6H#a6eWMEh{YWt654i3dvD2-%bML+E00iBA9;bfm{CDlGE zvrf28H8%G$vLvxmq&qr&wr!ejH0v2Buo}2yfGDE`am~kI!J~oCN$Uk*&=+GCu#aXN zwUTbBnnO?@Nx;ux)#lwYhp%Tp7qKDKSu$|_fm~>h*2auI`pX@&pmMms@yu%AOQ!Q$ z1ghhEG*C^@5ji)kL2V)0m{t8fL$p~hgI$MXj)I?}cn~?mp@NpcPZ4&}r z>FruWAc--V#<@-|H$+p6M`D#&whfyTKN9O(XS<`rvZYCvGSPOiWEPL~sYPu)HjPmZ zYi;TJ0vbAj5A$XmciwNC>BkT@7R9Z1%A}pu=jHiW&&KGep$Pf+h|TJd2@5}L7AJ)r z6Ho?t(%z@@xjhG1QZV^5yf0i3_LqPQKzBb7;W6mDlEBH$I<5(=^NaNef7?oXcc$F6 zXw?Is?(+*?6>W^%l+Y@?DKd$RxIVKcw6j_ny?SX1X(3|3r8$0wllPCF5-XHI;$nd+ zN6mQ><9Hc0Mt(#Auo^uqk8W;mkq{eD#OO?Wdg!Z22hjkW+#GV^xFaVU)p#|L$*>=h zp4hyiI%eWu@K(co`R@LGE(5fjEi6_^2A7WG=YXlOAX@VYMNMHu*J8E2kjpw9)LOSV z$H^J5O#2i%Lq&*01Ln@#&m1f7A<7mtt0c1G{DM?_y6VnOA3|&;I2S^I^6q(22W$&a z#QCQ|RYZjG`RrOamUj;Nr5PjVpPt0KR`^=GBqQ<}I$X-bRftmmswFVSA)bu>s5@O2 z=_*CRVw@v}?o`C?!zB-*DB4O@Piw#wo3cslPCCsY>awH|jgdQY1-~IG#<0rGmgCta zH<-tIup+qqVxf#=cUtc_jSUlnf2-V~`7Ew%&-vZm@E+00#?8P?;dX%O={ZxOU2{9i+JW37G>^;+tWTK(4&S}U^yV)kKIqIXOE z@y@}eSZ8EjPGKO;{&|8nRF;^8Ys2|*G=!_7g(?I={0XYptTNG#$SgPsfAq z%id&qIF%-o!v%z>Y5#|xwx`o!XVf{ii0NKu^s0X{?Hu(FPIli+dgIntPqZVtxqLF6 za=P_#v79PAy?@&Nw*CBRYg$RtdUE^pt0!xyPoC&>vHcHE*JEyOTZ};>-ADwQuH=J|_CnpMxdZ*)FXK!z$z{_55NY9`3 zEWzMpG8&wsc_(IfH0bPgJ7Xh7ilf0`xC?E?9raHRdX|1L*zKPXv?NA(I2c)y3ChOt zq;ot}f)tn@4^9S?!AZXxGo%epEbyvxGC3ZMdabXXeR}ci*)t&sMi%==odbb?3gGd{ z-tOtXAkUvYdoILL_bfxU1Oex0@TxNjSU&`;680kCsdR&Y_hY~-VcUZBMx((fApK5& z$(x~-l_LD4@KI;CchqXDOwX#C{rxvE!2VIc8(L(`YIQp7c8-p^ zM}u+iRi_`LtbX3f(=ohhdHiI>9nq;Hi1Y_1Ocbi@Pu>9m4%eN$=?6x0R0F|Q*0Lqq z*!gtSIpNsY_{LiAC$IBx+Iv0eos5f|erU<+0om|sdb7mzgx>&I-AtFaa*8;|2>ND; zW02cV(@S%ZqOa@O>SwY)8NQ}IlfiH@KBPPpABM7js>4y3F9pBkU#qh}Jv|u@X#o4` zzt->3fEH_gRY2hWiDLT4L)z@6K8L46{d5mIgRwqnDL{&??1zrE+%FG5uSWb~K4H-<*TY+Jg{ z1fWrV3(Uj{no>cw_dPsehe1A0c$J?q+fzQrUdXWK$?jN^CKz@GJZ73 z__4vINc#W~N10&p8?cW!qiSOhkj9<>`c*<7gO<)e1!OoHgkORhmI~^ZU>Kf)ginBZ zqzaxxMESTC*uO+kBiKml1AxZxS9zo<2(+sqEj0TOfU#|1ehF$cE2v+B8siG;m!J*( zf~bXoYt$ED1%cWmpw#vuYMKrB)u=Df6;!NE0+yS7iGrpBqo5A}VO|g@d2wcy`ob@IQHy#Cn5QP+!z9*y3_%KE|+ExsTTnczb z;{m@WxLvQ_y=R8w2d5&k5(*!Z5%rC{7=I&(-K;DI3>>~=l&_4(K&CkwdbMjYafQg;&o$wmN46i64M_`)F~8RZP*2_f|c`w2P7 zxkv$9$bX96KRTtojDQ0U2S+B_APO47xJQo(^RRQ)Gx1RY#KH7^((CPw8OkOslIlD( zrG9O?3m})JzZ7=h~R$LfX_jeEH_idrk zcTZU!jOu=WG@h`|wVqrH%*Moizx}-mlsl^Z`+tt>MU7DVU)cIoXltLfPNcolfcNYu z6yxM|F2pxhNL8|0w}1ZUc7!}TBHK#&L-BV=wYhP=s&4dX95#e$_<7rY`+IA5n3J91 zdV;t>R%%RZwtwH$DGkl=KfY>c9Od@3{V(iwD|Bf|YD%5fz<;wkCPo;uSL?N&T+!}p zt+b)iP26@B8B3DQucZe5)7H3qJRS894ksqkYexkj?b$SRo*|P1>y8*p7G?`l;uQNj zVY3}Uz@Cow{P)!;hWT1uPTyak4}FjRMdz=Kf$2Gi(VRW=G#!BZyDI~@!nDPEo=KA@ zW$W#HerHo4-`Y%<-#51?_OL``Qp9xpgZNUzoYd8215y zZtlM0MuNo@$m6}2Yj`id+xl*G@$>f&tGn-csQc>SV*WicKh`YwXo;n`VKvcO%7QAr zO@BBXv5{s8PoIZ_p>{SY+((ekfrBD&a8N`H&t7CKTkKBQ%YQ21(qAa+Tf=9j1evVWq$Bhaq{SlH_EL-up%T^|W*-NJH{z?8G_wx4- z!*0ge8;(*yl3paVS7h8hE+Qtw*SRJ7M=3#nc($DatW|*0=yi(8BPY04I}B%*4$G(Rfre*iomzEQ`~5z4c?JH|!OCcib;0 zn{KyYmEPpAH!4tjC*4kF$0wi3>=PCX`s(Yub~j;8h1kEp65 zjl;f)k)6{Cn#&je`20tkmPGxqe}vZ7BesA15j9GUIFYK@HpEcvyW+%u`X^G5OgkrR z{K9myS@zjHx$sQ=~pU9IzHi;&@ii*tUETad&eu&OMV*j9jXe$!;!>m#B=XmS?vp zkC&*xHHJ}#z%rry-Oa_CSBsTOnbVfVQo+iYYO%UrteETG=3GOI$Hqv7NVNA-uAzKo zOf}cN+!)?B#udk>N0YuCD~K^tkqC$qGZ~{>>km5Cjhs^}WeSSIE{7IkJid*W)3HUB zQGe%&SlJ!T))nKq#7CCg^}o{tmPsa$f{UMhij5OVu+tScjvqr#`GGu|aMj@v!VG9H z8;s)`wMVdh$Vppd8aGDJ$te?BrNEtk-0!K^plf<1*UfEc<=8XE{We6)R8HTzEHX8byBnFw8)*@39Y`e2DxD2bh!#@m9@_9zc7U#qAWy9G7^v(+ke; z`@<>ntsMvO$p*TA(v^raouEk8&%{EbUiU1>!OXnfvym(Og`prqgR<~olpm&vEvJ1g zaz!{$%?PTnP@pnB?j7&;M)18s_C^CzRzNw~nG+r%K}~Iip8Ds${*cp|>2ScQ&Kt$-qi~Uor31tMP%4J@mR2-N5-PGgI6c`5wcLNDT3E_g zC^$L2dLdbN3fvVh?H5{B6#m!VXh5`4BY40R-F~5!QIT4rCPxEFkyG?D0*P+>M|dqk zjQ)>CKj4HsZ0U;WJf9yepMYk0*(xl};dJ`iWZamb%o`2b@f$Ibj=K5>rzW6EP3KUR zfbyiU=U+mU6=B+Xf4|?I9v@7YP`WQQN=^PM_=5HKWUu$SRpN3ASfJNq4yNN%c5S`! zxVN{K44qZ);1tENb@5(rzr#dXWEXmGJtDHBW{J#uV-1??yZQfaEw1mT>_xF+(+P<} zEbBbxBcmg#nmCL8w>+!BL$m@_2nVPDeDg`3I%s?n!<|F)6Ici!Y)y`)`-9P|&S=kf z7XnCEhXSF`Ftlx|VC3pmQ(z>yoajJcG&yEUs6o(&cDjcVWjr_?bzw~%T6?ZezPFb} z6o>aY+x{a3*2GdkG-fq>Sou)Y#&16}UnjqhY_(P~oubFFCqf4dudT0sgC_R*vmdv9`kqG{ zujb#nLC9}tv9s-}Fq9I`hFRX>gd z4+0w-_!#?#|NoCnubykkq&^TMO*xr4bGc$V?hb}XesT3{h)XL{L);iEKi{fL&-G&i z#$a@i5hM}SvnG01Mr));=r5;$s4xgTUYmSvLj80(_x^uUiGBVj)8d^+UC~d^YQra& z+s98O^|L?y8ro!19hzxd9m-u@GXm+$YA+mjy(1cugt|NTidVy`^`lA?kZ4ZM8P zMqp%iBav8E$q~iIy!&#D=Fwu$wg)FiQcMwpnfP7^f3+4_(_?`ichmZeN-F<$C60eb z1&)VIb!4=Ig37+7^P2>funJOsTTRfdV*Tu;bby;Jmk`-{Po>O)z`6=1_ttux_1fb0 z!*|O1P_s_Vv{>h7x`ZyM-4i2gtN}N$$dBe`y zYzOM<8_vU`{^o33dW?#q!$EZ&jzg*UA&g{2hzZA|F2_u2vQoF=q2tj+R&i3cB!HDE z13IsD6z#VeGM+1BjLi~i0i!PuQ1rCg7zjtwuE~LGJ9|2i_54bWjYCMu-iu*!#!4B{ zP@!^4I>}>1RoUz8p!!|UggI8|uA5+sR#~SpNrjc%_0x-o()VIW>9Q@I* zC=0u21f`+%j7B4zBc0k2xC4qIrlJ)Jw2+{pLQAl$L~{_?VVI5KvMI(LCIE)moW`W= z1v;yOtm0~FvA6%GT~BJ zU@H)f&;Yr+mt|9#okNP;9Kf!-l0@&%y~pdD6Aonj2^;OaRTl?h0A)(18qAG5Q?XEA zmDQWp>n3k4i`Dx;nO4GU)xDm0DInE~Dn%@^@F_=uPuc3VE{mY(N{#V3hpUNI>=R4A zR$Jv^b(J+3S5`lm)~yWS8|=Sai;9CU-6=M21WXnjG+>FPuxlmli_L)JO!@LooZj-X zM{Bk^Uo5t)68f`c;gDMKmilTrySemF`RXuiCp*875#;yr2J5s4FEUb5EVCFFi?W*C zdKtMiDI;Ky7u3q@Wg+#&+n^oZ<18C(Fx%h5=^>h${u#R9@8|dD-@oTB?dm&uO8W4d zh@f-NN_>o=jb05#FH>YF`zprUq~9GJC4_kUB4OzIN589EiJm?8w?8b-=fuCCayxo? z(^7$ODMQ#y0b#GJ1y|^>EVL?{Iq!SvZsjPzVO$&HK+(TjUllMkPPjcVa!V(Ng+w6d zwh~5;IPCIN6lJ_}OuHXp8FOdCPB{H8iSCi!-w2V`mhCoO5lDvHCb|TAXDj|}5pFH% z!)_0@_>v~t^5r`=kl;$D-sF=z>s;y<^#Iqe4coh0bMAiUd86wKc?00ZoB5s0&*^Pj z`%YNLy*w7Y*`;DlAi>N`lFoS@W_ zt&=}dsb9MV>m%V>!TT#OKLi|Brk0bG7CQ()Od?AGrpRqGB4qoC^FE2hq0C<$TaL zyvXg^X|N6X>hHh)dp+qA$1R^>$nllN3g2;jUE-4|jgWWnHMZI27(wR1IbzPLxw?P* zSrEl|D4GYy+=vj!Mw`CpMG6bV1ffjeSef2_juA2FqbJ5|eDkd`XH*Z_WDw$PzVNbz z&yWv`ZmPS?lEd7hx)(*yb=p#Hi(BdAbCqK_7L~D|3*&)Q>M$>mSNyui|2=Y#`X+$z zR4BJM?^A;>@ZEC%&YIUgR0r?BcY4)J2Gt23SP_Ypi^%)?3?A%E+i!Z~_V?en@#cl2 zj=MI#FTZuy0o?3tFIMf~;H&-ibNga`IpgHIr7N?4JnfzK7*1>m`V-94eiV^Dk`3Nj z+UGNbI=P~@E3q}yb~CDoGP>BZV*cyb?6Br@syG3&*AK7Sm|}DHel_Q#?Zs^C^uaSK z(zc&4f?l-$q5a~iNE|KjHQByd8gl#QvOS-jzi*p|g7)ofwQAYj?5PA_HWTB{evdj8 zUWeRISa{y9;yvJJd4G|6f#jG(kS;FT^~Cys?!)trTpP3+;O54l^|Pg?xrH`i=}iEO zHwZ-DF3gk8%7818Tl3Sg4volN_o*%C7(HX5pZDaZQV)CMDCPY9{Nh1g+#=MH72q)o z9xhg9OLsQ3E7v&`)1Zg5m4!PWxGx~@3a#PY;sdX*xZ8y;%V2On!=aPE9aRDGd{rF> zM@OEK=RoB<%ps*?6qtbbL@odISc#z?H>rD6ncefm%X^Q+#a#6IV8hDXsa-DK;mOAl z@M7XVCalRUT23^p~}%sR&4{z!CxM1j1pcJ2(=GI0LJ85dVb2zZ4OxjbC-Jiy-2*|u5jw{+YRxN zbDGk|xH8?4hOE;q(>BF7rH{0m(#AN_*{Sn}x^9fCr;GH+tCA+dBYsoaW16P8db&uj zo+iSjcGWsw23KL0 zE+%eXMEU%7UIH#|3Qo8A2P!^Y*Rn9~FY@qkEfWWpxfGDNKIE}My(~VAG)BL>&7mpW zZCQeh%&Sff2%5PMt6^1PJV+H9LN)bq81u<-R*Vp7#kVz9ODWEPkH+$Tx_Zxse*AzJ zu+{4F0Z&Bcz=y?Xzl&XkEH3oGh!0qsyF-WCw{X?G-ThpON-~>19HS^p6Uy=D$aXQd zCD1zE)@@%(Xhk-V^wrjVS+(9q-*(Kuvx_6&YGd(n-EyI6@DW$5EnZgRL4( zS1mL@=pz>RIK4MV!8_(YDR{{$oIC~hRyha!Sl{sot*+U*bH5zLB7H*3s{|FGL6AAU z2>5Ts6|9`Its$u}N${d$z>`BL9wC%-x>2en85vD~6+VQ_ky%QOq=lFD2d)X?p#S=! zHF=Mid#yddMf>7rzG^RT?%T4i``o_2X{%0c6$kwVT*C|Eh&hM|{pGPG+2MQ_U&_{KQ|_*5n^u4Mfk(J5+8=3#wymI&)Po58 zcWMZ*Xo!%WUP{%C{fZfpd-7djg-QbbPn@^80)cnF(Dc=!gtuASs4i@lv7&siPq|i9 zHN0T4Ch{a$VXphqOPY(^xASv$5y5dNLWdm9Nz>{q$?zQq*iI`A9q!hn{B2|00LTU( z@4vGHVud!xh|C%0PJZ%U^^-e6wkI9l{npj0U5NecGT?pQ&uU*X{}bY6 zT|I%+zBel0weDt%6%N7Zecr-^4mzFXC2hIUr&$qaW4PkOEKXy2y1ZsLS(^>RoLPxU z6K4hLbF9yv9#L_1*1qP^zxLZXyR|E1f3KqWi>(#XOdF4u+CsL2jQn@44ML{G!op)3 zL+RJjt$1Af)ydf`l-W0UZcHG_20IPCetT~Ni~UJ^#xB=AOn%pf&5Cf_ysCeJ2*e*e&-1G%IjF@%A@OuBm3La;sNw)MrrUWegX5Rn_a{WHAGj!aUo0PcPl zeq(dDc?%Z#z=ZK)4@ELucJd~&Nk^*AHZNN7+?ILAi~@1kzSLSVw9sGO3n~47q8lok zuvpAMIPW9lUah|Mv}^G$ER@L35NmKvde-C`oqgH=bG{SgO0`_<`+ZkAGaQ{nOJn+e z-kyP@xr&8Lios8!(>=cS>!Ao&M4JxZQE9XPBu z67(svE&M=L3k_27w;HkEw0wUlk{{(Q(-*E^M$-~B5-k_7vUb|$mqqzzW3dgh%wRJr zd+X3L-dv&WzM)R#Tt{bo7dUNr$1$AGbNZAB;vs#>nS_|TQnb`RdVoX{<{VCM>yVNu zRocA3$(%Tb7bk6|OwUldS7%ArNlE9RJQuq+QcE_XvtSx2yd;6Wl_-r$MNs>;FPk$p zr5?ln{IKR@ajcvg4!&-ZDc*1TU@uVT*|LuW)dcE6f|;7l$eYg+xXQnmmLy@uV;(p z(>QgzuHr>C$Q&ORJ*}=qtb$>Ul3w6N-qHuCVrf(u zd9_PR^a%>hTY7uJ+Pz?%{`wE!fBlE{*AIN?@ABp&n)Z3?|EUhtR@<6_fkXG&EYFu7 z@ok%;_JX7~dRO|e!MXaT4Z{a--Y(l4+>~n`UcyvCjuR#c;31tqnsgqb*yt!ybdAH? zPrknR`fIv>Ie$uuf`*X?loJZV@vPEXDkU&tG$z_iO|M_8oXFAl>Ju&<7?C)0S$yl` zs`U+v|J7CdB5AeTGrbZLs{Gqf9^cc z#3m^{U3hmb&J*tZu7?50N0DZ0Ae4l|D|SnqDZfbA)Lb;&l5;%i&`+awghXC5!&9g%jwojii0Y zI;I)$W=&kY)#w3e`HhWbD@zaT$%b!^NB@iV1IPDlO(hG&*IS>R2@lMPJd1&JeOC#IN7y>`-i#}TzX@fxQ-PWY}-2dN}QZ&`5;BCdtHKK%xKKsOIez+E=>yjX?d7W;cN zvw;>GU;lQ6mTxLES4zlZk#Y$~6%4rQAuAH1YrE_g)m&w6-^R>=&b*Q4)Shl{qX_jm*8 z;&Z$I_t$OSyL$Is+3~GCoA_Pde2Ckxda&F!Y}{=;vqYTqsA z_rLikgUedF)&560%D{%n{D9*ty8Z3*mK5YrW4$fxBrpW!n+hu3=c4t zGT?Kyp+gH?EF!QPtY9Wkf!4+i5m(QS@rzx-Z9jiez$*#xl{}(Om6D~3wQMF)6aU+C zEW47sZ&L?&kNg{tuAvoJ-hX@K?@6$@{M+*1mUN1KN&*_SIk`walCL;|GC||d{~+as_nBwsP+>^{T)6ped7A2%|pwpr|o}l3;bQdCVacbh7`Gr;NZq@pSNSYVr{KU0z}*3t|$aGC~gT* zq;-jk+7@wn0F8-35yMNhrnPAw8d2hc3q~JGzw=-G6ErvR$&-AUd+(W<^UXJNPc+b= zCBvka&`kES5aT`sR-|l+5R(EUQz3pgjMxLKGGW&|=)VAxglmgn&sT~Uj;w$$}$2_!U!xN_Jad*&X@Y5~0?j2c-~Dw$-3HCD5i1!(@w$o1JZpb+!w<0VV$r|C@Ki?@j5GC z=Q({k?}ur^AHrbe?3o8!gx-zvc=>es!LM)5A=p#|i>1}yKS94EF#0Gw7o0w>E-%ir z74LNZM@TrMITA9?L9vij2~)0z>hd}(^SHmyU5g=C_)}Vae;Pjh87BV%RlkPvc=;^T zjJP?uaaJ0a!oT8?b6&j^#$ABxLa^^%K6z#SIh$G`J+5hfg$UJ?B22gm-w44xUOq!L zqi#;033qBVH}}Qk71aKxUSaGGvo|_>X}JB7e~#PM!Gjl2`Vzuw{j*%~45l~u`M7>H z_IcRa*cxT5j5bm_8|hul_a9{UG#0ltDn2$=bufyx7p8A6r>o25@#35qZodC6qm9wd zE(8wEP*bpOYuHkrJG-HJJS1QKUP#9@Uh%q(_ z2Zj1RA$`2gx~dxf`oy@SnB52^G={vwEQXa>9?_l$BuN?L^|3{x$(-gjUr;ob}8{c8BhTrwAcBs)S{Qd8= zHvNq?>fQUUAVd8+zIk>1|4=J9e_p-3Cw-ho3#DzE@VRuaiq}kzH*%AVyF&0@_VOv8 JV>}eR*8k%YYi|Gm diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/symbols0.pbxsymbols b/games/Pong/build/Pong.build/Pong.pbxindex/symbols0.pbxsymbols deleted file mode 100644 index 6ee7734e9ad96ba452a8b9f7e8ef02d0d10f1782..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 752024 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 lO8Pcfo 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 aG_O3JAkzujFYVq%aw6_~$Sxi45C0EM3LJ$1 From c7919309e974174f4ff167790d3b8969496ed879 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Sun, 6 Mar 2011 01:11:28 +0100 Subject: [PATCH 103/192] added pong vm --- erlang_js | 2 +- games/Pong/Classes/GGSNetwork.h | 4 +- games/Pong/Classes/GGSNetwork.m | 88 +- games/Pong/Classes/PongViewController.m | 35 +- games/Pong/Pong.xcodeproj/jeena.mode1v3 | 134 +- games/Pong/Pong.xcodeproj/jeena.pbxuser | 2290 ++--------------------- src/ggs_api.js | 21 +- src/ggs_coordinator.erl | 2 +- src/ggs_gamevm.erl | 21 +- src/ggs_gamevm_p.erl | 279 +++ src/ggs_player.erl | 9 +- src/ggs_table.erl | 22 +- tests/ggs_coordinator_test.erl | 8 +- 13 files changed, 567 insertions(+), 2348 deletions(-) create mode 100644 src/ggs_gamevm_p.erl diff --git a/erlang_js b/erlang_js index 709b568..2f2785f 160000 --- a/erlang_js +++ b/erlang_js @@ -1 +1 @@ -Subproject commit 709b568efbc99c954507d1593bc5633f900bc5dc +Subproject commit 2f2785fafb0da6db75810eb6fa97d09c58257588 diff --git a/games/Pong/Classes/GGSNetwork.h b/games/Pong/Classes/GGSNetwork.h index 664fc19..66c007a 100644 --- a/games/Pong/Classes/GGSNetwork.h +++ b/games/Pong/Classes/GGSNetwork.h @@ -25,8 +25,8 @@ @property (nonatomic, retain) NSString *gameToken; - (id)initWithDelegate:(id)delegate; -- (NSData *)makeMessageWithCommand:(NSString *)command andArgs:(NSString *)args; -- (void)parseHeader:(NSData *)headerData; +- (NSData *)makeMessageFor:(NSString *)serverOrGame withCommand:(NSString *)command andArgs:(NSString *)args; +- (void)parseAndSetHeader:(NSData *)headerData; - (void)define:(NSString *)sourceCode; - (void)sendCommand:(NSString *)command withArgs:(NSString *)args; diff --git a/games/Pong/Classes/GGSNetwork.m b/games/Pong/Classes/GGSNetwork.m index 1003c48..fbf635f 100644 --- a/games/Pong/Classes/GGSNetwork.m +++ b/games/Pong/Classes/GGSNetwork.m @@ -17,6 +17,7 @@ #define HEADER_DELIMITER [@"\n\n" dataUsingEncoding:NSUTF8StringEncoding] +#define NO_TAG 7 #define CONNECT_HEAD 8 #define CONNECT_BODY 9 #define HELLO_HEAD 10 @@ -25,6 +26,8 @@ #define DEFINE_BODY 13 #define COMMAND_HEAD 14 #define COMMAND_BODY 15 +#define HEAD 16 +#define BODY 17 @synthesize asyncSocket, delegate, gameToken, currentHeaders; @@ -34,28 +37,27 @@ asyncSocket = [[AsyncSocket alloc] initWithDelegate:self]; [asyncSocket connectToHost:GGS_HOST onPort:GGS_PORT error:nil]; - [asyncSocket readDataToData:HEADER_DELIMITER withTimeout:NO_TIMEOUT tag:CONNECT_HEAD]; + [asyncSocket readDataToData:HEADER_DELIMITER withTimeout:NO_TIMEOUT tag:HEAD]; } return self; } -- (NSData *)makeMessageWithCommand:(NSString *)command andArgs:(NSString *)args { - return [[NSString stringWithFormat:@"Token: %@\nServer-Command: %@\nContent-Length: %i\n\n%@", +- (NSData *)makeMessageFor:(NSString *)serverOrGame withCommand:(NSString *)command andArgs:(NSString *)args { + return [[NSString stringWithFormat:@"Token: %@\n%@-Command: %@\nContent-Length: %i\n\n%@", self.gameToken, + serverOrGame, command, [args length], args] dataUsingEncoding:NSUTF8StringEncoding]; } - (void)define:(NSString *)sourceCode { - [asyncSocket writeData:[self makeMessageWithCommand:@"define" andArgs:sourceCode] withTimeout:NO_TIMEOUT tag:DEFINE_HEAD]; - [asyncSocket readDataToData:HEADER_DELIMITER withTimeout:NO_TIMEOUT tag:DEFINE_BODY]; + [asyncSocket writeData:[self makeMessageFor:@"Server" withCommand:@"define" andArgs:sourceCode] withTimeout:NO_TIMEOUT tag:NO_TAG]; } - (void)sendCommand:(NSString *)command withArgs:(NSString *)args { - [asyncSocket writeData:[self makeMessageWithCommand:command andArgs:args] withTimeout:NO_TIMEOUT tag:COMMAND_HEAD]; - [asyncSocket readDataToData:HEADER_DELIMITER withTimeout:NO_TIMEOUT tag:COMMAND_BODY]; + [asyncSocket writeData:[self makeMessageFor:@"Game" withCommand:command andArgs:args] withTimeout:NO_TIMEOUT tag:NO_TAG]; } - (void)onSocket:(AsyncSocket *)sock didConnectToHost:(NSString *)host port:(UInt16)port { @@ -64,53 +66,49 @@ - (void)onSocket:(AsyncSocket *)sender didReadData:(NSData *)data withTag:(long)tag { - if (tag == CONNECT_HEAD) { - - [self parseHeader:data]; - - if ([self.currentHeaders objectForKey:@"Size"] != nil) { - [asyncSocket readDataToLength:[[self.currentHeaders objectForKey:@"Size"] intValue] withTimeout:NO_TIMEOUT tag:CONNECT_BODY]; - } - - - } else if (tag == CONNECT_BODY) { + + if (tag == HEAD) { + [self parseAndSetHeader:data]; - NSString *response = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; - self.gameToken = response; - [response release]; - [delegate GGSNetwork:self ready:YES]; - - } else if (tag == DEFINE_HEAD) { - - [self.delegate GGSNetwork:self defined:YES]; - - } else if (tag == DEFINE_BODY) { - - // nothing to do - - } else if (tag == COMMAND_HEAD) { - - [self parseHeader:data]; - - if ([self.currentHeaders objectForKey:@"Size"] != nil) { - [asyncSocket readDataToLength:[[self.currentHeaders objectForKey:@"Size"] intValue] withTimeout:NO_TIMEOUT tag:COMMAND_BODY]; + NSInteger size = [[self.currentHeaders objectForKey:@"Content-Size"] intValue]; + if (size > 0) { + [asyncSocket readDataToLength:size withTimeout:NO_TIMEOUT tag:BODY]; + } else { + [delegate GGSNetwork:self receivedCommand:[self.currentHeaders objectForKey:@"Client-Command"] withArgs:@""]; + [asyncSocket readDataToData:HEADER_DELIMITER withTimeout:NO_TIMEOUT tag:HEAD]; } - } else if (tag == COMMAND_BODY) { + } else { NSString *response = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; - if ([self.currentHeaders objectForKey:@"Client-Command"] != nil) { - [delegate GGSNetwork:self receivedCommand:[self.currentHeaders objectForKey:@"Client-Command"] withArgs:response]; - [asyncSocket readDataToData:HEADER_DELIMITER withTimeout:NO_TIMEOUT tag:COMMAND_BODY]; + + NSString *command = [self.currentHeaders objectForKey:@"Client-Command"]; + if ([command isEqualToString:@"defined"]) { + + if ([response isEqualToString:@"ok"]) { + [delegate GGSNetwork:self defined:YES]; + } else { + [delegate GGSNetwork:self defined:NO]; + } + + } else if ([command isEqualToString:@"hello"]) { + + self.gameToken = response; + + [delegate GGSNetwork:self ready:YES]; + + } else { + [delegate GGSNetwork:self receivedCommand:command withArgs:response]; } - [response release]; + + [asyncSocket readDataToData:HEADER_DELIMITER withTimeout:NO_TIMEOUT tag:HEAD]; } } -- (void)parseHeader:(NSData *)headerData { +- (void)parseAndSetHeader:(NSData *)headerData { NSString *headerString = [[NSString alloc] initWithData:headerData encoding:NSUTF8StringEncoding]; NSArray *headers = [headerString componentsSeparatedByString:@"\n"]; - + NSMutableDictionary *dict = [[NSMutableDictionary alloc] initWithCapacity:[headers count]]; for (NSInteger i=0; i<[headers count]; i++) { @@ -118,8 +116,8 @@ if ([header rangeOfString:@"Client-Command: "].location == 0) { [dict setValue:[header substringFromIndex:16] forKey:@"Client-Command"]; - } else if ([header rangeOfString:@"Size: "].location == 0) { - [dict setValue:[header substringFromIndex:6] forKey:@"Size"]; + } else if ([header rangeOfString:@"Content-Size: "].location == 0) { + [dict setValue:[header substringFromIndex:14] forKey:@"Content-Size"]; } } diff --git a/games/Pong/Classes/PongViewController.m b/games/Pong/Classes/PongViewController.m index 8a9b1de..4f7a3d2 100644 --- a/games/Pong/Classes/PongViewController.m +++ b/games/Pong/Classes/PongViewController.m @@ -18,7 +18,10 @@ #define WIDTH 480 #define HEIGHT 320 -@synthesize ballView, player1View, player2View, tapToBegin, pointsP1, pointsP2; +#define TOX(x) ( WIDTH / 100 * (x)) +#define TOY(y) ( HEIGHT / 100 * (y)) + +@synthesize ballView, player1View, player2View, tapToBegin, pointsP1, pointsP2, ggsNetwork; /* // The designated initializer. Override to perform setup that is required before the view is loaded. @@ -38,6 +41,10 @@ } */ +-(BOOL)canBecomeFirstResponder { + return YES; +} + #pragma mark - #pragma mark GGSNetwork Delegate @@ -47,16 +54,28 @@ - (void)GGSNetwork:(GGSNetwork *)_ggsNetwork defined:(BOOL)defined { if (defined) { - [ggsNetwork sendCommand:@"nick" withArgs:@"jeena"]; - [ggsNetwork sendCommand:@"chat" withArgs:@"Hi everybody I'm pong."]; + [ggsNetwork sendCommand:@"ready" withArgs:@""]; } else { NSLog(@"Not defined"); } } -- (void)GGSNetwork:(GGSNetwork *)ggsNetwork receivedCommand:(NSString *)command withArgs:(NSString *)args { +- (void)GGSNetwork:(GGSNetwork *)_ggsNetwork receivedCommand:(NSString *)command withArgs:(NSString *)args { NSLog(@"Command: %@; Args: %@", command, args); + + if ([command isEqualToString:@"ball"]) { + NSArray *ball = [args componentsSeparatedByString:@","]; + ballView.center = CGPointMake([[ball objectAtIndex:0] intValue], [[ball objectAtIndex:1] intValue]); + } else if ([command isEqualToString:@"player1_y"]) { + player1View.center = CGPointMake(20, TOY([args intValue])); + } else if ([command isEqualToString:@"player2_y"]) { + player2View.center = CGPointMake(WIDTH - 40, TOY([args intValue])); + } else if ([command isEqualToString:@"player1_points"]) { + pointsP1.text = args; + } else if ([command isEqualToString:@"player2_points"]) { + pointsP2.text = args; + } } @@ -70,8 +89,8 @@ ggsNetwork = [[GGSNetwork alloc] initWithDelegate:self]; gamePaused = YES; - [self startPositions]; - [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(moveBall) userInfo:nil repeats:YES]; + //[self startPositions]; + //[NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(moveBall) userInfo:nil repeats:YES]; } -(void)viewDidAppear:(BOOL)animated { @@ -104,7 +123,7 @@ // e.g. self.myOutlet = nil; } - +/* # pragma mark - # pragma mark Ball @@ -222,7 +241,7 @@ pointsP1.text = @"0"; pointsP2.text = @"0"; } - +*/ # pragma mark - # pragma mark Dealloc diff --git a/games/Pong/Pong.xcodeproj/jeena.mode1v3 b/games/Pong/Pong.xcodeproj/jeena.mode1v3 index 2254fb4..99db5bd 100644 --- a/games/Pong/Pong.xcodeproj/jeena.mode1v3 +++ b/games/Pong/Pong.xcodeproj/jeena.mode1v3 @@ -271,7 +271,7 @@ PBXSmartGroupTreeModuleOutlineStateSelectionKey - 11 + 8 1 0 @@ -296,7 +296,7 @@ 186 RubberWindowFrame - 1041 121 1267 1297 0 0 2560 1418 + 1164 121 1267 1297 0 0 2560 1418 Module PBXSmartGroupTreeModule @@ -314,7 +314,7 @@ PBXProjectModuleGUID 1CE0B20306471E060097A5F4 PBXProjectModuleLabel - GGSNetwork.m + PongViewController.m PBXSplitModuleInNavigatorKey Split0 @@ -322,11 +322,11 @@ PBXProjectModuleGUID 1CE0B20406471E060097A5F4 PBXProjectModuleLabel - GGSNetwork.m + PongViewController.m _historyCapacity 0 bookmark - 1FBEC151131B2C52006D5497 + 1F369E7B1323081C004E7A99 history 1FBEBF151319F5C1006D5497 @@ -334,11 +334,11 @@ 1FBEC002131AA71C006D5497 1FBEC05C131B085D006D5497 1FBEC05D131B085D006D5497 - 1FBEC124131B2559006D5497 - 1FBEC12D131B2581006D5497 - 1FBEC12E131B2581006D5497 - 1FBEC141131B2757006D5497 - 1FBEC13C131B26A1006D5497 + 1F369E761323081C004E7A99 + 1F369E771323081C004E7A99 + 1F369E781323081C004E7A99 + 1F369E791323081C004E7A99 + 1F369E7A1323081C004E7A99 SplitCount @@ -350,14 +350,14 @@ GeometryConfiguration Frame - {{0, 0}, {1059, 1064}} + {{0, 0}, {1059, 1251}} RubberWindowFrame - 1041 121 1267 1297 0 0 2560 1418 + 1164 121 1267 1297 0 0 2560 1418 Module PBXNavigatorGroup Proportion - 1064pt + 1251pt ContentConfiguration @@ -370,14 +370,14 @@ GeometryConfiguration Frame - {{0, 1069}, {1059, 187}} + {{0, 1256}, {1059, 0}} RubberWindowFrame - 1041 121 1267 1297 0 0 2560 1418 + 1164 121 1267 1297 0 0 2560 1418 Module XCDetailModule Proportion - 187pt + 0pt Proportion @@ -396,9 +396,9 @@ TableOfContents - 1FBEBE4E1319CC38006D5497 + 1F369E7C1323081C004E7A99 1CE0B1FE06471DED0097A5F4 - 1FBEBE4F1319CC38006D5497 + 1F369E7D1323081C004E7A99 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 @@ -536,15 +536,15 @@ 5 WindowOrderList - 1FBEBE9F1319D79C006D5497 - 1FBEBEA01319D79C006D5497 - 1FA056A412F0B540003F1373 + 1F369E861323081C004E7A99 + 1F369E871323081C004E7A99 1CD10A99069EF8BA00B06720 + 1FA056A412F0B540003F1373 1C78EAAD065D492600B07095 - /Users/jeena/Projects/Pong/Pong.xcodeproj + /Users/jeena/Student/GGS/games/Pong/Pong.xcodeproj WindowString - 1041 121 1267 1297 0 0 2560 1418 + 1164 121 1267 1297 0 0 2560 1418 WindowToolsV3 @@ -560,14 +560,12 @@ Dock - BecomeActive - ContentConfiguration PBXProjectModuleGUID 1CD0528F0623707200166675 PBXProjectModuleLabel - PongViewController.m + StatusBarVisibility @@ -623,7 +621,7 @@ TableOfContents 1FA056A412F0B540003F1373 - 1FBEBE501319CC38006D5497 + 1F369E7E1323081C004E7A99 1CD0528F0623707200166675 XCMainBuildResultsModuleGUID @@ -667,8 +665,8 @@ yes sizes - {{0, 0}, {316, 194}} - {{316, 0}, {378, 194}} + {{0, 0}, {316, 201}} + {{316, 0}, {378, 201}} VerticalSplitView @@ -683,8 +681,8 @@ yes sizes - {{0, 0}, {694, 194}} - {{0, 194}, {694, 187}} + {{0, 0}, {694, 201}} + {{0, 201}, {694, 180}} @@ -717,7 +715,7 @@ 148 Frame - {{316, 0}, {378, 194}} + {{316, 0}, {378, 201}} RubberWindowFrame 108 977 694 422 0 0 2560 1418 @@ -745,13 +743,13 @@ TableOfContents 1CD10A99069EF8BA00B06720 - 1FBEBE981319D79C006D5497 + 1F369E7F1323081C004E7A99 1C162984064C10D400B95A72 - 1FBEBE991319D79C006D5497 - 1FBEBE9A1319D79C006D5497 - 1FBEBE9B1319D79C006D5497 - 1FBEBE9C1319D79C006D5497 - 1FBEBE9D1319D79C006D5497 + 1F369E801323081C004E7A99 + 1F369E811323081C004E7A99 + 1F369E821323081C004E7A99 + 1F369E831323081C004E7A99 + 1F369E841323081C004E7A99 ToolbarConfiguration xcode.toolbar.config.debugV3 @@ -760,11 +758,15 @@ WindowToolGUID 1CD10A99069EF8BA00B06720 WindowToolIsVisible - + + FirstTimeWindowDisplayed + Identifier windowTool.find + IsVertical + Layout @@ -779,26 +781,16 @@ PBXProjectModuleGUID 1CDD528C0622207200134675 PBXProjectModuleLabel - <No Editor> - PBXSplitModuleInNavigatorKey - - Split0 - - PBXProjectModuleGUID - 1CD0528D0623707200166675 - - SplitCount - 1 - + StatusBarVisibility - 1 + GeometryConfiguration Frame - {{0, 0}, {781, 167}} + {{0, 0}, {781, 212}} RubberWindowFrame - 62 385 781 470 0 0 1440 878 + 1185 925 781 470 0 0 2560 1418 Module PBXNavigatorGroup @@ -807,11 +799,11 @@ Proportion - 50% + 212pt BecomeActive - 1 + ContentConfiguration PBXProjectModuleGUID @@ -822,18 +814,18 @@ GeometryConfiguration Frame - {{8, 0}, {773, 254}} + {{0, 217}, {781, 212}} RubberWindowFrame - 62 385 781 470 0 0 1440 878 + 1185 925 781 470 0 0 2560 1418 Module PBXProjectFindModule Proportion - 50% + 212pt Proportion - 428pt + 429pt Name @@ -843,23 +835,21 @@ PBXProjectFindModule StatusbarIsVisible - 1 + TableOfContents 1C530D57069F1CE1000CFCEE - 1C530D58069F1CE1000CFCEE - 1C530D59069F1CE1000CFCEE + 1FC1C556131C35AC00D1FF71 + 1FC1C557131C35AC00D1FF71 1CDD528C0622207200134675 - 1C530D5A069F1CE1000CFCEE - 1CE0B1FE06471DED0097A5F4 1CD0528E0623707200166675 WindowString - 62 385 781 470 0 0 1440 878 + 1185 925 781 470 0 0 2560 1418 WindowToolGUID 1C530D57069F1CE1000CFCEE WindowToolIsVisible - 0 + Identifier @@ -890,18 +880,18 @@ GeometryConfiguration Frame - {{0, 0}, {662, 564}} + {{0, 0}, {673, 481}} RubberWindowFrame - 1852 70 662 605 0 0 2560 1418 + 3600 653 673 522 2560 0 1920 1200 Module PBXDebugCLIModule Proportion - 564pt + 481pt Proportion - 564pt + 481pt Name @@ -915,13 +905,13 @@ TableOfContents 1C78EAAD065D492600B07095 - 1FBEBE9E1319D79C006D5497 + 1F369E851323081C004E7A99 1C78EAAC065D492600B07095 ToolbarConfiguration xcode.toolbar.config.consoleV3 WindowString - 1852 70 662 605 0 0 2560 1418 + 3600 653 673 522 2560 0 1920 1200 WindowToolGUID 1C78EAAD065D492600B07095 WindowToolIsVisible diff --git a/games/Pong/Pong.xcodeproj/jeena.pbxuser b/games/Pong/Pong.xcodeproj/jeena.pbxuser index 3ec1a00..f609c15 100644 --- a/games/Pong/Pong.xcodeproj/jeena.pbxuser +++ b/games/Pong/Pong.xcodeproj/jeena.pbxuser @@ -20,6 +20,66 @@ 1FA0569112F0B513003F1373 /* Pong */, ); }; + 1F369E761323081C004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; + name = "GGSDelegate.h: 16"; + rLen = 0; + rLoc = 283; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 1F369E771323081C004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 28"; + rLen = 0; + rLoc = 748; + rType = 0; + vrLen = 910; + vrLoc = 0; + }; + 1F369E781323081C004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 60"; + rLen = 0; + rLoc = 1529; + rType = 0; + vrLen = 2676; + vrLoc = 860; + }; + 1F369E791323081C004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 11"; + rLen = 0; + rLoc = 207; + rType = 0; + vrLen = 1144; + vrLoc = 0; + }; + 1F369E7A1323081C004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 24"; + rLen = 0; + rLoc = 522; + rType = 0; + vrLen = 1968; + vrLoc = 37; + }; + 1F369E7B1323081C004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 40"; + rLen = 0; + rLoc = 989; + rType = 0; + vrLen = 2275; + vrLoc = 799; + }; 1FA0569112F0B513003F1373 /* Pong */ = { isa = PBXExecutable; activeArgIndices = ( @@ -66,260 +126,6 @@ isa = PBXCodeSenseManager; indexTemplatePath = ""; }; - 1FB25C6312F4AAD8009AC8AB /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 1455; - vrLoc = 0; - }; - 1FB25C6412F4AAD8009AC8AB /* PBXBookmark */ = { - isa = PBXBookmark; - fRef = 8D1107310486CEB800E47090 /* Pong-Info.plist */; - }; - 1FB25C6512F4AAD8009AC8AB /* PlistBookmark */ = { - isa = PlistBookmark; - fRef = 8D1107310486CEB800E47090 /* Pong-Info.plist */; - fallbackIsa = PBXBookmark; - isK = 0; - kPath = ( - ); - name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; - rLen = 0; - rLoc = 9223372036854775808; - }; - 1FBEBE4C1319CC38006D5497 /* PlistBookmark */ = { - isa = PlistBookmark; - fRef = 8D1107310486CEB800E47090 /* Pong-Info.plist */; - fallbackIsa = PBXBookmark; - isK = 0; - kPath = ( - ); - name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; - rLen = 0; - rLoc = 9223372036854775808; - }; - 1FBEBE4D1319CC38006D5497 /* PlistBookmark */ = { - isa = PlistBookmark; - fRef = 8D1107310486CEB800E47090 /* Pong-Info.plist */; - fallbackIsa = PBXBookmark; - isK = 0; - kPath = ( - ); - name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; - rLen = 0; - rLoc = 9223372036854775808; - }; - 1FBEBE641319D1E5006D5497 /* PongView.h */ = { - isa = PBXFileReference; - fileEncoding = 4; - lastKnownFileType = sourcecode.c.h; - name = PongView.h; - path = /Users/jeena/Projects/Pong/Classes/PongView.h; - sourceTree = ""; - }; - 1FBEBE651319D1E5006D5497 /* PongView.m */ = { - isa = PBXFileReference; - fileEncoding = 4; - lastKnownFileType = sourcecode.c.objc; - name = PongView.m; - path = /Users/jeena/Projects/Pong/Classes/PongView.m; - sourceTree = ""; - }; - 1FBEBE911319D79C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1D3623250D0F684500981E51 /* PongAppDelegate.m */; - name = "PongAppDelegate.m: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 2312; - vrLoc = 0; - }; - 1FBEBE921319D79C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 15"; - rLen = 0; - rLoc = 1137; - rType = 0; - vrLen = 224; - vrLoc = 0; - }; - 1FBEBE931319D79C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 61"; - rLen = 0; - rLoc = 5614; - rType = 0; - vrLen = 1454; - vrLoc = 0; - }; - 1FBEBE941319D79C006D5497 /* PlistBookmark */ = { - isa = PlistBookmark; - fRef = 8D1107310486CEB800E47090 /* Pong-Info.plist */; - fallbackIsa = PBXBookmark; - isK = 0; - kPath = ( - ); - name = "/Users/jeena/Projects/Pong/Pong-Info.plist"; - rLen = 0; - rLoc = 9223372036854775808; - }; - 1FBEBE951319D79C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 17"; - rLen = 0; - rLoc = 185; - rType = 0; - vrLen = 489; - vrLoc = 0; - }; - 1FBEBE961319D79C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 52"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1438; - vrLoc = 27; - }; - 1FBEBE971319D79C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 45"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1618; - vrLoc = 225; - }; - 1FBEBEAB1319D7F2006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 67"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1631; - vrLoc = 261; - }; - 1FBEBEB41319DC5A006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 37"; - rLen = 0; - rLoc = 175; - rType = 0; - vrLen = 1612; - vrLoc = 377; - }; - 1FBEBEB51319DC5A006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 15"; - rLen = 0; - rLoc = 184; - rType = 0; - vrLen = 460; - vrLoc = 0; - }; - 1FBEBEB61319DC5A006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 17"; - rLen = 0; - rLoc = 184; - rType = 0; - vrLen = 498; - vrLoc = 0; - }; - 1FBEBED01319E5FE006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 55"; - rLen = 0; - rLoc = 175; - rType = 0; - vrLen = 1422; - vrLoc = 27; - }; - 1FBEBED11319E5FE006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 17"; - rLen = 0; - rLoc = 184; - rType = 0; - vrLen = 501; - vrLoc = 0; - }; - 1FBEBED21319E5FE006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 16"; - rLen = 0; - rLoc = 184; - rType = 0; - vrLen = 532; - vrLoc = 0; - }; - 1FBEBED81319E723006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 54"; - rLen = 0; - rLoc = 175; - rType = 0; - vrLen = 1546; - vrLoc = 852; - }; - 1FBEBED91319E723006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 16"; - rLen = 0; - rLoc = 184; - rType = 0; - vrLen = 532; - vrLoc = 0; - }; - 1FBEBEDA1319E723006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 24"; - rLen = 0; - rLoc = 186; - rType = 0; - vrLen = 591; - vrLoc = 0; - }; - 1FBEBEF61319EEB6006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 24"; - rLen = 0; - rLoc = 186; - rType = 0; - vrLen = 591; - vrLoc = 0; - }; - 1FBEBEF71319EEB6006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 87"; - rLen = 0; - rLoc = 175; - rType = 0; - vrLen = 1537; - vrLoc = 1310; - }; 1FBEBF151319F5C1006D5497 /* PlistBookmark */ = { isa = PlistBookmark; fRef = 8D1107310486CEB800E47090 /* Pong-Info.plist */; @@ -331,176 +137,6 @@ rLen = 0; rLoc = 9223372036854775808; }; - 1FBEBF161319F5C1006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1D3623250D0F684500981E51 /* PongAppDelegate.m */; - name = "PongAppDelegate.m: 27"; - rLen = 0; - rLoc = 666; - rType = 0; - vrLen = 2210; - vrLoc = 0; - }; - 1FBEBF171319F5C1006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 58"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1571; - vrLoc = 894; - }; - 1FBEBF181319F5C1006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 17"; - rLen = 0; - rLoc = 1137; - rType = 0; - vrLen = 397; - vrLoc = 0; - }; - 1FBEBF191319F5C1006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 65"; - rLen = 0; - rLoc = 5613; - rType = 0; - vrLen = 1580; - vrLoc = 37; - }; - 1FBEBF1A1319F5C1006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 26"; - rLen = 0; - rLoc = 777; - rType = 0; - vrLen = 1647; - vrLoc = 0; - }; - 1FBEBF1E1319F691006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 26"; - rLen = 0; - rLoc = 777; - rType = 0; - vrLen = 1647; - vrLoc = 0; - }; - 1FBEBF1F1319F691006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 15"; - rLen = 0; - rLoc = 1137; - rType = 0; - vrLen = 224; - vrLoc = 0; - }; - 1FBEBF201319F691006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 31"; - rLen = 0; - rLoc = 187; - rType = 0; - vrLen = 768; - vrLoc = 0; - }; - 1FBEBF211319F691006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 69"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1507; - vrLoc = 744; - }; - 1FBEBF221319F691006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 69"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1700; - vrLoc = 744; - }; - 1FBEBF351319F93F006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 15"; - rLen = 0; - rLoc = 1137; - rType = 0; - vrLen = 224; - vrLoc = 0; - }; - 1FBEBF361319F93F006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 61"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1563; - vrLoc = 1106; - }; - 1FBEBF371319F93F006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 10"; - rLen = 0; - rLoc = 191; - rType = 0; - vrLen = 1593; - vrLoc = 168; - }; - 1FBEBF381319F93F006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 10"; - rLen = 0; - rLoc = 191; - rType = 0; - vrLen = 1593; - vrLoc = 168; - }; - 1FBEBF3E1319F9ED006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 60"; - rLen = 0; - rLoc = 5613; - rType = 0; - vrLen = 1502; - vrLoc = 37; - }; - 1FBEBF3F1319F9ED006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 61"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1670; - vrLoc = 999; - }; - 1FBEBF401319F9ED006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 143"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1552; - vrLoc = 2030; - }; 1FBEBF4B1319FCDE006D5497 /* AsyncSocket.h */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {900, 10170}}"; @@ -515,48 +151,20 @@ sepNavVisRange = "{0, 2997}"; }; }; - 1FBEBFAD1319FE92006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 143"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1548; - vrLoc = 0; - }; 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {900, 958}}"; - sepNavSelRange = "{396, 0}"; - sepNavVisRange = "{0, 743}"; + sepNavIntBoundsRect = "{{0, 0}, {998, 1171}}"; + sepNavSelRange = "{748, 0}"; + sepNavVisRange = "{0, 910}"; }; }; 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {998, 1755}}"; - sepNavSelRange = "{1779, 0}"; - sepNavVisRange = "{1376, 2177}"; + sepNavIntBoundsRect = "{{0, 0}, {998, 1920}}"; + sepNavSelRange = "{1529, 0}"; + sepNavVisRange = "{860, 2676}"; }; }; - 1FBEBFFD131AA714006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - comments = "'HEIGHT' undeclared (first use in this function)"; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - rLen = 0; - rLoc = 29; - rType = 1; - }; - 1FBEBFFE131AA714006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 89"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 343; - vrLoc = 1480; - }; 1FBEC001131AA71C006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 1FBEBF4B1319FCDE006D5497 /* AsyncSocket.h */; @@ -577,471 +185,13 @@ vrLen = 2997; vrLoc = 0; }; - 1FBEC003131AA71C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - name = "Network.h: 18"; - rLen = 0; - rLoc = 592; - rType = 0; - vrLen = 376; - vrLoc = 0; - }; - 1FBEC004131AA71C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 143"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1577; - vrLoc = 3; - }; - 1FBEC005131AA71C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 31"; - rLen = 0; - rLoc = 903; - rType = 0; - vrLen = 1578; - vrLoc = 28; - }; - 1FBEC006131AA71C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 31"; - rLen = 0; - rLoc = 880; - rType = 0; - vrLen = 1219; - vrLoc = 0; - }; - 1FBEC007131AA71C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 28"; - rLen = 0; - rLoc = 732; - rType = 0; - vrLen = 1164; - vrLoc = 0; - }; - 1FBEC00A131AA739006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 28"; - rLen = 0; - rLoc = 783; - rType = 0; - vrLen = 1160; - vrLoc = 0; - }; - 1FBEC00D131AA74F006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 29"; - rLen = 0; - rLoc = 880; - rType = 0; - vrLen = 1189; - vrLoc = 0; - }; - 1FBEC010131AA773006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 29"; - rLen = 0; - rLoc = 880; - rType = 0; - vrLen = 1189; - vrLoc = 0; - }; - 1FBEC011131AA773006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 31"; - rLen = 0; - rLoc = 903; - rType = 0; - vrLen = 1576; - vrLoc = 28; - }; - 1FBEC012131AA773006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 32"; - rLen = 0; - rLoc = 904; - rType = 0; - vrLen = 1586; - vrLoc = 37; - }; - 1FBEC015131AA78E006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 31"; - rLen = 0; - rLoc = 904; - rType = 0; - vrLen = 1586; - vrLoc = 37; - }; - 1FBEC016131AA78E006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 29"; - rLen = 0; - rLoc = 880; - rType = 0; - vrLen = 1189; - vrLoc = 0; - }; - 1FBEC017131AA78E006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 31"; - rLen = 0; - rLoc = 881; - rType = 0; - vrLen = 1189; - vrLoc = 0; - }; - 1FBEC01A131AA799006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 29"; - rLen = 0; - rLoc = 730; - rType = 0; - vrLen = 1189; - vrLoc = 0; - }; - 1FBEC01D131AA7B8006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 37"; - rLen = 0; - rLoc = 2142; - rType = 0; - vrLen = 1235; - vrLoc = 0; - }; - 1FBEC020131AA7F1006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 32"; - rLen = 0; - rLoc = 796; - rType = 0; - vrLen = 1304; - vrLoc = 0; - }; - 1FBEC023131AA82B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 36"; - rLen = 0; - rLoc = 830; - rType = 0; - vrLen = 1306; - vrLoc = 0; - }; - 1FBEC026131AF718006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 29"; - rLen = 0; - rLoc = 770; - rType = 0; - vrLen = 1310; - vrLoc = 0; - }; - 1FBEC029131AF724006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 36"; - rLen = 0; - rLoc = 830; - rType = 0; - vrLen = 1310; - vrLoc = 0; - }; - 1FBEC02C131AF749006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 30"; - rLen = 0; - rLoc = 830; - rType = 0; - vrLen = 1213; - vrLoc = 0; - }; - 1FBEC02F131AF752006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "Network.m: 30"; - rLen = 0; - rLoc = 830; - rType = 0; - vrLen = 1213; - vrLoc = 0; - }; 1FBEC030131AF83B006D5497 /* GGSDelegate.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {900, 958}}"; + sepNavIntBoundsRect = "{{0, 0}, {998, 1171}}"; sepNavSelRange = "{283, 0}"; - sepNavVisRange = "{0, 459}"; + sepNavVisRange = "{0, 531}"; }; }; - 1FBEC031131AFA87006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 10"; - rLen = 0; - rLoc = 207; - rType = 0; - vrLen = 262; - vrLoc = 0; - }; - 1FBEC032131AFA87006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; - name = "GGSDelegate.h: 17"; - rLen = 67; - rLoc = 386; - rType = 0; - vrLen = 382; - vrLoc = 0; - }; - 1FBEC033131AFA87006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 40"; - rLen = 0; - rLoc = 1288; - rType = 0; - vrLen = 1595; - vrLoc = 37; - }; - 1FBEC034131AFA87006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - name = "GGSNetwork.h: 23"; - rLen = 0; - rLoc = 592; - rType = 0; - vrLen = 600; - vrLoc = 0; - }; - 1FBEC035131AFA87006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 39"; - rLen = 0; - rLoc = 1125; - rType = 0; - vrLen = 1502; - vrLoc = 0; - }; - 1FBEC036131AFA87006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 58"; - rLen = 0; - rLoc = 2393; - rType = 0; - vrLen = 1526; - vrLoc = 26; - }; - 1FBEC037131AFC6B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 24"; - rLen = 0; - rLoc = 497; - rType = 0; - vrLen = 2165; - vrLoc = 63; - }; - 1FBEC038131AFD26006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 45"; - rLen = 0; - rLoc = 1314; - rType = 0; - vrLen = 1617; - vrLoc = 28; - }; - 1FBEC039131AFD26006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; - name = "GGSDelegate.h: 17"; - rLen = 0; - rLoc = 404; - rType = 0; - vrLen = 396; - vrLoc = 0; - }; - 1FBEC03A131AFD26006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - name = "GGSNetwork.h: 27"; - rLen = 0; - rLoc = 736; - rType = 0; - vrLen = 667; - vrLoc = 0; - }; - 1FBEC03B131AFD26006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 50"; - rLen = 65; - rLoc = 1376; - rType = 0; - vrLen = 2152; - vrLoc = 254; - }; - 1FBEC03C131AFD26006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 50"; - rLen = 65; - rLoc = 1376; - rType = 0; - vrLen = 2152; - vrLoc = 254; - }; - 1FBEC03D131AFDBE006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 74"; - rLen = 0; - rLoc = 3211; - rType = 0; - vrLen = 2239; - vrLoc = 286; - }; - 1FBEC03E131AFEC7006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 55"; - rLen = 0; - rLoc = 1617; - rType = 0; - vrLen = 2232; - vrLoc = 286; - }; - 1FBEC03F131B00EA006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - name = "GGSNetwork.h: 25"; - rLen = 14; - rLoc = 577; - rType = 0; - vrLen = 750; - vrLoc = 0; - }; - 1FBEC040131B00EA006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 75"; - rLen = 0; - rLoc = 3211; - rType = 0; - vrLen = 2099; - vrLoc = 469; - }; - 1FBEC041131B00EA006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 75"; - rLen = 0; - rLoc = 2695; - rType = 0; - vrLen = 2191; - vrLoc = 470; - }; - 1FBEC042131B01D3006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 80"; - rLen = 0; - rLoc = 2982; - rType = 0; - vrLen = 2306; - vrLoc = 437; - }; - 1FBEC043131B0346006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 89"; - rLen = 0; - rLoc = 3372; - rType = 0; - vrLen = 2426; - vrLoc = 873; - }; - 1FBEC052131B04DE006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - name = "GGSNetwork.h: 22"; - rLen = 0; - rLoc = 396; - rType = 0; - vrLen = 740; - vrLoc = 0; - }; - 1FBEC053131B04DE006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - comments = "Invalid receiver type ''"; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - rLen = 1; - rLoc = 110; - rType = 1; - }; - 1FBEC054131B04DE006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 106"; - rLen = 0; - rLoc = 3655; - rType = 0; - vrLen = 2006; - vrLoc = 1374; - }; - 1FBEC059131B085D006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 106"; - rLen = 0; - rLoc = 3655; - rType = 0; - vrLen = 1963; - vrLoc = 0; - }; - 1FBEC05A131B085D006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; - name = "GGSDelegate.h: 17"; - rLen = 0; - rLoc = 404; - rType = 0; - vrLen = 396; - vrLoc = 0; - }; - 1FBEC05B131B085D006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 10"; - rLen = 0; - rLoc = 207; - rType = 0; - vrLen = 262; - vrLoc = 0; - }; 1FBEC05C131B085D006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 1D3623240D0F684500981E51 /* PongAppDelegate.h */; @@ -1062,878 +212,6 @@ vrLen = 2203; vrLoc = 0; }; - 1FBEC05E131B085D006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 32"; - rLen = 0; - rLoc = 186; - rType = 0; - vrLen = 789; - vrLoc = 0; - }; - 1FBEC05F131B085D006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 140"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1321; - vrLoc = 2304; - }; - 1FBEC060131B085D006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 45"; - rLen = 0; - rLoc = 1314; - rType = 0; - vrLen = 1469; - vrLoc = 524; - }; - 1FBEC061131B085D006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 81"; - rLen = 0; - rLoc = 5498; - rType = 0; - vrLen = 1580; - vrLoc = 557; - }; - 1FBEC062131B0886006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 89"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 346; - vrLoc = 1480; - }; - 1FBEC063131B0886006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 106"; - rLen = 22; - rLoc = 3655; - rType = 0; - vrLen = 128; - vrLoc = 3252; - }; - 1FBEC064131B0886006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - comments = "Cannot find protocol declaration for 'GGSDelegate'"; - fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - rLen = 1; - rLoc = 16; - rType = 1; - }; - 1FBEC065131B0886006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - name = "GGSNetwork.h: 13"; - rLen = 0; - rLoc = 231; - rType = 0; - vrLen = 372; - vrLoc = 371; - }; - 1FBEC066131B0887006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - name = "GGSNetwork.h: 13"; - rLen = 0; - rLoc = 231; - rType = 0; - vrLen = 372; - vrLoc = 371; - }; - 1FBEC069131B088B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - name = "GGSNetwork.h: 13"; - rLen = 0; - rLoc = 231; - rType = 0; - vrLen = 372; - vrLoc = 371; - }; - 1FBEC06A131B088B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - comments = "Expected ';' before ':' token"; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - rLen = 0; - rLoc = 29; - rType = 1; - }; - 1FBEC06B131B088B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 142"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 367; - vrLoc = 3167; - }; - 1FBEC06C131B0890006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 36"; - rLen = 0; - rLoc = 1175; - rType = 0; - vrLen = 1580; - vrLoc = 557; - }; - 1FBEC06D131B0890006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - comments = "Expected ';' before ':' token"; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - rLen = 0; - rLoc = 29; - rType = 1; - }; - 1FBEC06E131B0890006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 142"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1377; - vrLoc = 2249; - }; - 1FBEC071131B08D5006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 142"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1477; - vrLoc = 1503; - }; - 1FBEC074131B08E9006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 83"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 1523; - vrLoc = 1503; - }; - 1FBEC075131B08E9006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 32"; - rLen = 0; - rLoc = 186; - rType = 0; - vrLen = 813; - vrLoc = 0; - }; - 1FBEC078131B08F9006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 32"; - rLen = 0; - rLoc = 186; - rType = 0; - vrLen = 813; - vrLoc = 0; - }; - 1FBEC07B131B0941006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 32"; - rLen = 0; - rLoc = 186; - rType = 0; - vrLen = 813; - vrLoc = 0; - }; - 1FBEC07C131B0941006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 44"; - rLen = 0; - rLoc = 1295; - rType = 0; - vrLen = 1571; - vrLoc = 586; - }; - 1FBEC07D131B0941006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 10"; - rLen = 0; - rLoc = 207; - rType = 0; - vrLen = 262; - vrLoc = 0; - }; - 1FBEC07E131B0941006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 12"; - rLen = 0; - rLoc = 370; - rType = 0; - vrLen = 287; - vrLoc = 0; - }; - 1FBEC07F131B094B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 28"; - rLen = 0; - rLoc = 305; - rType = 0; - vrLen = 316; - vrLoc = 387; - }; - 1FBEC080131B094B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - comments = "'UIView' may not respond to '-zeroPoints'"; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - rLen = 1; - rLoc = 216; - rType = 1; - }; - 1FBEC081131B094B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 81"; - rLen = 0; - rLoc = 5481; - rType = 0; - vrLen = 236; - vrLoc = 1913; - }; - 1FBEC082131B094D006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 12"; - rLen = 0; - rLoc = 370; - rType = 0; - vrLen = 287; - vrLoc = 0; - }; - 1FBEC083131B09C6006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 12"; - rLen = 0; - rLoc = 370; - rType = 0; - vrLen = 262; - vrLoc = 0; - }; - 1FBEC084131B09C6006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 34"; - rLen = 0; - rLoc = 904; - rType = 0; - vrLen = 1644; - vrLoc = 0; - }; - 1FBEC085131B09C6006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 34"; - rLen = 0; - rLoc = 904; - rType = 0; - vrLen = 1644; - vrLoc = 0; - }; - 1FBEC088131B0A14006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 80"; - rLen = 0; - rLoc = 5304; - rType = 0; - vrLen = 1630; - vrLoc = 587; - }; - 1FBEC08B131B0A29006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 34"; - rLen = 0; - rLoc = 904; - rType = 0; - vrLen = 1672; - vrLoc = 3; - }; - 1FBEC090131B0A9C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 56"; - rLen = 0; - rLoc = 1847; - rType = 0; - vrLen = 1664; - vrLoc = 721; - }; - 1FBEC091131B0C04006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 14"; - rLen = 0; - rLoc = 186; - rType = 0; - vrLen = 193; - vrLoc = 0; - }; - 1FBEC092131B0C04006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 33"; - rLen = 0; - rLoc = 1078; - rType = 0; - vrLen = 881; - vrLoc = 0; - }; - 1FBEC093131B0C04006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 18"; - rLen = 0; - rLoc = 305; - rType = 0; - vrLen = 1514; - vrLoc = 0; - }; - 1FBEC094131B0C04006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 40"; - rLen = 0; - rLoc = 903; - rType = 0; - vrLen = 1466; - vrLoc = 0; - }; - 1FBEC095131B0C04006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 69"; - rLen = 0; - rLoc = 1846; - rType = 0; - vrLen = 1647; - vrLoc = 459; - }; - 1FBEC096131B0C44006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE651319D1E5006D5497 /* PongView.m */; - name = "PongView.m: 30"; - rLen = 0; - rLoc = 527; - rType = 0; - vrLen = 577; - vrLoc = 0; - }; - 1FBEC097131B0C44006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 104"; - rLen = 0; - rLoc = 2739; - rType = 0; - vrLen = 1843; - vrLoc = 1234; - }; - 1FBEC098131B0C44006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 14"; - rLen = 0; - rLoc = 186; - rType = 0; - vrLen = 193; - vrLoc = 0; - }; - 1FBEC099131B0C44006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBE641319D1E5006D5497 /* PongView.h */; - name = "PongView.h: 14"; - rLen = 0; - rLoc = 186; - rType = 0; - vrLen = 193; - vrLoc = 0; - }; - 1FBEC0A0131B0C9D006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 16"; - rLen = 0; - rLoc = 494; - rType = 0; - vrLen = 881; - vrLoc = 0; - }; - 1FBEC0A1131B0C9D006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 9"; - rLen = 0; - rLoc = 167; - rType = 0; - vrLen = 1516; - vrLoc = 0; - }; - 1FBEC0A2131B0C9D006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 200"; - rLen = 0; - rLoc = 5266; - rType = 0; - vrLen = 1278; - vrLoc = 4097; - }; - 1FBEC0A9131B0DF1006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 36"; - rLen = 0; - rLoc = 1098; - rType = 0; - vrLen = 939; - vrLoc = 0; - }; - 1FBEC0AA131B0DF1006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 11"; - rLen = 0; - rLoc = 191; - rType = 0; - vrLen = 1528; - vrLoc = 0; - }; - 1FBEC0AB131B0DF1006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 11"; - rLen = 0; - rLoc = 191; - rType = 0; - vrLen = 1525; - vrLoc = 3; - }; - 1FBEC0B1131B0E5E006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 65"; - rLen = 0; - rLoc = 1628; - rType = 0; - vrLen = 1584; - vrLoc = 320; - }; - 1FBEC0B4131B0F17006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 70"; - rLen = 0; - rLoc = 1689; - rType = 0; - vrLen = 1865; - vrLoc = 1107; - }; - 1FBEC0B7131B0F31006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 78"; - rLen = 0; - rLoc = 1956; - rType = 0; - vrLen = 1876; - vrLoc = 1259; - }; - 1FBEC0BA131B0F8B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 157"; - rLen = 0; - rLoc = 4192; - rType = 0; - vrLen = 1728; - vrLoc = 2623; - }; - 1FBEC0BD131B0FAD006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 71"; - rLen = 0; - rLoc = 1709; - rType = 0; - vrLen = 1724; - vrLoc = 775; - }; - 1FBEC0C5131B100A006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 71"; - rLen = 0; - rLoc = 1709; - rType = 0; - vrLen = 1701; - vrLoc = 905; - }; - 1FBEC0C8131B103C006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 71"; - rLen = 0; - rLoc = 1709; - rType = 0; - vrLen = 1725; - vrLoc = 772; - }; - 1FBEC0CB131B1081006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 36"; - rLen = 0; - rLoc = 1098; - rType = 0; - vrLen = 939; - vrLoc = 0; - }; - 1FBEC0CC131B1081006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 108"; - rLen = 0; - rLoc = 2775; - rType = 0; - vrLen = 1969; - vrLoc = 1440; - }; - 1FBEC0CD131B1081006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 111"; - rLen = 0; - rLoc = 2815; - rType = 0; - vrLen = 1983; - vrLoc = 1530; - }; - 1FBEC0D0131B10CE006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 36"; - rLen = 0; - rLoc = 1098; - rType = 0; - vrLen = 939; - vrLoc = 0; - }; - 1FBEC0D1131B10CE006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 112"; - rLen = 0; - rLoc = 2818; - rType = 0; - vrLen = 1978; - vrLoc = 1530; - }; - 1FBEC0D2131B10CE006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 71"; - rLen = 0; - rLoc = 1709; - rType = 0; - vrLen = 1588; - vrLoc = 358; - }; - 1FBEC0D9131B1173006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 157"; - rLen = 0; - rLoc = 4192; - rType = 0; - vrLen = 1791; - vrLoc = 2643; - }; - 1FBEC0DC131B117D006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 157"; - rLen = 0; - rLoc = 4192; - rType = 0; - vrLen = 1782; - vrLoc = 2662; - }; - 1FBEC0DF131B1191006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 157"; - rLen = 0; - rLoc = 4192; - rType = 0; - vrLen = 1781; - vrLoc = 2683; - }; - 1FBEC0E6131B1215006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 150"; - rLen = 0; - rLoc = 3862; - rType = 0; - vrLen = 1623; - vrLoc = 2929; - }; - 1FBEC0E9131B12CC006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 123"; - rLen = 0; - rLoc = 3345; - rType = 0; - vrLen = 1671; - vrLoc = 2605; - }; - 1FBEC0EC131B12D5006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 121"; - rLen = 0; - rLoc = 3273; - rType = 0; - vrLen = 1751; - vrLoc = 2607; - }; - 1FBEC0EF131B12ED006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 123"; - rLen = 0; - rLoc = 3345; - rType = 0; - vrLen = 1739; - vrLoc = 2642; - }; - 1FBEC0F2131B1301006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 121"; - rLen = 0; - rLoc = 3272; - rType = 0; - vrLen = 1812; - vrLoc = 2643; - }; - 1FBEC0F3131B1474006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 22"; - rLen = 0; - rLoc = 357; - rType = 0; - vrLen = 1380; - vrLoc = 0; - }; - 1FBEC0F4131B147B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 22"; - rLen = 0; - rLoc = 357; - rType = 0; - vrLen = 1371; - vrLoc = 0; - }; - 1FBEC0F5131B149B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 22"; - rLen = 0; - rLoc = 438; - rType = 0; - vrLen = 1439; - vrLoc = 0; - }; - 1FBEC0F6131B149B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 16"; - rLen = 0; - rLoc = 307; - rType = 0; - vrLen = 1047; - vrLoc = 0; - }; - 1FBEC107131B21E7006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; - name = "GGSDelegate.h: 17"; - rLen = 0; - rLoc = 404; - rType = 0; - vrLen = 396; - vrLoc = 0; - }; - 1FBEC108131B21E7006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - name = "GGSNetwork.h: 22"; - rLen = 0; - rLoc = 396; - rType = 0; - vrLen = 743; - vrLoc = 0; - }; - 1FBEC109131B21E7006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 66"; - rLen = 0; - rLoc = 1687; - rType = 0; - vrLen = 1544; - vrLoc = 0; - }; - 1FBEC10A131B21E7006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 16"; - rLen = 0; - rLoc = 307; - rType = 0; - vrLen = 1047; - vrLoc = 0; - }; - 1FBEC10B131B21E7006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 16"; - rLen = 0; - rLoc = 306; - rType = 0; - vrLen = 1039; - vrLoc = 0; - }; - 1FBEC10E131B21FB006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 16"; - rLen = 0; - rLoc = 306; - rType = 0; - vrLen = 1039; - vrLoc = 0; - }; - 1FBEC10F131B21FB006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 155"; - rLen = 0; - rLoc = 4192; - rType = 0; - vrLen = 1644; - vrLoc = 2563; - }; - 1FBEC112131B2298006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 155"; - rLen = 0; - rLoc = 4192; - rType = 0; - vrLen = 1541; - vrLoc = 3; - }; - 1FBEC113131B2298006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 21"; - rLen = 0; - rLoc = 374; - rType = 0; - vrLen = 2049; - vrLoc = 3; - }; - 1FBEC114131B2298006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 52"; - rLen = 0; - rLoc = 1544; - rType = 0; - vrLen = 2299; - vrLoc = 315; - }; - 1FBEC117131B22BF006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 55"; - rLen = 0; - rLoc = 1609; - rType = 0; - vrLen = 2286; - vrLoc = 375; - }; - 1FBEC11A131B2423006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 57"; - rLen = 0; - rLoc = 1625; - rType = 0; - vrLen = 2345; - vrLoc = 406; - }; - 1FBEC121131B2559006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; - name = "GGSDelegate.h: 16"; - rLen = 0; - rLoc = 283; - rType = 0; - vrLen = 459; - vrLoc = 0; - }; - 1FBEC122131B2559006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - name = "GGSNetwork.h: 22"; - rLen = 0; - rLoc = 396; - rType = 0; - vrLen = 743; - vrLoc = 0; - }; - 1FBEC123131B2559006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 63"; - rLen = 0; - rLoc = 2142; - rType = 0; - vrLen = 2316; - vrLoc = 406; - }; 1FBEC124131B2559006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; @@ -1944,64 +222,6 @@ vrLen = 1144; vrLoc = 0; }; - 1FBEC125131B2559006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 46"; - rLen = 0; - rLoc = 1147; - rType = 0; - vrLen = 1526; - vrLoc = 697; - }; - 1FBEC126131B2559006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 45"; - rLen = 0; - rLoc = 1088; - rType = 0; - vrLen = 1614; - vrLoc = 275; - }; - 1FBEC127131B255B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; - name = "PongViewController.h: 16"; - rLen = 0; - rLoc = 304; - rType = 0; - vrLen = 327; - vrLoc = 137; - }; - 1FBEC128131B255B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - comments = "Expected ';' before ':' token"; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - rLen = 1; - rLoc = 231; - rType = 1; - }; - 1FBEC129131B255B006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 231"; - rLen = 0; - rLoc = 5700; - rType = 0; - vrLen = 196; - vrLoc = 5479; - }; - 1FBEC12C131B2581006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 45"; - rLen = 0; - rLoc = 1142; - rType = 0; - vrLen = 1613; - vrLoc = 275; - }; 1FBEC12D131B2581006D5497 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; @@ -2012,164 +232,64 @@ vrLen = 459; vrLoc = 0; }; - 1FBEC12E131B2581006D5497 /* PBXTextBookmark */ = { + 1FC1C5D0131C488000D1FF71 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 44"; + rLen = 108; + rLoc = 963; + rType = 0; + vrLen = 2551; + vrLoc = 369; + }; + 1FC1C5D6131C806900D1FF71 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; - name = "GGSNetwork.h: 22"; + name = "GGSNetwork.h: 28"; rLen = 0; - rLoc = 396; + rLoc = 748; rType = 0; - vrLen = 743; + vrLen = 910; vrLoc = 0; }; - 1FBEC12F131B2581006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 74"; - rLen = 0; - rLoc = 2457; - rType = 0; - vrLen = 2367; - vrLoc = 727; - }; - 1FBEC134131B262F006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 55"; - rLen = 0; - rLoc = 1608; - rType = 0; - vrLen = 2492; - vrLoc = 796; - }; - 1FBEC135131B265A006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 42"; - rLen = 0; - rLoc = 1039; - rType = 0; - vrLen = 2411; - vrLoc = 881; - }; - 1FBEC13C131B26A1006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 45"; - rLen = 0; - rLoc = 1125; - rType = 0; - vrLen = 2427; - vrLoc = 900; - }; - 1FBEC13D131B26A1006D5497 /* PBXTextBookmark */ = { + 1FC1C5D7131C806900D1FF71 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 45"; + name = "PongViewController.m: 48"; rLen = 0; - rLoc = 1142; + rLoc = 1280; rType = 0; - vrLen = 1612; - vrLoc = 275; + vrLen = 2007; + vrLoc = 0; }; - 1FBEC13E131B26A1006D5497 /* PBXTextBookmark */ = { + 1FC1C615131D81E200D1FF71 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 45"; + name = "PongViewController.m: 85"; rLen = 0; - rLoc = 1056; + rLoc = 2811; rType = 0; - vrLen = 1684; - vrLoc = 275; - }; - 1FBEC141131B2757006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; - name = "PongViewController.m: 45"; - rLen = 0; - rLoc = 1056; - rType = 0; - vrLen = 1660; - vrLoc = 298; - }; - 1FBEC142131B2757006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 103"; - rLen = 0; - rLoc = 3556; - rType = 0; - vrLen = 2399; - vrLoc = 1105; - }; - 1FBEC145131B2B2E006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 103"; - rLen = 0; - rLoc = 3601; - rType = 0; - vrLen = 2422; - vrLoc = 1128; - }; - 1FBEC148131B2B7E006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 101"; - rLen = 0; - rLoc = 3450; - rType = 0; - vrLen = 2326; - vrLoc = 1246; - }; - 1FBEC14B131B2BAA006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 59"; - rLen = 0; - rLoc = 1625; - rType = 0; - vrLen = 2422; - vrLoc = 1128; - }; - 1FBEC14E131B2BE6006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 58"; - rLen = 0; - rLoc = 1625; - rType = 0; - vrLen = 2177; - vrLoc = 1373; - }; - 1FBEC151131B2C52006D5497 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; - name = "GGSNetwork.m: 59"; - rLen = 0; - rLoc = 1909; - rType = 0; - vrLen = 2177; - vrLoc = 1376; + vrLen = 2258; + vrLoc = 1218; }; 28D7ACF60DDB3853001CB0EB /* PongViewController.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {460, 795}}"; - sepNavSelRange = "{304, 0}"; - sepNavVisRange = "{137, 327}"; + sepNavIntBoundsRect = "{{0, 0}, {998, 1171}}"; + sepNavSelRange = "{207, 0}"; + sepNavVisRange = "{0, 1144}"; }; }; 28D7ACF70DDB3853001CB0EB /* PongViewController.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {900, 3630}}"; - sepNavSelRange = "{1056, 0}"; - sepNavVisRange = "{298, 1660}"; + sepNavIntBoundsRect = "{{0, 0}, {998, 3810}}"; + sepNavSelRange = "{989, 0}"; + sepNavVisRange = "{799, 2275}"; }; }; 29B97313FDCFA39411CA2CEA /* Project object */ = { activeBuildConfigurationName = Debug; activeExecutable = 1FA0569112F0B513003F1373 /* Pong */; - activeSDKPreference = iphonesimulator4.2; + activeSDKPreference = iphoneos4.2; activeTarget = 1D6058900D05DD3D006BFB54 /* Pong */; addToTargets = ( ); @@ -2200,215 +320,27 @@ PBXFileDataSource_Target_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 320608425; - PBXWorkspaceStateSaveDate = 320608425; + PBXPerProjectTemplateStateSaveDate = 321043010; + PBXWorkspaceStateSaveDate = 321043010; }; perUserProjectItems = { - 1FB25C6312F4AAD8009AC8AB = 1FB25C6312F4AAD8009AC8AB /* PBXTextBookmark */; - 1FB25C6412F4AAD8009AC8AB = 1FB25C6412F4AAD8009AC8AB /* PBXBookmark */; - 1FB25C6512F4AAD8009AC8AB = 1FB25C6512F4AAD8009AC8AB /* PlistBookmark */; - 1FBEBE4C1319CC38006D5497 = 1FBEBE4C1319CC38006D5497 /* PlistBookmark */; - 1FBEBE4D1319CC38006D5497 = 1FBEBE4D1319CC38006D5497 /* PlistBookmark */; - 1FBEBE911319D79C006D5497 = 1FBEBE911319D79C006D5497 /* PBXTextBookmark */; - 1FBEBE921319D79C006D5497 = 1FBEBE921319D79C006D5497 /* PBXTextBookmark */; - 1FBEBE931319D79C006D5497 = 1FBEBE931319D79C006D5497 /* PBXTextBookmark */; - 1FBEBE941319D79C006D5497 = 1FBEBE941319D79C006D5497 /* PlistBookmark */; - 1FBEBE951319D79C006D5497 = 1FBEBE951319D79C006D5497 /* PBXTextBookmark */; - 1FBEBE961319D79C006D5497 = 1FBEBE961319D79C006D5497 /* PBXTextBookmark */; - 1FBEBE971319D79C006D5497 = 1FBEBE971319D79C006D5497 /* PBXTextBookmark */; - 1FBEBEAB1319D7F2006D5497 = 1FBEBEAB1319D7F2006D5497 /* PBXTextBookmark */; - 1FBEBEB41319DC5A006D5497 = 1FBEBEB41319DC5A006D5497 /* PBXTextBookmark */; - 1FBEBEB51319DC5A006D5497 = 1FBEBEB51319DC5A006D5497 /* PBXTextBookmark */; - 1FBEBEB61319DC5A006D5497 = 1FBEBEB61319DC5A006D5497 /* PBXTextBookmark */; - 1FBEBED01319E5FE006D5497 = 1FBEBED01319E5FE006D5497 /* PBXTextBookmark */; - 1FBEBED11319E5FE006D5497 = 1FBEBED11319E5FE006D5497 /* PBXTextBookmark */; - 1FBEBED21319E5FE006D5497 = 1FBEBED21319E5FE006D5497 /* PBXTextBookmark */; - 1FBEBED81319E723006D5497 = 1FBEBED81319E723006D5497 /* PBXTextBookmark */; - 1FBEBED91319E723006D5497 = 1FBEBED91319E723006D5497 /* PBXTextBookmark */; - 1FBEBEDA1319E723006D5497 = 1FBEBEDA1319E723006D5497 /* PBXTextBookmark */; - 1FBEBEF61319EEB6006D5497 = 1FBEBEF61319EEB6006D5497 /* PBXTextBookmark */; - 1FBEBEF71319EEB6006D5497 = 1FBEBEF71319EEB6006D5497 /* PBXTextBookmark */; + 1F369E761323081C004E7A99 /* PBXTextBookmark */ = 1F369E761323081C004E7A99 /* PBXTextBookmark */; + 1F369E771323081C004E7A99 /* PBXTextBookmark */ = 1F369E771323081C004E7A99 /* PBXTextBookmark */; + 1F369E781323081C004E7A99 /* PBXTextBookmark */ = 1F369E781323081C004E7A99 /* PBXTextBookmark */; + 1F369E791323081C004E7A99 /* PBXTextBookmark */ = 1F369E791323081C004E7A99 /* PBXTextBookmark */; + 1F369E7A1323081C004E7A99 /* PBXTextBookmark */ = 1F369E7A1323081C004E7A99 /* PBXTextBookmark */; + 1F369E7B1323081C004E7A99 /* PBXTextBookmark */ = 1F369E7B1323081C004E7A99 /* PBXTextBookmark */; 1FBEBF151319F5C1006D5497 = 1FBEBF151319F5C1006D5497 /* PlistBookmark */; - 1FBEBF161319F5C1006D5497 = 1FBEBF161319F5C1006D5497 /* PBXTextBookmark */; - 1FBEBF171319F5C1006D5497 = 1FBEBF171319F5C1006D5497 /* PBXTextBookmark */; - 1FBEBF181319F5C1006D5497 = 1FBEBF181319F5C1006D5497 /* PBXTextBookmark */; - 1FBEBF191319F5C1006D5497 = 1FBEBF191319F5C1006D5497 /* PBXTextBookmark */; - 1FBEBF1A1319F5C1006D5497 = 1FBEBF1A1319F5C1006D5497 /* PBXTextBookmark */; - 1FBEBF1E1319F691006D5497 = 1FBEBF1E1319F691006D5497 /* PBXTextBookmark */; - 1FBEBF1F1319F691006D5497 = 1FBEBF1F1319F691006D5497 /* PBXTextBookmark */; - 1FBEBF201319F691006D5497 = 1FBEBF201319F691006D5497 /* PBXTextBookmark */; - 1FBEBF211319F691006D5497 = 1FBEBF211319F691006D5497 /* PBXTextBookmark */; - 1FBEBF221319F691006D5497 = 1FBEBF221319F691006D5497 /* PBXTextBookmark */; - 1FBEBF351319F93F006D5497 = 1FBEBF351319F93F006D5497 /* PBXTextBookmark */; - 1FBEBF361319F93F006D5497 = 1FBEBF361319F93F006D5497 /* PBXTextBookmark */; - 1FBEBF371319F93F006D5497 = 1FBEBF371319F93F006D5497 /* PBXTextBookmark */; - 1FBEBF381319F93F006D5497 = 1FBEBF381319F93F006D5497 /* PBXTextBookmark */; - 1FBEBF3E1319F9ED006D5497 = 1FBEBF3E1319F9ED006D5497 /* PBXTextBookmark */; - 1FBEBF3F1319F9ED006D5497 = 1FBEBF3F1319F9ED006D5497 /* PBXTextBookmark */; - 1FBEBF401319F9ED006D5497 = 1FBEBF401319F9ED006D5497 /* PBXTextBookmark */; - 1FBEBFAD1319FE92006D5497 = 1FBEBFAD1319FE92006D5497 /* PBXTextBookmark */; - 1FBEBFFD131AA714006D5497 = 1FBEBFFD131AA714006D5497 /* PBXTextBookmark */; - 1FBEBFFE131AA714006D5497 = 1FBEBFFE131AA714006D5497 /* PBXTextBookmark */; 1FBEC001131AA71C006D5497 = 1FBEC001131AA71C006D5497 /* PBXTextBookmark */; 1FBEC002131AA71C006D5497 = 1FBEC002131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC003131AA71C006D5497 = 1FBEC003131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC004131AA71C006D5497 = 1FBEC004131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC005131AA71C006D5497 = 1FBEC005131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC006131AA71C006D5497 = 1FBEC006131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC007131AA71C006D5497 = 1FBEC007131AA71C006D5497 /* PBXTextBookmark */; - 1FBEC00A131AA739006D5497 = 1FBEC00A131AA739006D5497 /* PBXTextBookmark */; - 1FBEC00D131AA74F006D5497 = 1FBEC00D131AA74F006D5497 /* PBXTextBookmark */; - 1FBEC010131AA773006D5497 = 1FBEC010131AA773006D5497 /* PBXTextBookmark */; - 1FBEC011131AA773006D5497 = 1FBEC011131AA773006D5497 /* PBXTextBookmark */; - 1FBEC012131AA773006D5497 = 1FBEC012131AA773006D5497 /* PBXTextBookmark */; - 1FBEC015131AA78E006D5497 = 1FBEC015131AA78E006D5497 /* PBXTextBookmark */; - 1FBEC016131AA78E006D5497 = 1FBEC016131AA78E006D5497 /* PBXTextBookmark */; - 1FBEC017131AA78E006D5497 = 1FBEC017131AA78E006D5497 /* PBXTextBookmark */; - 1FBEC01A131AA799006D5497 = 1FBEC01A131AA799006D5497 /* PBXTextBookmark */; - 1FBEC01D131AA7B8006D5497 = 1FBEC01D131AA7B8006D5497 /* PBXTextBookmark */; - 1FBEC020131AA7F1006D5497 = 1FBEC020131AA7F1006D5497 /* PBXTextBookmark */; - 1FBEC023131AA82B006D5497 = 1FBEC023131AA82B006D5497 /* PBXTextBookmark */; - 1FBEC026131AF718006D5497 = 1FBEC026131AF718006D5497 /* PBXTextBookmark */; - 1FBEC029131AF724006D5497 = 1FBEC029131AF724006D5497 /* PBXTextBookmark */; - 1FBEC02C131AF749006D5497 = 1FBEC02C131AF749006D5497 /* PBXTextBookmark */; - 1FBEC02F131AF752006D5497 = 1FBEC02F131AF752006D5497 /* PBXTextBookmark */; - 1FBEC031131AFA87006D5497 = 1FBEC031131AFA87006D5497 /* PBXTextBookmark */; - 1FBEC032131AFA87006D5497 = 1FBEC032131AFA87006D5497 /* PBXTextBookmark */; - 1FBEC033131AFA87006D5497 = 1FBEC033131AFA87006D5497 /* PBXTextBookmark */; - 1FBEC034131AFA87006D5497 = 1FBEC034131AFA87006D5497 /* PBXTextBookmark */; - 1FBEC035131AFA87006D5497 = 1FBEC035131AFA87006D5497 /* PBXTextBookmark */; - 1FBEC036131AFA87006D5497 = 1FBEC036131AFA87006D5497 /* PBXTextBookmark */; - 1FBEC037131AFC6B006D5497 = 1FBEC037131AFC6B006D5497 /* PBXTextBookmark */; - 1FBEC038131AFD26006D5497 = 1FBEC038131AFD26006D5497 /* PBXTextBookmark */; - 1FBEC039131AFD26006D5497 = 1FBEC039131AFD26006D5497 /* PBXTextBookmark */; - 1FBEC03A131AFD26006D5497 = 1FBEC03A131AFD26006D5497 /* PBXTextBookmark */; - 1FBEC03B131AFD26006D5497 = 1FBEC03B131AFD26006D5497 /* PBXTextBookmark */; - 1FBEC03C131AFD26006D5497 = 1FBEC03C131AFD26006D5497 /* PBXTextBookmark */; - 1FBEC03D131AFDBE006D5497 = 1FBEC03D131AFDBE006D5497 /* PBXTextBookmark */; - 1FBEC03E131AFEC7006D5497 = 1FBEC03E131AFEC7006D5497 /* PBXTextBookmark */; - 1FBEC03F131B00EA006D5497 = 1FBEC03F131B00EA006D5497 /* PBXTextBookmark */; - 1FBEC040131B00EA006D5497 = 1FBEC040131B00EA006D5497 /* PBXTextBookmark */; - 1FBEC041131B00EA006D5497 = 1FBEC041131B00EA006D5497 /* PBXTextBookmark */; - 1FBEC042131B01D3006D5497 = 1FBEC042131B01D3006D5497 /* PBXTextBookmark */; - 1FBEC043131B0346006D5497 = 1FBEC043131B0346006D5497 /* PBXTextBookmark */; - 1FBEC052131B04DE006D5497 = 1FBEC052131B04DE006D5497 /* PBXTextBookmark */; - 1FBEC053131B04DE006D5497 = 1FBEC053131B04DE006D5497 /* PBXTextBookmark */; - 1FBEC054131B04DE006D5497 = 1FBEC054131B04DE006D5497 /* PBXTextBookmark */; - 1FBEC059131B085D006D5497 = 1FBEC059131B085D006D5497 /* PBXTextBookmark */; - 1FBEC05A131B085D006D5497 = 1FBEC05A131B085D006D5497 /* PBXTextBookmark */; - 1FBEC05B131B085D006D5497 = 1FBEC05B131B085D006D5497 /* PBXTextBookmark */; 1FBEC05C131B085D006D5497 = 1FBEC05C131B085D006D5497 /* PBXTextBookmark */; 1FBEC05D131B085D006D5497 = 1FBEC05D131B085D006D5497 /* PBXTextBookmark */; - 1FBEC05E131B085D006D5497 = 1FBEC05E131B085D006D5497 /* PBXTextBookmark */; - 1FBEC05F131B085D006D5497 = 1FBEC05F131B085D006D5497 /* PBXTextBookmark */; - 1FBEC060131B085D006D5497 = 1FBEC060131B085D006D5497 /* PBXTextBookmark */; - 1FBEC061131B085D006D5497 = 1FBEC061131B085D006D5497 /* PBXTextBookmark */; - 1FBEC062131B0886006D5497 = 1FBEC062131B0886006D5497 /* PBXTextBookmark */; - 1FBEC063131B0886006D5497 = 1FBEC063131B0886006D5497 /* PBXTextBookmark */; - 1FBEC064131B0886006D5497 = 1FBEC064131B0886006D5497 /* PBXTextBookmark */; - 1FBEC065131B0886006D5497 = 1FBEC065131B0886006D5497 /* PBXTextBookmark */; - 1FBEC066131B0887006D5497 = 1FBEC066131B0887006D5497 /* PBXTextBookmark */; - 1FBEC069131B088B006D5497 = 1FBEC069131B088B006D5497 /* PBXTextBookmark */; - 1FBEC06A131B088B006D5497 = 1FBEC06A131B088B006D5497 /* PBXTextBookmark */; - 1FBEC06B131B088B006D5497 = 1FBEC06B131B088B006D5497 /* PBXTextBookmark */; - 1FBEC06C131B0890006D5497 = 1FBEC06C131B0890006D5497 /* PBXTextBookmark */; - 1FBEC06D131B0890006D5497 = 1FBEC06D131B0890006D5497 /* PBXTextBookmark */; - 1FBEC06E131B0890006D5497 = 1FBEC06E131B0890006D5497 /* PBXTextBookmark */; - 1FBEC071131B08D5006D5497 = 1FBEC071131B08D5006D5497 /* PBXTextBookmark */; - 1FBEC074131B08E9006D5497 = 1FBEC074131B08E9006D5497 /* PBXTextBookmark */; - 1FBEC075131B08E9006D5497 = 1FBEC075131B08E9006D5497 /* PBXTextBookmark */; - 1FBEC078131B08F9006D5497 = 1FBEC078131B08F9006D5497 /* PBXTextBookmark */; - 1FBEC07B131B0941006D5497 = 1FBEC07B131B0941006D5497 /* PBXTextBookmark */; - 1FBEC07C131B0941006D5497 = 1FBEC07C131B0941006D5497 /* PBXTextBookmark */; - 1FBEC07D131B0941006D5497 = 1FBEC07D131B0941006D5497 /* PBXTextBookmark */; - 1FBEC07E131B0941006D5497 = 1FBEC07E131B0941006D5497 /* PBXTextBookmark */; - 1FBEC07F131B094B006D5497 = 1FBEC07F131B094B006D5497 /* PBXTextBookmark */; - 1FBEC080131B094B006D5497 = 1FBEC080131B094B006D5497 /* PBXTextBookmark */; - 1FBEC081131B094B006D5497 = 1FBEC081131B094B006D5497 /* PBXTextBookmark */; - 1FBEC082131B094D006D5497 = 1FBEC082131B094D006D5497 /* PBXTextBookmark */; - 1FBEC083131B09C6006D5497 = 1FBEC083131B09C6006D5497 /* PBXTextBookmark */; - 1FBEC084131B09C6006D5497 = 1FBEC084131B09C6006D5497 /* PBXTextBookmark */; - 1FBEC085131B09C6006D5497 = 1FBEC085131B09C6006D5497 /* PBXTextBookmark */; - 1FBEC088131B0A14006D5497 = 1FBEC088131B0A14006D5497 /* PBXTextBookmark */; - 1FBEC08B131B0A29006D5497 = 1FBEC08B131B0A29006D5497 /* PBXTextBookmark */; - 1FBEC090131B0A9C006D5497 = 1FBEC090131B0A9C006D5497 /* PBXTextBookmark */; - 1FBEC091131B0C04006D5497 = 1FBEC091131B0C04006D5497 /* PBXTextBookmark */; - 1FBEC092131B0C04006D5497 = 1FBEC092131B0C04006D5497 /* PBXTextBookmark */; - 1FBEC093131B0C04006D5497 = 1FBEC093131B0C04006D5497 /* PBXTextBookmark */; - 1FBEC094131B0C04006D5497 = 1FBEC094131B0C04006D5497 /* PBXTextBookmark */; - 1FBEC095131B0C04006D5497 = 1FBEC095131B0C04006D5497 /* PBXTextBookmark */; - 1FBEC096131B0C44006D5497 = 1FBEC096131B0C44006D5497 /* PBXTextBookmark */; - 1FBEC097131B0C44006D5497 = 1FBEC097131B0C44006D5497 /* PBXTextBookmark */; - 1FBEC098131B0C44006D5497 = 1FBEC098131B0C44006D5497 /* PBXTextBookmark */; - 1FBEC099131B0C44006D5497 = 1FBEC099131B0C44006D5497 /* PBXTextBookmark */; - 1FBEC0A0131B0C9D006D5497 = 1FBEC0A0131B0C9D006D5497 /* PBXTextBookmark */; - 1FBEC0A1131B0C9D006D5497 = 1FBEC0A1131B0C9D006D5497 /* PBXTextBookmark */; - 1FBEC0A2131B0C9D006D5497 = 1FBEC0A2131B0C9D006D5497 /* PBXTextBookmark */; - 1FBEC0A9131B0DF1006D5497 = 1FBEC0A9131B0DF1006D5497 /* PBXTextBookmark */; - 1FBEC0AA131B0DF1006D5497 = 1FBEC0AA131B0DF1006D5497 /* PBXTextBookmark */; - 1FBEC0AB131B0DF1006D5497 = 1FBEC0AB131B0DF1006D5497 /* PBXTextBookmark */; - 1FBEC0B1131B0E5E006D5497 = 1FBEC0B1131B0E5E006D5497 /* PBXTextBookmark */; - 1FBEC0B4131B0F17006D5497 = 1FBEC0B4131B0F17006D5497 /* PBXTextBookmark */; - 1FBEC0B7131B0F31006D5497 = 1FBEC0B7131B0F31006D5497 /* PBXTextBookmark */; - 1FBEC0BA131B0F8B006D5497 = 1FBEC0BA131B0F8B006D5497 /* PBXTextBookmark */; - 1FBEC0BD131B0FAD006D5497 = 1FBEC0BD131B0FAD006D5497 /* PBXTextBookmark */; - 1FBEC0C5131B100A006D5497 = 1FBEC0C5131B100A006D5497 /* PBXTextBookmark */; - 1FBEC0C8131B103C006D5497 = 1FBEC0C8131B103C006D5497 /* PBXTextBookmark */; - 1FBEC0CB131B1081006D5497 = 1FBEC0CB131B1081006D5497 /* PBXTextBookmark */; - 1FBEC0CC131B1081006D5497 = 1FBEC0CC131B1081006D5497 /* PBXTextBookmark */; - 1FBEC0CD131B1081006D5497 = 1FBEC0CD131B1081006D5497 /* PBXTextBookmark */; - 1FBEC0D0131B10CE006D5497 = 1FBEC0D0131B10CE006D5497 /* PBXTextBookmark */; - 1FBEC0D1131B10CE006D5497 = 1FBEC0D1131B10CE006D5497 /* PBXTextBookmark */; - 1FBEC0D2131B10CE006D5497 = 1FBEC0D2131B10CE006D5497 /* PBXTextBookmark */; - 1FBEC0D9131B1173006D5497 = 1FBEC0D9131B1173006D5497 /* PBXTextBookmark */; - 1FBEC0DC131B117D006D5497 = 1FBEC0DC131B117D006D5497 /* PBXTextBookmark */; - 1FBEC0DF131B1191006D5497 = 1FBEC0DF131B1191006D5497 /* PBXTextBookmark */; - 1FBEC0E6131B1215006D5497 = 1FBEC0E6131B1215006D5497 /* PBXTextBookmark */; - 1FBEC0E9131B12CC006D5497 = 1FBEC0E9131B12CC006D5497 /* PBXTextBookmark */; - 1FBEC0EC131B12D5006D5497 = 1FBEC0EC131B12D5006D5497 /* PBXTextBookmark */; - 1FBEC0EF131B12ED006D5497 = 1FBEC0EF131B12ED006D5497 /* PBXTextBookmark */; - 1FBEC0F2131B1301006D5497 = 1FBEC0F2131B1301006D5497 /* PBXTextBookmark */; - 1FBEC0F3131B1474006D5497 = 1FBEC0F3131B1474006D5497 /* PBXTextBookmark */; - 1FBEC0F4131B147B006D5497 = 1FBEC0F4131B147B006D5497 /* PBXTextBookmark */; - 1FBEC0F5131B149B006D5497 = 1FBEC0F5131B149B006D5497 /* PBXTextBookmark */; - 1FBEC0F6131B149B006D5497 = 1FBEC0F6131B149B006D5497 /* PBXTextBookmark */; - 1FBEC107131B21E7006D5497 = 1FBEC107131B21E7006D5497 /* PBXTextBookmark */; - 1FBEC108131B21E7006D5497 = 1FBEC108131B21E7006D5497 /* PBXTextBookmark */; - 1FBEC109131B21E7006D5497 = 1FBEC109131B21E7006D5497 /* PBXTextBookmark */; - 1FBEC10A131B21E7006D5497 = 1FBEC10A131B21E7006D5497 /* PBXTextBookmark */; - 1FBEC10B131B21E7006D5497 = 1FBEC10B131B21E7006D5497 /* PBXTextBookmark */; - 1FBEC10E131B21FB006D5497 = 1FBEC10E131B21FB006D5497 /* PBXTextBookmark */; - 1FBEC10F131B21FB006D5497 = 1FBEC10F131B21FB006D5497 /* PBXTextBookmark */; - 1FBEC112131B2298006D5497 = 1FBEC112131B2298006D5497 /* PBXTextBookmark */; - 1FBEC113131B2298006D5497 = 1FBEC113131B2298006D5497 /* PBXTextBookmark */; - 1FBEC114131B2298006D5497 = 1FBEC114131B2298006D5497 /* PBXTextBookmark */; - 1FBEC117131B22BF006D5497 = 1FBEC117131B22BF006D5497 /* PBXTextBookmark */; - 1FBEC11A131B2423006D5497 = 1FBEC11A131B2423006D5497 /* PBXTextBookmark */; - 1FBEC121131B2559006D5497 = 1FBEC121131B2559006D5497 /* PBXTextBookmark */; - 1FBEC122131B2559006D5497 = 1FBEC122131B2559006D5497 /* PBXTextBookmark */; - 1FBEC123131B2559006D5497 = 1FBEC123131B2559006D5497 /* PBXTextBookmark */; 1FBEC124131B2559006D5497 = 1FBEC124131B2559006D5497 /* PBXTextBookmark */; - 1FBEC125131B2559006D5497 = 1FBEC125131B2559006D5497 /* PBXTextBookmark */; - 1FBEC126131B2559006D5497 = 1FBEC126131B2559006D5497 /* PBXTextBookmark */; - 1FBEC127131B255B006D5497 = 1FBEC127131B255B006D5497 /* PBXTextBookmark */; - 1FBEC128131B255B006D5497 = 1FBEC128131B255B006D5497 /* PBXTextBookmark */; - 1FBEC129131B255B006D5497 = 1FBEC129131B255B006D5497 /* PBXTextBookmark */; - 1FBEC12C131B2581006D5497 = 1FBEC12C131B2581006D5497 /* PBXTextBookmark */; 1FBEC12D131B2581006D5497 = 1FBEC12D131B2581006D5497 /* PBXTextBookmark */; - 1FBEC12E131B2581006D5497 = 1FBEC12E131B2581006D5497 /* PBXTextBookmark */; - 1FBEC12F131B2581006D5497 = 1FBEC12F131B2581006D5497 /* PBXTextBookmark */; - 1FBEC134131B262F006D5497 = 1FBEC134131B262F006D5497 /* PBXTextBookmark */; - 1FBEC135131B265A006D5497 = 1FBEC135131B265A006D5497 /* PBXTextBookmark */; - 1FBEC13C131B26A1006D5497 = 1FBEC13C131B26A1006D5497 /* PBXTextBookmark */; - 1FBEC13D131B26A1006D5497 = 1FBEC13D131B26A1006D5497 /* PBXTextBookmark */; - 1FBEC13E131B26A1006D5497 = 1FBEC13E131B26A1006D5497 /* PBXTextBookmark */; - 1FBEC141131B2757006D5497 = 1FBEC141131B2757006D5497 /* PBXTextBookmark */; - 1FBEC142131B2757006D5497 = 1FBEC142131B2757006D5497 /* PBXTextBookmark */; - 1FBEC145131B2B2E006D5497 = 1FBEC145131B2B2E006D5497 /* PBXTextBookmark */; - 1FBEC148131B2B7E006D5497 = 1FBEC148131B2B7E006D5497 /* PBXTextBookmark */; - 1FBEC14B131B2BAA006D5497 = 1FBEC14B131B2BAA006D5497 /* PBXTextBookmark */; - 1FBEC14E131B2BE6006D5497 = 1FBEC14E131B2BE6006D5497 /* PBXTextBookmark */; - 1FBEC151131B2C52006D5497 = 1FBEC151131B2C52006D5497 /* PBXTextBookmark */; + 1FC1C5D0131C488000D1FF71 = 1FC1C5D0131C488000D1FF71 /* PBXTextBookmark */; + 1FC1C5D6131C806900D1FF71 = 1FC1C5D6131C806900D1FF71 /* PBXTextBookmark */; + 1FC1C5D7131C806900D1FF71 = 1FC1C5D7131C806900D1FF71 /* PBXTextBookmark */; + 1FC1C615131D81E200D1FF71 = 1FC1C615131D81E200D1FF71 /* PBXTextBookmark */; }; sourceControlManager = 1FA0569D12F0B528003F1373 /* Source Control */; userBuildSettings = { diff --git a/src/ggs_api.js b/src/ggs_api.js index 1111cff..4a891df 100644 --- a/src/ggs_api.js +++ b/src/ggs_api.js @@ -1,36 +1,35 @@ function Storage(type) { if (type == "world" || type == "localStorage" || type == "players") { this.type = type; - this.tableToken = tableToken; var self = this; return { setItem: function(key, value) { if(this.type != "players") - callErlang("ggs_db setItem " + escapeErlang([self.tableToken, self.type, key, value])); + callErlang("ggs_db setItem " + escapeErlang([GGS.tableToken, self.type, key, value])); else throw "No such method setItem()"; }, getItem: function(key) { - return callErlang("ggs_db getItem " + escapeErlang([self.tableToken, self.type, key])); + return callErlang("ggs_db getItem " + escapeErlang([GGS.tableToken, self.type, key])); }, key: function(position) { - return callErlang("ggs_db key " + escapeErlang([self.tableToken, self.type, position])); + return callErlang("ggs_db key " + escapeErlang([GGS.tableToken, self.type, position])); }, length: { get: function() { - return callErlang("ggs_db length " + escapeErlang([self.tableToken, self.type])); + return callErlang("ggs_db length " + escapeErlang([GGS.tableToken, self.type])); } }, removeItem: function(key) { if(this.type != "players") - callErlang("ggs_db removeItem " + escapeErlang([self.tableToken, self.type, key])); + callErlang("ggs_db removeItem " + escapeErlang([GGS.tableToken, self.type, key])); else throw "No such method removeItem()"; }, clear: function() { if(this.type != "players") - callErlang("ggs_db clear " + escapeErlang([self.tableToken, self.type])); + callErlang("ggs_db clear " + escapeErlang([GGS.tableToken, self.type])); else throw "No such method clear()"; } @@ -71,13 +70,13 @@ _GGS.prototype.sendCommandToAll = function(command, args) { } _GGS.prototype.serverLog = function(message) { - callErlang("error_logger info_msg " + escapeErlang([message])) + callErlang("'error_logger info_msg " + escapeErlang([message]) + "'"); } function escapeErlang(args) { var str = JSON.stringify(args); str = str.replace("'", "\\\'"); - return "'" + str + "'"; + return str; } function Player(token) { @@ -89,7 +88,9 @@ function Player(token) { return { sendCommand: function(command, args) { - callErlang("ggs_table send_command " + escapeErlang(GGS.tableToken, command, args)); + ejsLog("/tmp/ggs-test.txt", "'ggs_table send_command " + escapeErlang([GGS.tableToken+ "", playerToken, command, args])+"'"); + //callErlang("'ggs_table send_command " + escapeErlang([GGS.tableToken+ "", playerToken, command, args]) + "'"); + ejsLog("/tmp/ggs-test.txt", "done"); } } } diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index e9650bb..1f60425 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -103,7 +103,7 @@ handle_call(join_lobby, From, State) -> Token = helpers:get_new_token(), Players = State#co_state.players, io:format("join_lobby from: ~p~n", [From]), - {Pid, Sock} = From, + {Pid, _Sock} = From, NewState = State#co_state{players = [{Pid, Token} | Players]}, back_up(NewState), {reply, {ok, Token}, NewState}; diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index a18a7f4..9e10a52 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -54,9 +54,10 @@ stop(GameVM) -> init([Table]) -> process_flag(trap_exit, true), {ok, Port} = js_driver:new(), -% %% @TODO: add here default JS API instead {ok, JSAPISourceCode} = file:read_file("src/ggs_api.js"), ok = js:define(Port, JSAPISourceCode), + InitGGSJSString = "var GGS = new _GGS(" ++ Table ++ ");", + ok = js:define(Port, list_to_binary(InitGGSJSString)), {ok, #state { port = Port, table = Table }}. %% private @@ -66,14 +67,20 @@ handle_call({eval, SourceCode}, _From, #state { port = Port } = State) -> {reply, Ret, State}. %% @private -handle_cast({define, SourceCode}, #state { port = Port } = State) -> - ok = js:define(Port, list_to_binary(SourceCode)), - {noreply, State}; +handle_cast({define, SourceCode}, #state { port = Port, table = Table } = State) -> + Ret = js:define(Port, list_to_binary(SourceCode)), + case Ret of + ok -> + ggs_table:notify_all_players(Table, {"defined", "ok"}), + {noreply, State}; + Other -> + ggs_table:notify_all_players(Table, {"defined", "error " ++ Other}), + {noreply, State} + end; handle_cast({player_command, Player, Command, Args}, #state { port = Port } = State) -> - Arguments = string:concat("'", string:concat( - string:join([js_escape(Player), js_escape(Command), js_escape(Args)], "','"), "'")), - Js = list_to_binary(string:concat(string:concat("playerCommand(", Arguments), ");")), + Js = list_to_binary("playerCommand(new Player('" ++ Player ++ "'), '" ++ js_escape(Command) ++ "', '" ++ js_escape(Args) ++ "');"), js_driver:define_js(Port, Js), + erlang:display(binary_to_list(Js)), {noreply, State}; handle_cast(stop, State) -> {stop, normal, State}; diff --git a/src/ggs_gamevm_p.erl b/src/ggs_gamevm_p.erl new file mode 100644 index 0000000..bd1beb3 --- /dev/null +++ b/src/ggs_gamevm_p.erl @@ -0,0 +1,279 @@ +%% @doc This module is responsible for running the game VM:s. You can issue +%% commands to a vm using this module. + +-module(ggs_gamevm_p). +-behaviour(gen_server). + +%% gen_server callbacks +-export([init/1, handle_call/3, handle_cast/2, handle_info/2, + terminate/2, code_change/3]). + +-record(state, { port, table } ). + +%% API +-export([start_link/1, define/2, player_command/4, stop/1, call_js/2]). + + +%% ---------------------------------------------------------------------- +% API implementation + +%% @doc Create a new VM process. The process ID is returned and can be used +%% with for example the define method of this module. +start_link(Table) -> + erlang_js:start(), %% @TODO: should only be done once + {ok, Pid} = gen_server:start_link(?MODULE, [Table], []), + Pid. + +%% @doc Define some new code on the specified VM, returns the atom ok. +define(GameVM, SourceCode) -> + gen_server:cast(GameVM, {define, SourceCode}). + +%% @doc Execute a player command on the specified VM. This function is +%% asynchronous, and returns ok. +%% @spec player_command(GameVM, User, Command, Args) -> ok +%% GameVM = process IS of VM +%% Player = the player running the command +%% Command = a game command to run +%% Args = arguments for the Command parameter +player_command(GameVM, Player, Command, Args) -> + gen_server:cast(GameVM, {player_command, Player, Command, Args}). + +%% @private +% only for tests +call_js(GameVM, SourceCode) -> + gen_server:call(GameVM, {eval, SourceCode}). + +% @doc stops the gamevm process +stop(GameVM) -> + gen_server:cast(GameVM, stop). + + +%% ---------------------------------------------------------------------- + +%% @private +init([Table]) -> + process_flag(trap_exit, true), + {ok, Port} = js_driver:new(), + {ok, JSAPISourceCode} = file:read_file("src/ggs_api.js"), + ok = js:define(Port, JSAPISourceCode), + InitGGSJSString = "var GGS = new _GGS(" ++ Table ++ ");", + ok = js:define(Port, list_to_binary(InitGGSJSString)), + {ok, #state { port = Port, table = Table }}. + +%% private +% only needed for the tests +handle_call({eval, SourceCode}, _From, #state { port = Port } = State) -> + {ok, Ret} = js:eval(Port, list_to_binary(SourceCode)), + {reply, Ret, State}. + +%% @private +handle_cast({define, SourceCode}, #state { port = Port, table = Table } = State) -> + Ret = js:define(Port, list_to_binary(SourceCode)), + case Ret of + ok -> + ggs_table:notify_all_players(Table, {"defined", "ok"}), + {noreply, State}; + Other -> + ggs_table:notify_all_players(Table, {"defined", "error " ++ Other}), + {noreply, State} + end; +handle_cast({player_command, Player, Command, Args}, #state { port = _Port, table = Table } = State) -> + intern_player_command(Table, Player, Command, Args), + {noreply, State}; +handle_cast(stop, State) -> + {stop, normal, State}; +handle_cast(Msg, S) -> + error_logger:error_report([unknown_msg, Msg]), + {noreply, S}. + +%% @private +handle_info(Msg, S) -> + error_logger:error_report([unknown_msg, Msg]), + {noreply, S}. + +%% @private +terminate(_Reason, _State) -> + ok. + +%% @private +code_change(_OldVsn, State, _Extra) -> + {ok, State}. + +%js_escape(S) -> +% lists:flatmap(fun($\') -> [$\\, $\']; (X) -> [X] end, S). + + +intern_player_command(Table, Player, Command, _Args) -> + case Command of + "ready" -> + intern_add_player(Table, Player); + "up" -> + intern_up(Table, Player); + "down" -> + intern_down(Table, Player); + "start" -> + intern_start(Table, Player) + end. + +intern_add_player(Table, Player) -> + {ok, PlayerList} = ggs_table:get_player_list(Table), + case length(PlayerList) of + 1 -> + ggs_db:setItem(Table, local_storage, Player, player1), + ggs_db:setItem(Table, local_storage, player1_y, 50), + ggs_table:send_command(Table, Player, {"welcome", int2str(1)}), + ggs_table:notify_all_players(Table, {"player1_y", int2str(50)}); + 2 -> + ggs_db:setItem(Table, local_storage, Player, player2), + ggs_db:setItem(Table, local_storage, player2_y, 50), + ggs_table:send_command(Table, Player, {"welcome", int2str(2)}), + ggs_table:send_command(Table, Player, {"player1_y", int2str(50)}), + ggs_table:notify_all_players(Table, {"player2_y", int2str(50)}); + _Other -> + ggs_table:send_command(Table, Player, {"not_welcome", ""}) + end. + + +intern_up(Table, Player) -> + case ggs_db:getItem(Table, local_storage, Player) of + player1 -> + Y = ggs_db:getItem(Table, local_storage, player1_y), + NewY = Y - 10, + case NewY >= 0 of + true -> + ggs_db:setItem(Table, local_storage, player1_y, NewY), + ggs_table:notify_all_players(Table, {"player1_y", int2str(NewY)}); + _Other -> + ggs_table:send_command(Table, Player, {"notice", "Already on top"}) + end; + player2 -> + Y = ggs_db:getItem(Table, local_storage, player2_y), + NewY = Y - 10, + case NewY >= 0 of + true -> + ggs_db:setItem(Table, local_storage, player2_y, NewY), + ggs_table:notify_all_players(Table, {"player2_y", int2str(NewY)}); + _Other -> + ggs_table:send_command(Table, Player, {"notice", "Already on top"}) + end + end. + +intern_down(Table, Player) -> + case ggs_db:getItem(Table, local_storage, Player) of + player1 -> + Y = ggs_db:getItem(Table, local_storage, player1_y), + NewY = Y + 10, + case NewY =< 100 of + true -> + ggs_db:setItem(Table, local_storage, player1_y, NewY), + ggs_table:notify_all_players(Table, {"player1_y", int2str(NewY)}); + _Other -> + ggs_table:send_command(Table, Player, {"notice", "Already on bottom"}) + end; + player2 -> + Y = ggs_db:getItem(Table, local_storage, player2_y), + NewY = Y + 10, + case NewY =< 100 of + true -> + ggs_db:setItem(Table, local_storage, player2_y, NewY), + ggs_table:notify_all_players(Table, {"player2_y", int2str(NewY)}); + _Other -> + ggs_table:send_command(Table, Player, {"notice", "Already on bottom"}) + end + end. + +intern_start(Table, Player) -> + case ggs_db:getItem(Table, local_storage, Player) of + player1 -> + ggs_db:setItem(Table, local_storage, player1_ready, true), + ggs_db:setItem(Table, local_storage, player1_points, 0), + case ggs_db:getItem(Table, local_storage, player2_ready) of + true -> + ggs_table:notify_all_players(Table, {"game", "start"}), + ggs_db:setItem(Table, local_storage, ball, {50,50,1,1}), + spawn(fun() -> game_loop([Table]) end); + false -> + ggs_table:send_command(Table, Player, {"game", "wait"}) + end; + player2 -> + ggs_db:setItem(Table, local_storage, player2_ready, true), + ggs_db:setItem(Table, local_storage, player2_points, 0), + case ggs_db:getItem(Table, local_storage, player1_ready) of + true -> + ggs_table:notify_all_players(Table, {"game", "start"}), + ggs_db:setItem(Table, local_storage, ball, {50,50,-1,-1}), + spawn(fun() -> game_loop([Table]) end); + false -> + ggs_table:send_command(Table, Player, {"game", "wait"}) + end + end. + +game_loop([Table]) -> + receive + tick -> + {BX, BY, SX, SY} = step_ball(ggs_db:getItem(Table, local_storage, ball)), + Ball = {BX, BY, SX, SY}, + ggs_db:setItem(Table, local_storage, ball, Ball), + ggs_table:notify_all_players(Table, {"ball", int2str(BX) ++ "," ++ int2str(BY)}), + check_ball(Table, Ball); + 'EXIT' -> + exit(normal) + after 5000 -> + self() ! tick + end. + +int2str(Int) -> + lists:flatten(io_lib:format("~p", [Int])). + +step_ball({BX, BY, SX, SY}) -> + {BX + SX, BY + SY, SX, BY}. + +check_ball(Table, {BX, BY, SX, SY}) -> + % check up and down bounds + case (BY > 90) or (BY < 0) of + true -> + NewSY = -SY; + false -> + NewSY = SY + end, + + % check intersection with player1 + P1Y = ggs_db:getItem(Table, local_storage, player1_y), + case check_intersect({0, P1Y, 10, 30}, {BX, BY, 10, 10}) of + true -> + SX1 = -SX; + false -> + SX1 = SX + end, + + % check intersection with player2 + P2Y = ggs_db:getItem(Table, local_storage, player2_y), + case check_intersect({90, P2Y, 10, 30}, {BX, BY, 10, 10}) of + true -> + SX2 = - SX1; + false -> + SX2 = SX1 + end, + ggs_db:setItem(Table, local_storage, ball, {BX, BY , SX2, NewSY}), + + % check for point player1 + if BX > 90 -> + Player1Points = ggs_db:getItem(Table, local_storage, player1_points), + NewPlayer1Points = Player1Points + 1, + ggs_db:setItem(Table, local_storage, player1_points, NewPlayer1Points), + ggs_table:notify_all_players(Table, {"player1_points", int2str(NewPlayer1Points)}), + exit(normal) + end, + + % check for point player2 + if BX < 0 -> + Player2Points = ggs_db:getItem(Table, local_storage, player2_points), + NewPlayer2Points = Player2Points + 1, + ggs_db:setItem(Table, local_storage, player2_points, NewPlayer2Points), + ggs_table:notify_all_players(Table, {"player2_points", int2str(NewPlayer2Points)}), + exit(normal) + end. + + +check_intersect({AX, AY, AW, AH}, {BX, BY, BW, BH}) -> + not (BX > (AX + AW)) or ((BX + BW) < AX) or (BY > (AY + AH)) or ((BY + BH) < AY). diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 467e3ac..9146799 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -23,14 +23,14 @@ start_link(Socket) -> % us, otherwise these messages end up in our parent. erlang:port_connect(Socket, self()), {ok, Token} = ggs_coordinator:join_lobby(), - TableStatus = ggs_coordinator:join_table(1337), + TableStatus = ggs_coordinator:join_table("1337"), case TableStatus of {ok, Table} -> notify(self(), self(), {"hello", Token}), loop(#pl_state{socket = Socket, token = Token, table = Table}); {error, no_such_table} -> - ggs_coordinator:create_table({force, 1337}), - {ok, Table} = ggs_coordinator:join_table(1337), + ggs_coordinator:create_table({force, "1337"}), + {ok, Table} = ggs_coordinator:join_table("1337"), notify(self(), self(), {"hello", Token}), loop(#pl_state{socket = Socket, token = Token, table = Table}) end. @@ -42,7 +42,7 @@ start_link(Socket) -> notify(Player, From, Message) -> erlang:display(Message), {Cmd, Data} = Message, - Parsed = ggs_protocol:create_message(Cmd, "text","text", Data), + Parsed = ggs_protocol:create_message(Cmd, "text","text", Data), Player ! {notify, From, Parsed}. %% @doc Get the player token uniquely representing the player. @@ -69,6 +69,7 @@ loop(#pl_state{token = _Token, socket = Socket, table = Table} = State) -> self() ! Parsed, loop(State); {notify, _From, Message} -> + erlang:display(Message), gen_tcp:send(Socket, Message), loop(State); % Below are messages generated by the parser diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 3bcfb7d..57785e8 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -18,7 +18,7 @@ notify_all_players/2, notify_game/3, get_player_list/1, - notify_player/4]). + send_command/3]). %% ---------------------------------------------------------------------- @@ -66,24 +66,16 @@ notify_game(TablePid, From, Message) -> %% @doc Notify a player sitting at this table with the message supplied. %% Player, Table and From are in token form. -notify_player(TableToken, PlayerToken, From, Message) -> +send_command(TableToken, PlayerToken, Message) -> TablePid = ggs_coordinator:table_token_to_pid(TableToken), - %PlayerPid = ggs_coordinator:player_token_to_pid(PlayerToken), - gen_server:cast(TablePid, {notify_player, PlayerToken, From, Message}). - -send_command(TableToken, PlayerToken, Command, Args) -> - gen_logger:not_implemented(). - -send_command_to_all(TableToken, Command, Args) -> - gen_logger:not_implemented(). - + gen_server:cast(TablePid, {notify_player, PlayerToken, self(), Message}). %% ---------------------------------------------------------------------- %% @private init([TableToken]) -> process_flag(trap_exit, true), - GameVM = ggs_gamevm:start_link(TableToken), + GameVM = ggs_gamevm_p:start_link(TableToken), {ok, #state { game_vm = GameVM, players = [] }}. @@ -110,14 +102,14 @@ handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> PlayerToken = ggs_coordinator:player_pid_to_token(Player), case Message of {server, define, Args} -> - ggs_gamevm:define(GameVM, Args); + ggs_gamevm_p:define(GameVM, Args); {game, Command, Args} -> - ggs_gamevm:player_command(GameVM, PlayerToken, Command, Args) + ggs_gamevm_p:player_command(GameVM, PlayerToken, Command, Args) end, {noreply, State}; handle_cast({notify_game, Message, From}, #state { game_vm = GameVM } = State) -> - ggs_gamevm:player_command(GameVM, From, Message, ""), + ggs_gamevm_p:player_command(GameVM, From, Message, ""), {noreply, State}; handle_cast({notify_all_players, Message}, #state{players = Players} = State) -> diff --git a/tests/ggs_coordinator_test.erl b/tests/ggs_coordinator_test.erl index 6ec41c6..5fd4056 100644 --- a/tests/ggs_coordinator_test.erl +++ b/tests/ggs_coordinator_test.erl @@ -45,9 +45,9 @@ create_table_test() -> timer:sleep(100), % Forcibly create a table. This functionality should be disabled % in the production system, but is pretty nice for testing. - Response = ggs_coordinator:create_table({force, 1337}), - ?assert(Response == {ok, 1337}). + Response = ggs_coordinator:create_table({force, "1337"}), + ?assert(Response == {ok, "1337"}). join_good_table_test() -> - Response = ggs_coordinator:join_table(1337), - ?assert(Response == {ok, 1337}). + Response = ggs_coordinator:join_table("1337"), + ?assert(Response == {ok, "1337"}). From ac4036dfc81b0589c29d0d97c71620c3fbeef68e Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Sun, 6 Mar 2011 05:25:35 +0100 Subject: [PATCH 104/192] added sound to pong and fixed some bugs --- games/Pong/Classes/GGSNetwork.m | 6 +- games/Pong/Classes/PongAppDelegate.m | 1 + games/Pong/Classes/PongViewController.h | 8 + games/Pong/Classes/PongViewController.m | 114 +- games/Pong/Pong.xcodeproj/jeena.mode1v3 | 50 +- games/Pong/Pong.xcodeproj/jeena.pbxuser | 1169 ++++++++++++++++++++- games/Pong/Pong.xcodeproj/project.pbxproj | 16 + games/Pong/lost.wav | Bin 0 -> 34278 bytes games/Pong/ping.wav | Bin 0 -> 13066 bytes games/Pong/pong.wav | Bin 0 -> 15542 bytes src/ggs_coordinator.erl | 1 - src/ggs_gamevm_p.erl | 86 +- src/ggs_player.erl | 5 - src/ggs_table.erl | 2 - tests/tick.erl | 26 + 15 files changed, 1373 insertions(+), 111 deletions(-) create mode 100644 games/Pong/lost.wav create mode 100644 games/Pong/ping.wav create mode 100644 games/Pong/pong.wav create mode 100644 tests/tick.erl diff --git a/games/Pong/Classes/GGSNetwork.m b/games/Pong/Classes/GGSNetwork.m index fbf635f..932a734 100644 --- a/games/Pong/Classes/GGSNetwork.m +++ b/games/Pong/Classes/GGSNetwork.m @@ -11,7 +11,7 @@ @implementation GGSNetwork -#define GGS_HOST @"localhost" +#define GGS_HOST @"home.jeena.net" #define GGS_PORT 9000 #define NO_TIMEOUT -1 @@ -37,6 +37,7 @@ asyncSocket = [[AsyncSocket alloc] initWithDelegate:self]; [asyncSocket connectToHost:GGS_HOST onPort:GGS_PORT error:nil]; + [asyncSocket readDataToData:HEADER_DELIMITER withTimeout:NO_TIMEOUT tag:HEAD]; } @@ -61,12 +62,11 @@ } - (void)onSocket:(AsyncSocket *)sock didConnectToHost:(NSString *)host port:(UInt16)port { - + } - (void)onSocket:(AsyncSocket *)sender didReadData:(NSData *)data withTag:(long)tag { - if (tag == HEAD) { [self parseAndSetHeader:data]; diff --git a/games/Pong/Classes/PongAppDelegate.m b/games/Pong/Classes/PongAppDelegate.m index 968396f..7ca5983 100644 --- a/games/Pong/Classes/PongAppDelegate.m +++ b/games/Pong/Classes/PongAppDelegate.m @@ -57,6 +57,7 @@ /* Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. */ + [(PongViewController *)viewController restart]; } diff --git a/games/Pong/Classes/PongViewController.h b/games/Pong/Classes/PongViewController.h index c62572d..0f8dbfb 100644 --- a/games/Pong/Classes/PongViewController.h +++ b/games/Pong/Classes/PongViewController.h @@ -9,6 +9,7 @@ #import #import "GGSDelegate.h" #import "GGSNetwork.h" +#import enum GameType { kGameTypeSinglePlayer = 0, @@ -28,6 +29,11 @@ enum GameType { IBOutlet UILabel *pointsP2; GGSNetwork *ggsNetwork; + + AVAudioPlayer *pingSound; + AVAudioPlayer *pongSound; + AVAudioPlayer *lostSound; + } @property (nonatomic, retain) IBOutlet UIView *ballView; @@ -40,6 +46,8 @@ enum GameType { @property (nonatomic, retain) GGSNetwork *ggsNetwork; +- (void)restart; + - (void)startPositions; - (void)zeroPoints; diff --git a/games/Pong/Classes/PongViewController.m b/games/Pong/Classes/PongViewController.m index 4f7a3d2..adfdc0c 100644 --- a/games/Pong/Classes/PongViewController.m +++ b/games/Pong/Classes/PongViewController.m @@ -7,7 +7,6 @@ // #import "PongViewController.h" -#import "GGSNetwork.h" @implementation PongViewController @@ -18,8 +17,8 @@ #define WIDTH 480 #define HEIGHT 320 -#define TOX(x) ( WIDTH / 100 * (x)) -#define TOY(y) ( HEIGHT / 100 * (y)) +#define TOX(x) ( 4.8 * x ) +#define TOY(y) ( 3.2 * y ) @synthesize ballView, player1View, player2View, tapToBegin, pointsP1, pointsP2, ggsNetwork; @@ -49,32 +48,90 @@ #pragma mark GGSNetwork Delegate - (void)GGSNetwork:(GGSNetwork *)_ggsNetwork ready:(BOOL)ready { - [ggsNetwork define:@"function playerCommand(user, command, args) { user.sendCommand(command, args); }"]; + [ggsNetwork sendCommand:@"ready" withArgs:@""]; } - (void)GGSNetwork:(GGSNetwork *)_ggsNetwork defined:(BOOL)defined { - if (defined) { - [ggsNetwork sendCommand:@"ready" withArgs:@""]; - } else { - NSLog(@"Not defined"); - } - + // do nothing. } - (void)GGSNetwork:(GGSNetwork *)_ggsNetwork receivedCommand:(NSString *)command withArgs:(NSString *)args { - NSLog(@"Command: %@; Args: %@", command, args); if ([command isEqualToString:@"ball"]) { NSArray *ball = [args componentsSeparatedByString:@","]; - ballView.center = CGPointMake([[ball objectAtIndex:0] intValue], [[ball objectAtIndex:1] intValue]); + [UIView beginAnimations:NULL context:NULL]; + CGFloat x = [[ball objectAtIndex:0] floatValue]; + CGFloat y = [[ball objectAtIndex:1] floatValue]; + ballView.center = CGPointMake(TOX(x), TOY(y)); + [UIView commitAnimations]; + } else if ([command isEqualToString:@"player1_y"]) { - player1View.center = CGPointMake(20, TOY([args intValue])); + + [UIView beginAnimations:NULL context:NULL]; + player1View.center = CGPointMake(25, TOY([args floatValue])); + [UIView commitAnimations]; + } else if ([command isEqualToString:@"player2_y"]) { - player2View.center = CGPointMake(WIDTH - 40, TOY([args intValue])); + + [UIView beginAnimations:NULL context:NULL]; + player2View.center = CGPointMake(WIDTH - 35, TOY([args floatValue])); + [UIView commitAnimations]; + } else if ([command isEqualToString:@"player1_points"]) { + pointsP1.text = args; + gamePaused = YES; + [lostSound play]; + } else if ([command isEqualToString:@"player2_points"]) { + pointsP2.text = args; + gamePaused = YES; + [lostSound play]; + + } else if ([command isEqualToString:@"game"]) { + + if ([args isEqualToString:@"wait"]) { + + NSLog(@"Other ready"); + + } else if ([args isEqualToString:@"start"]) { + + gamePaused = NO; + + } + } else if ([command isEqualToString:@"welcome"]) { + if ([args isEqualToString:@"1"]) { + player1View.backgroundColor = [UIColor redColor]; + } else { + player2View.backgroundColor = [UIColor redColor]; + } + + } else if ([command isEqualToString:@"sound"]) { + if ([args isEqualToString:@"ping"]) { + [pingSound play]; + } else { + [pongSound play]; + } + + } +} + +#pragma mark - +#pragma mark Input + +- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { + if (gamePaused) { + [ggsNetwork sendCommand:@"start" withArgs:@""]; + tapToBegin.hidden = YES; + } else { + CGPoint point = [[[touches allObjects] objectAtIndex:0] locationInView:self.view]; + if (point.y > (HEIGHT / 2)) { + [ggsNetwork sendCommand:@"down" withArgs:@""]; + } else { + [ggsNetwork sendCommand:@"up" withArgs:@""]; + } + } } @@ -82,12 +139,35 @@ #pragma mark - #pragma mark View +- (void)restart { + player1View.backgroundColor = [UIColor whiteColor]; + player2View.backgroundColor = [UIColor whiteColor]; + pointsP1.text = @"0"; + pointsP2.text = @"0"; + self.ggsNetwork = [[GGSNetwork alloc] initWithDelegate:self]; + gamePaused = YES; + tapToBegin.hidden = NO; +} + // Implement viewDidLoad to do additional setup after loading the view, typically from a nib. - (void)viewDidLoad { [super viewDidLoad]; - ggsNetwork = [[GGSNetwork alloc] initWithDelegate:self]; + NSString *path = [[NSBundle mainBundle] pathForResource:@"ping" ofType:@"wav"]; + pingSound = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]; + [pingSound play]; + path = [[NSBundle mainBundle] pathForResource:@"pong" ofType:@"wav"]; + pongSound = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]; + [pongSound play]; + + path = [[NSBundle mainBundle] pathForResource:@"lost" ofType:@"wav"]; + lostSound = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]; + [lostSound play]; + + + //ggsNetwork = [[GGSNetwork alloc] initWithDelegate:self]; + gamePaused = YES; //[self startPositions]; //[NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(moveBall) userInfo:nil repeats:YES]; @@ -254,6 +334,10 @@ [pointsP2 release]; [ggsNetwork release]; + [pingSound release]; + [pongSound release]; + [lostSound release]; + [super dealloc]; } diff --git a/games/Pong/Pong.xcodeproj/jeena.mode1v3 b/games/Pong/Pong.xcodeproj/jeena.mode1v3 index 99db5bd..e793482 100644 --- a/games/Pong/Pong.xcodeproj/jeena.mode1v3 +++ b/games/Pong/Pong.xcodeproj/jeena.mode1v3 @@ -326,19 +326,19 @@ _historyCapacity 0 bookmark - 1F369E7B1323081C004E7A99 + 1F36A0221323417E004E7A99 history 1FBEBF151319F5C1006D5497 1FBEC001131AA71C006D5497 1FBEC002131AA71C006D5497 1FBEC05C131B085D006D5497 - 1FBEC05D131B085D006D5497 - 1F369E761323081C004E7A99 - 1F369E771323081C004E7A99 - 1F369E781323081C004E7A99 - 1F369E791323081C004E7A99 - 1F369E7A1323081C004E7A99 + 1F369ED81323101D004E7A99 + 1F369F33132317A8004E7A99 + 1F369F6C13232750004E7A99 + 1F369FE61323395B004E7A99 + 1F36A0201323417E004E7A99 + 1F36A0211323417E004E7A99 SplitCount @@ -536,7 +536,7 @@ 5 WindowOrderList - 1F369E861323081C004E7A99 + 1F369E8E13230953004E7A99 1F369E871323081C004E7A99 1CD10A99069EF8BA00B06720 1FA056A412F0B540003F1373 @@ -665,8 +665,8 @@ yes sizes - {{0, 0}, {316, 201}} - {{316, 0}, {378, 201}} + {{0, 0}, {357, 449}} + {{357, 0}, {428, 449}} VerticalSplitView @@ -681,8 +681,8 @@ yes sizes - {{0, 0}, {694, 201}} - {{0, 201}, {694, 180}} + {{0, 0}, {785, 449}} + {{0, 449}, {785, 403}} @@ -702,7 +702,7 @@ DebugSTDIOWindowFrame {{200, 200}, {500, 300}} Frame - {{0, 0}, {694, 381}} + {{0, 0}, {785, 852}} PBXDebugSessionStackFrameViewKey DebugVariablesTableConfiguration @@ -712,24 +712,24 @@ Value 85 Summary - 148 + 198 Frame - {{316, 0}, {378, 201}} + {{357, 0}, {428, 449}} RubberWindowFrame - 108 977 694 422 0 0 2560 1418 + 108 506 785 893 0 0 2560 1418 RubberWindowFrame - 108 977 694 422 0 0 2560 1418 + 108 506 785 893 0 0 2560 1418 Module PBXDebugSessionModule Proportion - 381pt + 852pt Proportion - 381pt + 852pt Name @@ -754,7 +754,7 @@ ToolbarConfiguration xcode.toolbar.config.debugV3 WindowString - 108 977 694 422 0 0 2560 1418 + 108 506 785 893 0 0 2560 1418 WindowToolGUID 1CD10A99069EF8BA00B06720 WindowToolIsVisible @@ -880,18 +880,18 @@ GeometryConfiguration Frame - {{0, 0}, {673, 481}} + {{0, 0}, {724, 358}} RubberWindowFrame - 3600 653 673 522 2560 0 1920 1200 + 3598 801 724 399 2560 0 1920 1200 Module PBXDebugCLIModule Proportion - 481pt + 358pt Proportion - 481pt + 358pt Name @@ -911,7 +911,7 @@ ToolbarConfiguration xcode.toolbar.config.consoleV3 WindowString - 3600 653 673 522 2560 0 1920 1200 + 3598 801 724 399 2560 0 1920 1200 WindowToolGUID 1C78EAAD065D492600B07095 WindowToolIsVisible diff --git a/games/Pong/Pong.xcodeproj/jeena.pbxuser b/games/Pong/Pong.xcodeproj/jeena.pbxuser index f609c15..c33f163 100644 --- a/games/Pong/Pong.xcodeproj/jeena.pbxuser +++ b/games/Pong/Pong.xcodeproj/jeena.pbxuser @@ -9,9 +9,9 @@ }; 1D3623250D0F684500981E51 /* PongAppDelegate.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1965, 1215}}"; - sepNavSelRange = "{629, 0}"; - sepNavVisRange = "{448, 307}"; + sepNavIntBoundsRect = "{{0, 0}, {1965, 1350}}"; + sepNavSelRange = "{2181, 0}"; + sepNavVisRange = "{0, 2635}"; }; }; 1D6058900D05DD3D006BFB54 /* Pong */ = { @@ -45,7 +45,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 60"; rLen = 0; - rLoc = 1529; + rLoc = 1537; rType = 0; vrLen = 2676; vrLoc = 860; @@ -55,7 +55,7 @@ fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; name = "PongViewController.h: 11"; rLen = 0; - rLoc = 207; + rLoc = 246; rType = 0; vrLen = 1144; vrLoc = 0; @@ -65,7 +65,7 @@ fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; name = "PongViewController.m: 24"; rLen = 0; - rLoc = 522; + rLoc = 480; rType = 0; vrLen = 1968; vrLoc = 37; @@ -75,11 +75,1031 @@ fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; name = "PongViewController.m: 40"; rLen = 0; - rLoc = 989; + rLoc = 947; rType = 0; vrLen = 2275; vrLoc = 799; }; + 1F369E8A13230953004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 40"; + rLen = 0; + rLoc = 947; + rType = 0; + vrLen = 2223; + vrLoc = 0; + }; + 1F369E8B13230953004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 28"; + rLen = 0; + rLoc = 748; + rType = 0; + vrLen = 910; + vrLoc = 0; + }; + 1F369E8C13230953004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 14"; + rLen = 0; + rLoc = 212; + rType = 0; + vrLen = 2278; + vrLoc = 0; + }; + 1F369E9313230981004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 17"; + rLen = 0; + rLoc = 258; + rType = 0; + vrLen = 2268; + vrLoc = 26; + }; + 1F369E961323099B004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 39"; + rLen = 0; + rLoc = 828; + rType = 0; + vrLen = 2358; + vrLoc = 29; + }; + 1F369E99132309E0004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 39"; + rLen = 0; + rLoc = 828; + rType = 0; + vrLen = 2358; + vrLoc = 29; + }; + 1F369E9A132309E0004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 40"; + rLen = 0; + rLoc = 947; + rType = 0; + vrLen = 2223; + vrLoc = 0; + }; + 1F369E9B132309E0004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 56"; + rLen = 0; + rLoc = 1256; + rType = 0; + vrLen = 2288; + vrLoc = 191; + }; + 1F369E9E13230A0F004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 52"; + rLen = 0; + rLoc = 1168; + rType = 0; + vrLen = 2288; + vrLoc = 191; + }; + 1F369E9F13230A0F004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 28"; + rLen = 0; + rLoc = 748; + rType = 0; + vrLen = 910; + vrLoc = 0; + }; + 1F369EA013230A0F004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 64"; + rLen = 0; + rLoc = 1755; + rType = 0; + vrLen = 2447; + vrLoc = 328; + }; + 1F369EA513230A35004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 64"; + rLen = 0; + rLoc = 1755; + rType = 0; + vrLen = 2447; + vrLoc = 328; + }; + 1F369EA613230A35004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 52"; + rLen = 0; + rLoc = 1168; + rType = 0; + vrLen = 2288; + vrLoc = 191; + }; + 1F369EA713230A35004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 85"; + rLen = 0; + rLoc = 4498; + rType = 0; + vrLen = 2296; + vrLoc = 431; + }; + 1F369EAA13230A56004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 86"; + rLen = 0; + rLoc = 4500; + rType = 0; + vrLen = 2280; + vrLoc = 431; + }; + 1F369EAB13230A56004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 64"; + rLen = 0; + rLoc = 1755; + rType = 0; + vrLen = 2447; + vrLoc = 328; + }; + 1F369EAC13230A56004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 39"; + rLen = 0; + rLoc = 799; + rType = 0; + vrLen = 2464; + vrLoc = 329; + }; + 1F369EAF13230A6B004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 69"; + rLen = 0; + rLoc = 1845; + rType = 0; + vrLen = 2490; + vrLoc = 369; + }; + 1F369EB413230AAC004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 40"; + rLen = 0; + rLoc = 799; + rType = 0; + vrLen = 2021; + vrLoc = 3; + }; + 1F369EB513230ADE004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 41"; + rLen = 0; + rLoc = 828; + rType = 0; + vrLen = 2021; + vrLoc = 3; + }; + 1F369EB613230B1D004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 43"; + rLen = 0; + rLoc = 865; + rType = 0; + vrLen = 2028; + vrLoc = 3; + }; + 1F369EBB13230B53004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 43"; + rLen = 0; + rLoc = 865; + rType = 0; + vrLen = 2174; + vrLoc = 29; + }; + 1F369EBF13230B6E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 43"; + rLen = 0; + rLoc = 865; + rType = 0; + vrLen = 2205; + vrLoc = 122; + }; + 1F369EC013230BF3004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 43"; + rLen = 0; + rLoc = 865; + rType = 0; + vrLen = 2271; + vrLoc = 1750; + }; + 1F369EC113230BF3004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 106"; + rLen = 0; + rLoc = 4500; + rType = 0; + vrLen = 2255; + vrLoc = 952; + }; + 1F369EC413230DCA004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 93"; + rLen = 0; + rLoc = 3351; + rType = 0; + vrLen = 2412; + vrLoc = 1563; + }; + 1F369EC613230DE0004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 93"; + rLen = 0; + rLoc = 3351; + rType = 0; + vrLen = 2416; + vrLoc = 1563; + }; + 1F369ECB13230E71004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 93"; + rLen = 0; + rLoc = 3351; + rType = 0; + vrLen = 2259; + vrLoc = 1720; + }; + 1F369ECC13230E71004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 28"; + rLen = 0; + rLoc = 748; + rType = 0; + vrLen = 910; + vrLoc = 0; + }; + 1F369ECD13230E71004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 14"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 2036; + vrLoc = 0; + }; + 1F369ED013230E9E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 14"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 2133; + vrLoc = 3; + }; + 1F369ED313230EAD004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 14"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 2110; + vrLoc = 26; + }; + 1F369ED413230F2A004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 20"; + rLen = 0; + rLoc = 534; + rType = 0; + vrLen = 2271; + vrLoc = 1571; + }; + 1F369ED71323101D004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 20"; + rLen = 0; + rLoc = 534; + rType = 0; + vrLen = 2271; + vrLoc = 1571; + }; + 1F369ED81323101D004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1D3623250D0F684500981E51 /* PongAppDelegate.m */; + name = "PongAppDelegate.m: 60"; + rLen = 0; + rLoc = 2181; + rType = 0; + vrLen = 2635; + vrLoc = 0; + }; + 1F369ED91323101D004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 43"; + rLen = 0; + rLoc = 1173; + rType = 0; + vrLen = 1162; + vrLoc = 0; + }; + 1F369EDA1323101D004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 104"; + rLen = 0; + rLoc = 3589; + rType = 0; + vrLen = 2119; + vrLoc = 2266; + }; + 1F369EDD1323104E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 121"; + rLen = 1; + rLoc = 4771; + rType = 0; + vrLen = 2160; + vrLoc = 2266; + }; + 1F369EDE1323104E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 20"; + rLen = 0; + rLoc = 534; + rType = 0; + vrLen = 2273; + vrLoc = 1569; + }; + 1F369EDF1323104E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 35"; + rLen = 0; + rLoc = 865; + rType = 0; + vrLen = 2277; + vrLoc = 3; + }; + 1F369EE21323105F004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 33"; + rLen = 0; + rLoc = 862; + rType = 0; + vrLen = 2264; + vrLoc = 26; + }; + 1F369EE513231076004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 20"; + rLen = 0; + rLoc = 534; + rType = 0; + vrLen = 2312; + vrLoc = 29; + }; + 1F369EF413231106004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 34"; + rLen = 0; + rLoc = 865; + rType = 0; + vrLen = 2234; + vrLoc = 3; + }; + 1F369EF91323111F004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 14"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 2099; + vrLoc = 26; + }; + 1F369EFC1323113B004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 14"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 2171; + vrLoc = 26; + }; + 1F369EFD1323113B004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 105"; + rLen = 0; + rLoc = 3690; + rType = 0; + vrLen = 2161; + vrLoc = 2282; + }; + 1F369F011323115B004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 105"; + rLen = 0; + rLoc = 3690; + rType = 0; + vrLen = 2317; + vrLoc = 2302; + }; + 1F369F0413231163004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 105"; + rLen = 0; + rLoc = 3690; + rType = 0; + vrLen = 2231; + vrLoc = 2388; + }; + 1F369F0B1323128E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 43"; + rLen = 0; + rLoc = 1173; + rType = 0; + vrLen = 1162; + vrLoc = 0; + }; + 1F369F0C1323128E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 105"; + rLen = 0; + rLoc = 3690; + rType = 0; + vrLen = 2167; + vrLoc = 2533; + }; + 1F369F0D1323128E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 75"; + rLen = 0; + rLoc = 2465; + rType = 0; + vrLen = 2212; + vrLoc = 861; + }; + 1F369F101323129A004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 75"; + rLen = 0; + rLoc = 2465; + rType = 0; + vrLen = 2239; + vrLoc = 952; + }; + 1F369F16132312C3004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 75"; + rLen = 0; + rLoc = 2465; + rType = 0; + vrLen = 2274; + vrLoc = 992; + }; + 1F369F1F1323136F004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 76"; + rLen = 0; + rLoc = 2503; + rType = 0; + vrLen = 2313; + vrLoc = 1029; + }; + 1F369F241323151F004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 103"; + rLen = 0; + rLoc = 2770; + rType = 0; + vrLen = 2121; + vrLoc = 971; + }; + 1F369F2913231563004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 61"; + rLen = 0; + rLoc = 1370; + rType = 0; + vrLen = 2209; + vrLoc = 524; + }; + 1F369F2D13231572004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 61"; + rLen = 0; + rLoc = 1370; + rType = 0; + vrLen = 2210; + vrLoc = 528; + }; + 1F369F2E1323158B004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 77"; + rLen = 0; + rLoc = 2044; + rType = 0; + vrLen = 2210; + vrLoc = 528; + }; + 1F369F33132317A8004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 28"; + rLen = 0; + rLoc = 748; + rType = 0; + vrLen = 910; + vrLoc = 0; + }; + 1F369F34132317A8004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 14"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 2403; + vrLoc = 236; + }; + 1F369F35132317A8004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 45"; + rLen = 0; + rLoc = 1002; + rType = 0; + vrLen = 2210; + vrLoc = 528; + }; + 1F369F36132317A8004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 66"; + rLen = 0; + rLoc = 1619; + rType = 0; + vrLen = 2074; + vrLoc = 712; + }; + 1F369F631323270D004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 66"; + rLen = 0; + rLoc = 1619; + rType = 0; + vrLen = 2047; + vrLoc = 1504; + }; + 1F369F641323270D004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 14"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 2403; + vrLoc = 236; + }; + 1F369F651323270D004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 69"; + rLen = 0; + rLoc = 1845; + rType = 0; + vrLen = 2623; + vrLoc = 1240; + }; + 1F369F6C13232750004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 69"; + rLen = 0; + rLoc = 1845; + rType = 0; + vrLen = 2571; + vrLoc = 1292; + }; + 1F369F6D13232750004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 66"; + rLen = 0; + rLoc = 1619; + rType = 0; + vrLen = 2047; + vrLoc = 1504; + }; + 1F369F6E13232750004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 105"; + rLen = 0; + rLoc = 2728; + rType = 0; + vrLen = 2055; + vrLoc = 1660; + }; + 1F369F711323276C004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 105"; + rLen = 0; + rLoc = 2768; + rType = 0; + vrLen = 2002; + vrLoc = 1711; + }; + 1F369F76132327A3004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 105"; + rLen = 0; + rLoc = 2768; + rType = 0; + vrLen = 1962; + vrLoc = 1792; + }; + 1F369F78132327B7004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 105"; + rLen = 0; + rLoc = 2768; + rType = 0; + vrLen = 2031; + vrLoc = 1792; + }; + 1F369F8913232BEE004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 135"; + rLen = 0; + rLoc = 3582; + rType = 0; + vrLen = 1976; + vrLoc = 1846; + }; + 1F369F8C13232BF6004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 135"; + rLen = 0; + rLoc = 3582; + rType = 0; + vrLen = 2013; + vrLoc = 1847; + }; + 1F369F9013232C36004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 137"; + rLen = 0; + rLoc = 3569; + rType = 0; + vrLen = 1951; + vrLoc = 1955; + }; + 1F369F9213232C3B004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 137"; + rLen = 0; + rLoc = 3569; + rType = 0; + vrLen = 2020; + vrLoc = 1955; + }; + 1F369F9713232C58004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 133"; + rLen = 0; + rLoc = 3431; + rType = 0; + vrLen = 1936; + vrLoc = 2041; + }; + 1F369F9813232C66004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 139"; + rLen = 0; + rLoc = 3690; + rType = 0; + vrLen = 1936; + vrLoc = 2041; + }; + 1F369FAB13233178004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 91"; + rLen = 0; + rLoc = 2356; + rType = 0; + vrLen = 2153; + vrLoc = 1097; + }; + 1F369FAE132331BB004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 91"; + rLen = 0; + rLoc = 2356; + rType = 0; + vrLen = 2073; + vrLoc = 1211; + }; + 1F369FBB1323344E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 69"; + rLen = 0; + rLoc = 1698; + rType = 0; + vrLen = 2080; + vrLoc = 996; + }; + 1F369FBE132334E1004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 21"; + rLen = 0; + rLoc = 358; + rType = 0; + vrLen = 2202; + vrLoc = 136; + }; + 1F369FC313233530004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 69"; + rLen = 0; + rLoc = 1698; + rType = 0; + vrLen = 2209; + vrLoc = 191; + }; + 1F369FCA132335A2004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 69"; + rLen = 0; + rLoc = 1698; + rType = 0; + vrLen = 2234; + vrLoc = 252; + }; + 1F369FCD132335E1004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 69"; + rLen = 0; + rLoc = 1698; + rType = 0; + vrLen = 2245; + vrLoc = 298; + }; + 1F369FD2132336DF004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 69"; + rLen = 0; + rLoc = 1698; + rType = 0; + vrLen = 2216; + vrLoc = 357; + }; + 1F369FD313233721004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 22"; + rLen = 0; + rLoc = 386; + rType = 0; + vrLen = 2225; + vrLoc = 40; + }; + 1F369FDA13233780004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 69"; + rLen = 0; + rLoc = 1698; + rType = 0; + vrLen = 2113; + vrLoc = 693; + }; + 1F369FE1132338AC004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 69"; + rLen = 0; + rLoc = 1698; + rType = 0; + vrLen = 1981; + vrLoc = 836; + }; + 1F369FE3132338C0004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 69"; + rLen = 0; + rLoc = 1698; + rType = 0; + vrLen = 1996; + vrLoc = 836; + }; + 1F369FE61323395B004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEC030131AF83B006D5497 /* GGSDelegate.h */; + name = "GGSDelegate.h: 16"; + rLen = 0; + rLoc = 283; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 1F369FE71323395B004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 69"; + rLen = 0; + rLoc = 1698; + rType = 0; + vrLen = 1994; + vrLoc = 838; + }; + 1F369FE81323395B004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 60"; + rLen = 0; + rLoc = 1369; + rType = 0; + vrLen = 1964; + vrLoc = 838; + }; + 1F36A00A13233D92004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 35"; + rLen = 0; + rLoc = 744; + rType = 0; + vrLen = 1245; + vrLoc = 0; + }; + 1F36A00B13233D92004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 73"; + rLen = 0; + rLoc = 1894; + rType = 0; + vrLen = 2005; + vrLoc = 971; + }; + 1F36A00C13233D92004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 328"; + rLen = 0; + rLoc = 8674; + rType = 0; + vrLen = 2044; + vrLoc = 845; + }; + 1F36A00F13233EE7004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 12"; + rLen = 0; + rLoc = 246; + rType = 0; + vrLen = 1284; + vrLoc = 0; + }; + 1F36A01013233EE7004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 11"; + rLen = 0; + rLoc = 168; + rType = 0; + vrLen = 2123; + vrLoc = 0; + }; + 1F36A01113233EE7004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 2159; + vrLoc = 3; + }; + 1F36A01713233F1E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 2167; + vrLoc = 40; + }; + 1F36A0201323417E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; + name = "PongViewController.h: 12"; + rLen = 0; + rLoc = 246; + rType = 0; + vrLen = 1284; + vrLoc = 0; + }; + 1F36A0211323417E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 2167; + vrLoc = 169; + }; + 1F36A0221323417E004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 166"; + rLen = 0; + rLoc = 4434; + rType = 0; + vrLen = 2239; + vrLoc = 2533; + }; 1FA0569112F0B513003F1373 /* Pong */ = { isa = PBXExecutable; activeArgIndices = ( @@ -146,9 +1166,9 @@ }; 1FBEBF4C1319FCDE006D5497 /* AsyncSocket.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {900, 63840}}"; - sepNavSelRange = "{0, 0}"; - sepNavVisRange = "{0, 2997}"; + sepNavIntBoundsRect = "{{0, 0}, {852, 64080}}"; + sepNavSelRange = "{69038, 0}"; + sepNavVisRange = "{20925, 796}"; }; }; 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */ = { @@ -160,9 +1180,9 @@ }; 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {998, 1920}}"; - sepNavSelRange = "{1529, 0}"; - sepNavVisRange = "{860, 2676}"; + sepNavIntBoundsRect = "{{0, 0}, {998, 2055}}"; + sepNavSelRange = "{1845, 0}"; + sepNavVisRange = "{1292, 2571}"; }; }; 1FBEC001131AA71C006D5497 /* PBXTextBookmark */ = { @@ -217,7 +1237,7 @@ fRef = 28D7ACF60DDB3853001CB0EB /* PongViewController.h */; name = "PongViewController.h: 11"; rLen = 0; - rLoc = 207; + rLoc = 246; rType = 0; vrLen = 1144; vrLoc = 0; @@ -237,7 +1257,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 44"; rLen = 108; - rLoc = 963; + rLoc = 971; rType = 0; vrLen = 2551; vrLoc = 369; @@ -257,7 +1277,7 @@ fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; name = "PongViewController.m: 48"; rLen = 0; - rLoc = 1280; + rLoc = 1181; rType = 0; vrLen = 2007; vrLoc = 0; @@ -267,7 +1287,7 @@ fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; name = "PongViewController.m: 85"; rLen = 0; - rLoc = 2811; + rLoc = 4848; rType = 0; vrLen = 2258; vrLoc = 1218; @@ -275,23 +1295,24 @@ 28D7ACF60DDB3853001CB0EB /* PongViewController.h */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {998, 1171}}"; - sepNavSelRange = "{207, 0}"; - sepNavVisRange = "{0, 1144}"; + sepNavSelRange = "{246, 0}"; + sepNavVisRange = "{0, 1284}"; }; }; 28D7ACF70DDB3853001CB0EB /* PongViewController.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {998, 3810}}"; - sepNavSelRange = "{989, 0}"; - sepNavVisRange = "{799, 2275}"; + sepNavIntBoundsRect = "{{0, 0}, {998, 5070}}"; + sepNavSelRange = "{4434, 0}"; + sepNavVisRange = "{2533, 2239}"; }; }; 29B97313FDCFA39411CA2CEA /* Project object */ = { activeBuildConfigurationName = Debug; activeExecutable = 1FA0569112F0B513003F1373 /* Pong */; - activeSDKPreference = iphoneos4.2; + activeSDKPreference = iphonesimulator4.2; activeTarget = 1D6058900D05DD3D006BFB54 /* Pong */; addToTargets = ( + 1D6058900D05DD3D006BFB54 /* Pong */, ); codeSenseManager = 1FA0569E12F0B528003F1373 /* Code sense */; executables = ( @@ -330,6 +1351,108 @@ 1F369E791323081C004E7A99 /* PBXTextBookmark */ = 1F369E791323081C004E7A99 /* PBXTextBookmark */; 1F369E7A1323081C004E7A99 /* PBXTextBookmark */ = 1F369E7A1323081C004E7A99 /* PBXTextBookmark */; 1F369E7B1323081C004E7A99 /* PBXTextBookmark */ = 1F369E7B1323081C004E7A99 /* PBXTextBookmark */; + 1F369E8A13230953004E7A99 /* PBXTextBookmark */ = 1F369E8A13230953004E7A99 /* PBXTextBookmark */; + 1F369E8B13230953004E7A99 /* PBXTextBookmark */ = 1F369E8B13230953004E7A99 /* PBXTextBookmark */; + 1F369E8C13230953004E7A99 /* PBXTextBookmark */ = 1F369E8C13230953004E7A99 /* PBXTextBookmark */; + 1F369E9313230981004E7A99 /* PBXTextBookmark */ = 1F369E9313230981004E7A99 /* PBXTextBookmark */; + 1F369E961323099B004E7A99 /* PBXTextBookmark */ = 1F369E961323099B004E7A99 /* PBXTextBookmark */; + 1F369E99132309E0004E7A99 /* PBXTextBookmark */ = 1F369E99132309E0004E7A99 /* PBXTextBookmark */; + 1F369E9A132309E0004E7A99 /* PBXTextBookmark */ = 1F369E9A132309E0004E7A99 /* PBXTextBookmark */; + 1F369E9B132309E0004E7A99 /* PBXTextBookmark */ = 1F369E9B132309E0004E7A99 /* PBXTextBookmark */; + 1F369E9E13230A0F004E7A99 /* PBXTextBookmark */ = 1F369E9E13230A0F004E7A99 /* PBXTextBookmark */; + 1F369E9F13230A0F004E7A99 /* PBXTextBookmark */ = 1F369E9F13230A0F004E7A99 /* PBXTextBookmark */; + 1F369EA013230A0F004E7A99 /* PBXTextBookmark */ = 1F369EA013230A0F004E7A99 /* PBXTextBookmark */; + 1F369EA513230A35004E7A99 /* PBXTextBookmark */ = 1F369EA513230A35004E7A99 /* PBXTextBookmark */; + 1F369EA613230A35004E7A99 /* PBXTextBookmark */ = 1F369EA613230A35004E7A99 /* PBXTextBookmark */; + 1F369EA713230A35004E7A99 /* PBXTextBookmark */ = 1F369EA713230A35004E7A99 /* PBXTextBookmark */; + 1F369EAA13230A56004E7A99 /* PBXTextBookmark */ = 1F369EAA13230A56004E7A99 /* PBXTextBookmark */; + 1F369EAB13230A56004E7A99 /* PBXTextBookmark */ = 1F369EAB13230A56004E7A99 /* PBXTextBookmark */; + 1F369EAC13230A56004E7A99 /* PBXTextBookmark */ = 1F369EAC13230A56004E7A99 /* PBXTextBookmark */; + 1F369EAF13230A6B004E7A99 /* PBXTextBookmark */ = 1F369EAF13230A6B004E7A99 /* PBXTextBookmark */; + 1F369EB413230AAC004E7A99 /* PBXTextBookmark */ = 1F369EB413230AAC004E7A99 /* PBXTextBookmark */; + 1F369EB513230ADE004E7A99 /* PBXTextBookmark */ = 1F369EB513230ADE004E7A99 /* PBXTextBookmark */; + 1F369EB613230B1D004E7A99 /* PBXTextBookmark */ = 1F369EB613230B1D004E7A99 /* PBXTextBookmark */; + 1F369EBB13230B53004E7A99 /* PBXTextBookmark */ = 1F369EBB13230B53004E7A99 /* PBXTextBookmark */; + 1F369EBF13230B6E004E7A99 /* PBXTextBookmark */ = 1F369EBF13230B6E004E7A99 /* PBXTextBookmark */; + 1F369EC013230BF3004E7A99 /* PBXTextBookmark */ = 1F369EC013230BF3004E7A99 /* PBXTextBookmark */; + 1F369EC113230BF3004E7A99 /* PBXTextBookmark */ = 1F369EC113230BF3004E7A99 /* PBXTextBookmark */; + 1F369EC413230DCA004E7A99 /* PBXTextBookmark */ = 1F369EC413230DCA004E7A99 /* PBXTextBookmark */; + 1F369EC613230DE0004E7A99 /* PBXTextBookmark */ = 1F369EC613230DE0004E7A99 /* PBXTextBookmark */; + 1F369ECB13230E71004E7A99 /* PBXTextBookmark */ = 1F369ECB13230E71004E7A99 /* PBXTextBookmark */; + 1F369ECC13230E71004E7A99 /* PBXTextBookmark */ = 1F369ECC13230E71004E7A99 /* PBXTextBookmark */; + 1F369ECD13230E71004E7A99 /* PBXTextBookmark */ = 1F369ECD13230E71004E7A99 /* PBXTextBookmark */; + 1F369ED013230E9E004E7A99 /* PBXTextBookmark */ = 1F369ED013230E9E004E7A99 /* PBXTextBookmark */; + 1F369ED313230EAD004E7A99 /* PBXTextBookmark */ = 1F369ED313230EAD004E7A99 /* PBXTextBookmark */; + 1F369ED413230F2A004E7A99 /* PBXTextBookmark */ = 1F369ED413230F2A004E7A99 /* PBXTextBookmark */; + 1F369ED71323101D004E7A99 /* PBXTextBookmark */ = 1F369ED71323101D004E7A99 /* PBXTextBookmark */; + 1F369ED81323101D004E7A99 /* PBXTextBookmark */ = 1F369ED81323101D004E7A99 /* PBXTextBookmark */; + 1F369ED91323101D004E7A99 /* PBXTextBookmark */ = 1F369ED91323101D004E7A99 /* PBXTextBookmark */; + 1F369EDA1323101D004E7A99 /* PBXTextBookmark */ = 1F369EDA1323101D004E7A99 /* PBXTextBookmark */; + 1F369EDD1323104E004E7A99 /* PBXTextBookmark */ = 1F369EDD1323104E004E7A99 /* PBXTextBookmark */; + 1F369EDE1323104E004E7A99 /* PBXTextBookmark */ = 1F369EDE1323104E004E7A99 /* PBXTextBookmark */; + 1F369EDF1323104E004E7A99 /* PBXTextBookmark */ = 1F369EDF1323104E004E7A99 /* PBXTextBookmark */; + 1F369EE21323105F004E7A99 /* PBXTextBookmark */ = 1F369EE21323105F004E7A99 /* PBXTextBookmark */; + 1F369EE513231076004E7A99 /* PBXTextBookmark */ = 1F369EE513231076004E7A99 /* PBXTextBookmark */; + 1F369EF413231106004E7A99 /* PBXTextBookmark */ = 1F369EF413231106004E7A99 /* PBXTextBookmark */; + 1F369EF91323111F004E7A99 /* PBXTextBookmark */ = 1F369EF91323111F004E7A99 /* PBXTextBookmark */; + 1F369EFC1323113B004E7A99 /* PBXTextBookmark */ = 1F369EFC1323113B004E7A99 /* PBXTextBookmark */; + 1F369EFD1323113B004E7A99 /* PBXTextBookmark */ = 1F369EFD1323113B004E7A99 /* PBXTextBookmark */; + 1F369F011323115B004E7A99 /* PBXTextBookmark */ = 1F369F011323115B004E7A99 /* PBXTextBookmark */; + 1F369F0413231163004E7A99 /* PBXTextBookmark */ = 1F369F0413231163004E7A99 /* PBXTextBookmark */; + 1F369F0B1323128E004E7A99 /* PBXTextBookmark */ = 1F369F0B1323128E004E7A99 /* PBXTextBookmark */; + 1F369F0C1323128E004E7A99 /* PBXTextBookmark */ = 1F369F0C1323128E004E7A99 /* PBXTextBookmark */; + 1F369F0D1323128E004E7A99 /* PBXTextBookmark */ = 1F369F0D1323128E004E7A99 /* PBXTextBookmark */; + 1F369F101323129A004E7A99 /* PBXTextBookmark */ = 1F369F101323129A004E7A99 /* PBXTextBookmark */; + 1F369F16132312C3004E7A99 /* PBXTextBookmark */ = 1F369F16132312C3004E7A99 /* PBXTextBookmark */; + 1F369F1F1323136F004E7A99 /* PBXTextBookmark */ = 1F369F1F1323136F004E7A99 /* PBXTextBookmark */; + 1F369F241323151F004E7A99 /* PBXTextBookmark */ = 1F369F241323151F004E7A99 /* PBXTextBookmark */; + 1F369F2913231563004E7A99 /* PBXTextBookmark */ = 1F369F2913231563004E7A99 /* PBXTextBookmark */; + 1F369F2D13231572004E7A99 /* PBXTextBookmark */ = 1F369F2D13231572004E7A99 /* PBXTextBookmark */; + 1F369F2E1323158B004E7A99 /* PBXTextBookmark */ = 1F369F2E1323158B004E7A99 /* PBXTextBookmark */; + 1F369F33132317A8004E7A99 /* PBXTextBookmark */ = 1F369F33132317A8004E7A99 /* PBXTextBookmark */; + 1F369F34132317A8004E7A99 /* PBXTextBookmark */ = 1F369F34132317A8004E7A99 /* PBXTextBookmark */; + 1F369F35132317A8004E7A99 /* PBXTextBookmark */ = 1F369F35132317A8004E7A99 /* PBXTextBookmark */; + 1F369F36132317A8004E7A99 /* PBXTextBookmark */ = 1F369F36132317A8004E7A99 /* PBXTextBookmark */; + 1F369F631323270D004E7A99 /* PBXTextBookmark */ = 1F369F631323270D004E7A99 /* PBXTextBookmark */; + 1F369F641323270D004E7A99 /* PBXTextBookmark */ = 1F369F641323270D004E7A99 /* PBXTextBookmark */; + 1F369F651323270D004E7A99 /* PBXTextBookmark */ = 1F369F651323270D004E7A99 /* PBXTextBookmark */; + 1F369F6C13232750004E7A99 /* PBXTextBookmark */ = 1F369F6C13232750004E7A99 /* PBXTextBookmark */; + 1F369F6D13232750004E7A99 /* PBXTextBookmark */ = 1F369F6D13232750004E7A99 /* PBXTextBookmark */; + 1F369F6E13232750004E7A99 /* PBXTextBookmark */ = 1F369F6E13232750004E7A99 /* PBXTextBookmark */; + 1F369F711323276C004E7A99 /* PBXTextBookmark */ = 1F369F711323276C004E7A99 /* PBXTextBookmark */; + 1F369F76132327A3004E7A99 /* PBXTextBookmark */ = 1F369F76132327A3004E7A99 /* PBXTextBookmark */; + 1F369F78132327B7004E7A99 /* PBXTextBookmark */ = 1F369F78132327B7004E7A99 /* PBXTextBookmark */; + 1F369F8913232BEE004E7A99 /* PBXTextBookmark */ = 1F369F8913232BEE004E7A99 /* PBXTextBookmark */; + 1F369F8C13232BF6004E7A99 /* PBXTextBookmark */ = 1F369F8C13232BF6004E7A99 /* PBXTextBookmark */; + 1F369F9013232C36004E7A99 /* PBXTextBookmark */ = 1F369F9013232C36004E7A99 /* PBXTextBookmark */; + 1F369F9213232C3B004E7A99 /* PBXTextBookmark */ = 1F369F9213232C3B004E7A99 /* PBXTextBookmark */; + 1F369F9713232C58004E7A99 /* PBXTextBookmark */ = 1F369F9713232C58004E7A99 /* PBXTextBookmark */; + 1F369F9813232C66004E7A99 /* PBXTextBookmark */ = 1F369F9813232C66004E7A99 /* PBXTextBookmark */; + 1F369FAB13233178004E7A99 /* PBXTextBookmark */ = 1F369FAB13233178004E7A99 /* PBXTextBookmark */; + 1F369FAE132331BB004E7A99 /* PBXTextBookmark */ = 1F369FAE132331BB004E7A99 /* PBXTextBookmark */; + 1F369FBB1323344E004E7A99 /* PBXTextBookmark */ = 1F369FBB1323344E004E7A99 /* PBXTextBookmark */; + 1F369FBE132334E1004E7A99 /* PBXTextBookmark */ = 1F369FBE132334E1004E7A99 /* PBXTextBookmark */; + 1F369FC313233530004E7A99 /* PBXTextBookmark */ = 1F369FC313233530004E7A99 /* PBXTextBookmark */; + 1F369FCA132335A2004E7A99 /* PBXTextBookmark */ = 1F369FCA132335A2004E7A99 /* PBXTextBookmark */; + 1F369FCD132335E1004E7A99 /* PBXTextBookmark */ = 1F369FCD132335E1004E7A99 /* PBXTextBookmark */; + 1F369FD2132336DF004E7A99 /* PBXTextBookmark */ = 1F369FD2132336DF004E7A99 /* PBXTextBookmark */; + 1F369FD313233721004E7A99 /* PBXTextBookmark */ = 1F369FD313233721004E7A99 /* PBXTextBookmark */; + 1F369FDA13233780004E7A99 /* PBXTextBookmark */ = 1F369FDA13233780004E7A99 /* PBXTextBookmark */; + 1F369FE1132338AC004E7A99 /* PBXTextBookmark */ = 1F369FE1132338AC004E7A99 /* PBXTextBookmark */; + 1F369FE3132338C0004E7A99 /* PBXTextBookmark */ = 1F369FE3132338C0004E7A99 /* PBXTextBookmark */; + 1F369FE61323395B004E7A99 /* PBXTextBookmark */ = 1F369FE61323395B004E7A99 /* PBXTextBookmark */; + 1F369FE71323395B004E7A99 /* PBXTextBookmark */ = 1F369FE71323395B004E7A99 /* PBXTextBookmark */; + 1F369FE81323395B004E7A99 /* PBXTextBookmark */ = 1F369FE81323395B004E7A99 /* PBXTextBookmark */; + 1F36A00A13233D92004E7A99 /* PBXTextBookmark */ = 1F36A00A13233D92004E7A99 /* PBXTextBookmark */; + 1F36A00B13233D92004E7A99 /* PBXTextBookmark */ = 1F36A00B13233D92004E7A99 /* PBXTextBookmark */; + 1F36A00C13233D92004E7A99 /* PBXTextBookmark */ = 1F36A00C13233D92004E7A99 /* PBXTextBookmark */; + 1F36A00F13233EE7004E7A99 /* PBXTextBookmark */ = 1F36A00F13233EE7004E7A99 /* PBXTextBookmark */; + 1F36A01013233EE7004E7A99 /* PBXTextBookmark */ = 1F36A01013233EE7004E7A99 /* PBXTextBookmark */; + 1F36A01113233EE7004E7A99 /* PBXTextBookmark */ = 1F36A01113233EE7004E7A99 /* PBXTextBookmark */; + 1F36A01713233F1E004E7A99 /* PBXTextBookmark */ = 1F36A01713233F1E004E7A99 /* PBXTextBookmark */; + 1F36A0201323417E004E7A99 /* PBXTextBookmark */ = 1F36A0201323417E004E7A99 /* PBXTextBookmark */; + 1F36A0211323417E004E7A99 /* PBXTextBookmark */ = 1F36A0211323417E004E7A99 /* PBXTextBookmark */; + 1F36A0221323417E004E7A99 /* PBXTextBookmark */ = 1F36A0221323417E004E7A99 /* PBXTextBookmark */; 1FBEBF151319F5C1006D5497 = 1FBEBF151319F5C1006D5497 /* PlistBookmark */; 1FBEC001131AA71C006D5497 = 1FBEC001131AA71C006D5497 /* PBXTextBookmark */; 1FBEC002131AA71C006D5497 = 1FBEC002131AA71C006D5497 /* PBXTextBookmark */; diff --git a/games/Pong/Pong.xcodeproj/project.pbxproj b/games/Pong/Pong.xcodeproj/project.pbxproj index de1410d..2e77be5 100755 --- a/games/Pong/Pong.xcodeproj/project.pbxproj +++ b/games/Pong/Pong.xcodeproj/project.pbxproj @@ -11,6 +11,10 @@ 1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; }; 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; }; 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; }; + 1F369FF813233C1E004E7A99 /* lost.wav in Resources */ = {isa = PBXBuildFile; fileRef = 1F369FF513233C1E004E7A99 /* lost.wav */; }; + 1F369FF913233C1E004E7A99 /* ping.wav in Resources */ = {isa = PBXBuildFile; fileRef = 1F369FF613233C1E004E7A99 /* ping.wav */; }; + 1F369FFA13233C1E004E7A99 /* pong.wav in Resources */ = {isa = PBXBuildFile; fileRef = 1F369FF713233C1E004E7A99 /* pong.wav */; }; + 1F36A00713233CCC004E7A99 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1F36A00613233CCC004E7A99 /* AVFoundation.framework */; }; 1FBEBF481319FC56006D5497 /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1FBEBF471319FC56006D5497 /* CFNetwork.framework */; }; 1FBEBF4D1319FCDE006D5497 /* AsyncSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = 1FBEBF4C1319FCDE006D5497 /* AsyncSocket.m */; }; 1FBEBFEF131A97F8006D5497 /* GGSNetwork.m in Sources */ = {isa = PBXBuildFile; fileRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; }; @@ -26,6 +30,10 @@ 1D3623250D0F684500981E51 /* PongAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PongAppDelegate.m; sourceTree = ""; }; 1D6058910D05DD3D006BFB54 /* Pong.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Pong.app; sourceTree = BUILT_PRODUCTS_DIR; }; 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; + 1F369FF513233C1E004E7A99 /* lost.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = lost.wav; sourceTree = ""; }; + 1F369FF613233C1E004E7A99 /* ping.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = ping.wav; sourceTree = ""; }; + 1F369FF713233C1E004E7A99 /* pong.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = pong.wav; sourceTree = ""; }; + 1F36A00613233CCC004E7A99 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; 1FBEBF471319FC56006D5497 /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = System/Library/Frameworks/CFNetwork.framework; sourceTree = SDKROOT; }; 1FBEBF4B1319FCDE006D5497 /* AsyncSocket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AsyncSocket.h; sourceTree = ""; }; 1FBEBF4C1319FCDE006D5497 /* AsyncSocket.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AsyncSocket.m; sourceTree = ""; }; @@ -51,6 +59,7 @@ 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */, 288765A50DF7441C002DB57D /* CoreGraphics.framework in Frameworks */, 1FBEBF481319FC56006D5497 /* CFNetwork.framework in Frameworks */, + 1F36A00713233CCC004E7A99 /* AVFoundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -115,6 +124,9 @@ children = ( 2899E5210DE3E06400AC0155 /* PongViewController.xib */, 28AD733E0D9D9553002E5188 /* MainWindow.xib */, + 1F369FF513233C1E004E7A99 /* lost.wav */, + 1F369FF613233C1E004E7A99 /* ping.wav */, + 1F369FF713233C1E004E7A99 /* pong.wav */, 8D1107310486CEB800E47090 /* Pong-Info.plist */, ); name = Resources; @@ -127,6 +139,7 @@ 1D30AB110D05D00D00671497 /* Foundation.framework */, 288765A40DF7441C002DB57D /* CoreGraphics.framework */, 1FBEBF471319FC56006D5497 /* CFNetwork.framework */, + 1F36A00613233CCC004E7A99 /* AVFoundation.framework */, ); name = Frameworks; sourceTree = ""; @@ -182,6 +195,9 @@ files = ( 28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */, 2899E5220DE3E06400AC0155 /* PongViewController.xib in Resources */, + 1F369FF813233C1E004E7A99 /* lost.wav in Resources */, + 1F369FF913233C1E004E7A99 /* ping.wav in Resources */, + 1F369FFA13233C1E004E7A99 /* pong.wav in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/games/Pong/lost.wav b/games/Pong/lost.wav new file mode 100644 index 0000000000000000000000000000000000000000..0ca32c66db29064a13961bb692524c27cb049cf8 GIT binary patch literal 34278 zcmYJb1#}c?6E)mA?vshT3kkv9-CY;=#bL3<-5nNphh=eD+?@oH5ON2v&jCo7KRS1Hhu)5zwknN*U1VdEFw8={* zBk&rUM-ZN8|96I$AuP}HG#nfp|DC!2d;R}==D*kccjf>82_CNh_Y8vkzgPbE9{;_X zh4X)h8h+oud}ls^H*mkWmuz=zx9XAqo8V57zR{l8*m!$<>%={YtCG$n`8SGd)Ur`( zqq?L=NzIeKB?c!hNH`t;Fz!k0nV99#Nl|GLW5aVpn}w_ndKi%DSE9?%K2Wbxwvgvb z=7})DUOWbU!VPB}-V^SDPTc<9a>z8*(7T~!U2;v^s(uv<$}W_Y6*Vc`n@{Dg%aLYZ z&zhJSlwtdko&F^)^Lza_&9?zx&wSxOFaPZPbmUXVPt3>kkNBMGjo0BbGwwT?LZMnXcv(@m{r&<@cCfoS8 z32CEhV`%-T^@`TMt#7w#*6M6atmU8<+nV2O_Mz$fCJ$0iHlCakk^D7jQlc?_LfpF; zpXecxo5Ih9-U_}Fc+h{IZ;FpWy;B(?|69^R^oksaS0Kwdf99oko;%uUu)VMxHmx=+ zXqZ>Gq2_4Sn+kVX*U}@!-ok|imb~q`$vM@(u4S#soSZTK=d2%F((k2NzIXh70nj}D zwb9qiFZ;fX|I+SD+?V7poxe=`a`H>nmyTa=eNFuK?AxU8+O*uX`{^fs9Qt`a<4vY9 zD?WQoPId0+{DOi-MSdk&rANybRZgfLQ9Gr6i~f$$V(x4^?LggAy&vgBZWEG&C6M!k z*TuzBToJ8mqiOHc&Nsw2 zVydv{?8BYM+{NA)W(Ic=$;Cuus&IgKhIEm9sdAQjq_&k#=$GZcC$LR$amf5IPx#!( z%&6p;rLm9V3gVdrQIepMr%_h&g_H@6m8myVTQ_;!B)aMPraziWnze2=s@b?^BbxPS z7TT=5>A9v|o0c}2+9W@fOB`MmJ_Q``9jY{g5*gQcJ|2=knOrz+xkv$?_g~f)h z3;rC41vK{Sp&P9otZu9Hlh;V@iT)JyAXHct|B^jIukp@tPjXJS&$6yFA2)u|v-KV8 zcGXl>^{sqg-mNUVWN~psQBlFA{55&ga>wS3&R+8Ca8`Pz3NrKk&sIMl{^AJQ-+m1KS@LsZMw3iu=9{dGzYak)U(9`yXUtD1Twat} z+_v<7S?7wJ%GK2^Yh86|4fhNeOjj%qZCMVtE7aSAUdSHiucGhppJahBNBl$jOnywc zT-{Ae>R$NH^d|z32ZeV?#gsRgNJsoANIQ+KD1OO>SFY23GQMoRybJIR{lQH>5Ky-KV|sE@CW zD~x>{vm<&y6dHLYyj|GqkdDFE1CfA1etUFJwH0cM(jjk<7Kon<&yld^=cJ$Ge=hrZ?B~ayf{alacQPU~Ph>`Bz08{Y zD?Ga@`(e(h+DEZIikIBlEt|`+~{!H1JvN~lNJeH(n3bz!T$^VeY=C;q>lVivp4Tw(qWy?B|H8@M1Rgw8F^B-9EGQVZo zGefgxWT-Ni!bE7@X&zv_W{fHv1>u80p0=W-d}Co)Gse=Tp1Fw%k%< z8fDDWPj7J7ov7_vLsdPm++8uVygz79=aSyVQ;N0~J}PkMcg#PXhv%)xb>{5I3D5bQ zy*|5BwmjSVtMFIOuZmx;Uq0ErvNvXb&5qC6oI~ZT%@yTc%^R4H7JM!^QnE9ixFERCq*Sk8=_Ce^oT8s zofT({8yEjAJ}6;&!j**F1TI0D7?v2AC`q&=yieGX&^y5yeECHo7Zy$YXX52Q(9H*DQ_APmRM2&V~#1BkTNXYpb7D9k1L~vA%q3+2PWAC56SZ z;vq#R3hf0W3%=&}%FoREJx`wZGIv#O-`tQ~B-fUs&tY<;xlMDY=bp%I$nBJOE>D}k zCtp`^rC?AYU3jl(4ItUHG_Xul9#9ci*}ZCh^`)As+Q#*}8ua?{#(dKxi^F=@-qq=K zJ@zby%rvss`3a~R|Cbmi;D!6dG1AMjIK>&IRJ~C1MH{A@=6lvJ!=DQ93yKSF910)DhTn*o5g8oyC2D%KBYI7YH)e9|r`W)_ad8*ozQtMNL{P_?cqG0q?nT_LxPfs* z+_l&)v6(T$W4=Z=jXoGv5t$e{E#h$agRpO*Ss|Ih?}F|GZVMRgAME!_x6vnD`$FAK z^;XeBenRRM_Z1x#R1>NAS~QzaqHA}x@a6@kn0QTFVwBB zom$hkx_ech$`KXw%a4@3DP>D~m;6=iD4JB1Svb6~py1DfaKLp>{*e5bd~v=#&y;7& zL-T|3`{b|6f1NKam{jn!pjqL=!cIlsi{=*xm*kZkDVnTL%o(-cdQb+X;;*y&30Qky#%Fpt_vX7E>;)_CoU;*(RYlU9qCEO;4qW<(U?rp9>=L7q2 z8*jO5o^47ovictlck55p?X2BZv%mUW)r-o)3T;Kd@&jcRr5#HzmH3q$C=Mz9yQpW8 zv+(c2*@evtWrdc4@`B8Q`~pJ(Sr}b7uJA-*Sz(K!!$o}2;$nO8x{`p>2Y_X0c`?-Z z=E~ozeybi-GrV?c-OBn44HWm<)~%>K!;VV5I*Dzb?MXI;l^A=AwF{%1`-5K0#)atQK>^RTSaHZHku`zb@94 z%q__&=~Mc?w0~Ji+1m2(ij0bVmBXrHs=4a&n(W$7b!qj5Q0u z|9$~cf%?F|gC+;7Lhgt33oQtp999(8FZ^D(IATJ?rHIl9|HzJ!VTrfcI9trcl1 zR1cKPK#BCy1CmtnC*epzC9xPMu!Be}|Aw8w@YEIWD38$n*168n#~y6cTfUp`nob*! z8~)OtY`9(jsjj|OTid5*Yjt{6aMkk4l8Sy6@5+0YXOvAXBg$@;PAd&9tuA?5@>j`f zKyP}Mk8#_O`4^`R(%N74Ir0S7KFntL9ZF)i`Uu*IuhT zP`|NZjedh+m+^+_gV}6JuuTL+oz8*oJ03r39bL=x=N|AnbP@Iq4` zqq5iXQU$FPseLs5TB#4JtJQt+J>fUkzi~iaz&TK;s-QKHt$RY`p-V!GLtBOI4$BHt zg%1p09DXwVcKF-yci~UNAA}zaUl!goTppeowmGbMSa#^5P$YCy2pY0DxG<=F(80j+ zfbf6`{=57h`ljnDeC%42#-c7(y;fdQER}bc38XK?^F&(VV{#1P#m=JLkp}KK+lOJP zf4$2*o!nwqk>jELxNWs{wq?3`ylJ{|v0csx4}O# zAU$A4pe=B95FNBIxG1<|$nlW6kfx#YL$8GX40VMn!otGh!lJ@_!?3XO(5Io>Lq~+l zLSKa}2$6?e4sIU&G^i!yXJFvUfGqzQ|KI)o@h#ISbd7xmXeVo?tLLevDMu+f$wOsM z$y@O*QFkFj-XkXCfmkN8jqk|`+3)mWYPz?TNA9*d^BiyN|JrU@uUnp)KbQ)PoFT+8 zM8CD+b-lEHblr_wS?#i#>gq|=xp?Zt{o8fQc zG1GqYHp^b?3EMyR?+&vw!adrv*PBfRGNakEToLb&4#76!kBD-T6efzgiN{N3OBcvi z$QLSpSB_A%QwMA8n)lj0KK*q9-v_=E{W!nl{?P$<0~!aO3)BTI3(5(K4_*}fIM@;# z5z-g1+YoX%r#$m2yJqe7a5;340GcL(Z7Ww%3F$m zeeJp8KH}Q#-00YB-(forxV|^no8+br#?^-VdcI*$!^L_*{mi=D+QGFyYlhWSRXR7xI^^tZljkvM= zCge7ngSl}XnJnlo94Zx)MAlp0SfNuom0wlI)l)Tb+G6cNpANbT-D+Qr-&wy1 z{|o-=fOP@20bK)+29^cJ1x*S1E9h-deGnU@4i1486f6vO24w~P6SO|4XOKAPY2e~O zUEq^|ApvFnv;6D)rut?2w)8!sv-x!K*`fWW!8NVblT>S!XBD^QPi1eVPbK%nr$rlu zQw1GJ6;X@5L=Pi>@I$y}Y!E}zHgBD$&|T;%c2+wmyVM?Q>uX(PIdA@D(wK%D&ls%w zzWVD8x`xg5bls{tu6AE-Ozo?hSvCGOU#fRk53UZWwpRVDdQx?{>S)!$s?$~1s$NzV zRUy?W)zhlaS65dzt=U>rQ`5Wler;mimAcsayY+n=N*cE68yQLrr;MXbF=h*NN>{Br zZ7b}v9kZOXTuaTCI7bnWI(u{O!|Km#G`#o8{Zj?_a-Y|IPj-z_v>Ro(E6?ae>1F{|G!7 zcqQ;|;G@7hftLf11g;Dm8kiF333vrDXdY1IzsEnx|AXHczf#{RzQwwJx+gxNKC84p zG$ERq>dUGUrCixsF-E>Zwq1H$az=bcbVRsS@CP}H=!nN*64c4pa6j2k%yarNud99Np~mZ0D@G7OiEd`LfAm>}$MaP#9L}4Gps!>gre2BjB~#)|J=pukBWg z)qbowP&1{bOHD+LyoRfGR=cZFcobdJqh@x^(VDaxN$r5zlePNVUUk>&RP~$dUG*y( zn1=287{fEeB%{#u)U?E$VsTkMT94Z1+ebRuJL6rk?l4b`w;9!*9?8sLmvdYB!^lbW z5_SW>NSr5+33drril&HrNus5+G);CwK3Ng2EK(j+byC-;w`sz(kF;HV-uZOVJ<&Dt zJ>qNi9p-n*&*In8f3g2R{(1g*Kx{x;$jPw*69dKt3<&5D5FLO8_o z^K&ryZ@l+S@Fwb1~e%Ebhu|w+UU|(f>X5}sYAa7~YDAOBblJTs; z-*8kProY|Lt)aAjV|`M6e%-;kp>=+BRkcrQ57aKJod7)16IS2aQML1GH`ZRO{aK6E zwXR!I_q0w_|6Bcodf$fC4f=*D`cnM_L%m_GQD?es8gAyzcPw+P2{xPUnSBprY+qNZ zJJ6%>iYN&!WmK$!)4`lwhRQJncjHyW59k9<0=A>Xu@Xx1R=P#jSI)^FDyArfs++2= z>Rk0qjajo;Yt&BnN%Lu=JEb$~dioxQ4EFUKYnXGpBh9X{ zkFnje3awKu@63tj({iwTFccE@? z-Hy5~b$jZLLWX{-tE`jOx2>O3f33czKA~YlLsmm0{QH7-cLlPBK|do6S*{ zx0YGfAlnz)7JCne!kO#5;o9n+?CI}qO2yGZjEt3VUalTo!6)f))YdUJLfCKy8=b4XEH%50tm#_2j zZSOnRcaQH4-&ejFz6HL8zD2(2@c6p#PN@A3z7pRo-BI089jSZZGua3CIjwD}eW&TG z$x`=Ie^Rwlol{Db(-kk|8t4PgORFT|lHuZQqFcgrft3`J{zN?99_x=zL6-0bxZCUp zMo%l~R@5x-5zjX_?(XK=?o4-tITqUA+G1>5t!B%3%MWv3^G8#EQ@(K~xP{Y(PKE~k z5q&?sRR6W%V8i5wRt?GqOMOxOhx(WG59=S*zpnpUUsCU>4{hiOEOMbCuOV1JQGZd- z>4zEa8nnjMMu%~lslqfJIChmqX}xLfZL7DPw)b@)&UeoBuD(&)b6q3UPSM`cGTJUan|)sS7=1#a&VSc!0t~O~?(6Qrx}rOx+o+qa>!u6R8GN4l ztoP~eLu>!hPST><>zbaLT=hIPrCP0GluMO$icx@VxO}ZFPZ}>>B6%ieL@h=0g{K7{ zNh6^k8smMjIp`kb2LFqr*l>0bvz~rH>Alh3DW2tkBkF(Oz(Q(X<+vnQyt;4ME zEPX6#=Aq_V(+ZQ1>9KK~QDA&#SZGK#SoF{JJN1+F9rS^ETyJhDZzu*V3md8%s0O({ zLEm4$SbtuhsaF~X8ul5=3@OG9#xi3U(@m4Fd7GKAY_QEn9!P0XU(xv%z`N zHO8&;6nUMQCl&=dTrB2;^nI^|J?La|Zq zl8u*rl172=$`i+m7l|GSy@JMq+2k?eEpEm9v0msO$ay}46L1~bMa(VQOf{iacwc#x zo+<8sU24~2XO5$T<8OPY{g6#z+h_H)p0gxdzM7|+QP8+yCerlCxZK#>$QV8wju{pk zdK*#=z6Q)d=}mgG-l3=UV(`Q*4WkXK43`YK2D!0^agXtb(bqJ`^u`ouUTv;454OCq zw6xx~Hn%;tb+c#MXE|`^IcIN|1v-VH9Zt7{;X!>Z9 znSV3iGNYDBz_@YN!&ZT9Iq2CUyWPIlA$Fc}ws57n7J#Zf_bl*6QF+t}dNdQnma~_* znS4A_i(Eh_Vt)8Hd^M3m=88E_E7^bL`uaV2;`(!%VL8(l-O=1;K7k?BbiFOK$1+4|! z$PB`d7>}RD%Frlu25^LxYr}10e=*U_N;;j2qc(Y~JcB*A+#&A0F5I=o>2fT0@b+zX zU;9N{J6nl$g*C+b$+E%{YbiIMG*2+cnT@7*ro*O1rh%rWfVaTJ7+ppy@T=R1ntV;k zrf#Mgrp>0irV^71SbUxNlUZ&VV!3AVS_WG0S=E4VnQfT;i@mGkt)sj1GjzIju0P#s z&t1<@FXcTCIV@&gFe}+6TmyHGAAv~Fr!Y?lz~A9>2o?E|93apOHVJ)1mqks)PsME| zF9GHI(n#5U86uwmj2xp_u1Hq|DQ7GHR+^M4s!6KTs`n}ja7Q!sa6oandYgK``hfZ% zeBA&%`_MvLAFlZ1N&^<*FN6k);Jp5%y-ROfjv3{-YRf% zCQ}WlS2>(5Cf=lgXM32ZnRl5Vn#;^OaC=)U-z;(~?DkmQ)vA4d*apj1|kqp?k30) zOcR=fi$zY+Qn6V)Ly{}$D}4y8yjE5uYa!n&FOsJymMR`8XvpdL$}`GzrAHa0>Yy5@ zTB_Qv`b%|Ibp;T;tU3jJuu(NnH58nJR%KMaQSMcaQ^qJ86qgi}6~T&6^5yaf`A69- z86rC+O_9Er^pX4$j}~W(MuFjpN8uZ= zO0*k#4iO>K`E;%oOvyy-Vy2QFOQ!)Zzw~wh?d$6K>K^T`b1id8T$i2Qp=;jZXyPcb z@3nWaGq#7eWwtgp-1ftI8aSknH4c2U#gYjc_SkaKa^7;*a>jDSa>w%A^4(HxVFBHa z)+yGV*5_8eH5?HB%T{cQu>WpT( z82T~Yo2g|svi{stZU}FN`9mOjAMJ(ZV3TntzLLPmog^vPCg26Dg$9_OWr*5{FN#UY zbjf>3pmc%svs5V?BRemvkVOH59FTvKyX6szK8l%u_(jDlMV6vWVN{qEE`?iRRn#hq z72g$)6=xKi6;l=M6gq`o{zSe*K1i;WXUPu8`a>SymQIukrFSJmB_{DcaisW(sJAFj zI8j(Gm?5Ym$Aj+mC!XLj_(6<9C!$}G=Eyl-%CF%J>=ZVO>Cb$iJJTO0}TDdHQMEHUUc?wS{&ycLme{5d;4a4cbHXV+s@mT0*{2*cx#FEo%I?h*$(Sc z>muty>+f)0YTal(U_EF3*P3B9TUE9ewn?^KwpTW*Ede;_ioMR>%(2?>#S!9M?EL18 zb?tB&T|?b3+{vEP9<6t`S4?fE6!d;Ngt^JIXVclKoQ>PXYmlo*2lNHn56i~J;3fDt zqJkJr{v!Jco(Y-?PYA`Lg@AQ)@jg;qf*O!8d$3;9XN;bHP*IWJ3-9hXgz#mTCrm!)H+ zYT%1MBvFzN;(20)_?oDPs6e<#$P0D}bb{k#7;tkCu@5Kl6<7oM8=8i6LLTsO;4=ca zgTT;x7#VYb_My*!5>*cO-?RT|uRXLABX7i3mjz1mk93J}z`$79S zdvid%()QYR(YC`j4|27St)s22E!EZ-aBXSpY#RX2ErM$oZ69rwHkrMdeG>fKdpm1y z3F`XL!8v+34>+rw&0V`(Rj#h?^KQ&D*OTYz=6&dmqb^eZ^btCkImX1Y|FEsOcibR8 zmmiPRATv+{D4_wHhu7nihp1yPc^7%2+)qx)3T4k_ zf63;_y2>=NO6hg!VreU>Q*u`_7jXV5-XcyC=Ze;gLPc+cW5Fly5(EftldZ`&L@(kq zJ^=rSb-|vY&CuIOJaUbX;LmbV+yyq4y~(s--q8K%0%|_Rc#nFUdDA`fJu1&V_XM{9 za(j*|#FY!U40dXqxsFqgIgU0CiK84C;D~*xeWbmUJqbE+A@I1(W`t$3nQg3%wCn7# z_V)Hs_GN(aBYTCNaI|tvcN}wMIz-NX&YjLQr>|?g>!yo`jK1#1J>xv@Jkh`%4(}8y zlj=-Aqf>#Uo3ekiO}PhLYyJt}7I}^|MIWN6*kvpP-;WE4Wke-0kbFXh3N{F81)YRv zgwAV z*uBpE-5u;%=1KR&c{h8jy?v?skk?yi2R)N1U`7Ck^y1!go%zRnDsmGEM~}diXf0;K z#^RsxCd4TMB`1>~$VkB&L9QTKxKWrTj1n zYn{UZb%E31`0BXhIO*8vSPXcM0#@(q=mAGB$6&`8$1LEBtxyYhz-1U6QfCwANauRz z9cQsq;p*;M1@CBcwRSIczjBMf#b5E*fJ07uZQdc&-;@$QO+MX=xx<9A2Uvnz%IUfB zd=}pwxr;=jhfp4!hh<@%@C!IW%pyJ!QREu3fNU(-1kNu~xLEi^NQk-vr+gM+;&$SN z;%nkOu|Se4`AxD(avqek0%mw>m`Jpd_L7bOCY}nJKUF$SIz~EN+C$n7uJ}k1X}RR1 zta;piQt3-Xhn#=E#(TqO619l;uyolG3_nf@JSNe`(>l$?6%o#hSlW_osd zdU;s)YxgE#afLhAbqyR!Z{QY-^C#fG%eeqBZ0}5P`a4Nrb~E5w>!@}#K%3}>X^_+z z3UTS-oZwsrmGKxRZ#+zlhq>0d?zt*m!S12%eeQI()H4)(UXdr!yVU#H>rc(2-cu3u z8oGdP%UooH>>@TF^7{!F#vg!tjekdeA??shFzr|Xh^OLz;by!KaglHnL&yuHi|i`c zE65i_2&W3K3#)~3q6wnIqVJIDO~m8G+r{?*ceglL(hA(fY{?qQVL<;ju*4h52gu>~ zuwF_Yz%$1ryW#3&NpDGGiBe(~e-~dBuN4mx$BAvC*T5pfL;<2AQ01{gEilP8$Zi99 zl>4@a;bHSCI=Q?o3>@slL&zUKVi1`OxAP!Ug zDO4c!-MbOIpwsi%v((cDQ2zkvjB_WsIaj9ZhHIm1imRh5#zneJ&OGNU=RM~c=U)(k ztNcR@^Q@7cj;F<2Z?5P2~ z7kD3eaj3Afl$q*6AE#~f0OoH-!p>o{*=F2XP5_@dn{R=fMhJ8&xa~-&*;1?peh507 z4)8B6CQ`{&w{u0-d)3f{7 z=4>gmg=x-|(fjBwv=yp)0u@YUc@KI=cy-`b&Uk+JH1=Sg4Db+tx`((E+(LJy>jUKc zKG#y$M9AB=t|qQHz||k7R9aZRt^il8t1-l70I1?0uC1<1t{1K{7wZal_i@j2pLV}> zyWFv!(Vjh?FCGG-yV3i~OH#e415_cENH3+|(f-V0<}DM(u3>Z8_S^}MhH2AtJ``Dt z<6xp3u}!PqZ`l= z^gS{SA;G5%=Dpl8K;6I|V!N>><~%cy5i*bHxpW*|Or4^}QUO%H_Z)CcBQFgO;xJ@n z8*nd`fY)*NTK8}6j_w$@%R!Ox60E2-tUO#tB3Y9@lFHvC<0a)Nu8idsYrSbbT|w>h&cnZy?*RT z*2NCuu5(g;JpYpSMdl-4KtETaU(qmZ9`+W~;uG;3(D!sCwi4f9VltRKNT!hzK^MVl z!F@rwz(?2#*!_g?Jz%dEH4+UJEfQ@MofZ8nN)wfUqv1pXu}bU*=!U=%29LC2v6vIt zMCHIruVLjOl#NWge@ZZ1i zt&r(e*b%HNxbUNB8?+SJiKHTV{1!fi&*L_8&A3wbAlsF7KrK&V{FtAR@BL^o{hiuP z4FjGj_TKXT>Fov{rq1&cu%GMc?TH3ut#yBM-*F#xZvam--aXLW+1=8e;*NzmOPD(t zj#$9CnY)v_FT`iAd$s$J`WIs?Z6sERG3KSXl??H-Wd0U`w4Nt*C);cnqvVGm&_V4fy8Czub~DHRlx7s=Ux zx`TL3tRh+vHvBF=6A#5Rv2Bp;b?8Cp=q<=8qz~fZ&+|iglE2N(;C#6s>}IwVYX=WJ zi-}>X=&STpI+?am|56*MzQ8s$(3NcWP6Ui(-dfKG&jrsW$kkpj&+_%49<#f^odIfl z&wbN<#eD|&<22O6dG`fC`l0(dXl0(e0q|CN;ys-_<2@@O%bx<~JnX;@@UHY;@@Bw9 zss%L*7(E+2OHX!>xrO+PO zE-VA{#m4~G6ykowC}JP+1v>s#kb&pObP^LJ3r2!#zYa(_VTY`xaF}qOa635o$HH&I zVqv|I7LpaDNBxWhU8{l#uzv6=DI=mOzP5_)dHhI8nXk*yd zJqFn0$P1|4WWJU=53W6g%VUqSqu4+;pSi$HXBsgc`Xx*_M$w5hMSX^BTnyPCO)=hl z?^Evy?+U1ZF5U#M+UxezLloY79(t~MPC+*B02bNoS>xFVb+N^>8_+%uUgb9I7^HiO z!I6{RKyNE=KkpoY;kNfsFT#6)NnvbM>)K?-WR|WJG@K0lf8YxlO%gXp&A5U-sACDJSLC9qld3X z$Z!gnMdA(chI^Yr2R6j}JJil0?{)An~q$`wgdEEz#kiS;dk<%c{wr={8=WVLIfrDPTHf;dFXA=(jQ zaPPP9Rd{b)3->Xc$L3jvUE-V~?<7 z*%)B{*UTPJ-9`*g{{r^kKo0}{m(vx1(Rpe;H63^;f%2m$Z>2ZO`^Fb<|MJCQxc{$RyiKkx;wIh^m#ui@Xo-*UD>Rw9pKPrfla z3wo(Sm>2ZJHb4aG!SVFLSKycMT%5&|h~dybo+UmK4TOM9BKv_RZh}g92sbU=aAFmVmpD00BRfN4_Snkq5{{fPGtV zlOEz1@rc+@Oa&hwNHl=z9|EmyjuW7^XR%pWD#oL)(QRmdREcIHhmlc8AX3a<;-`S$ zvB8vS9oLJ~arwZoOW97WFSz_i%vNR;lgbcG38=t+@O=Hid6Kjq(7Ht(r&d!_0l&6X zJf)#X%IU2IhnN9-zHcES4?v;sfJ3?qUmroHe*hWB0Dld$NfFWPe^EFF>`*{>2@R-Ye^7*F zFo!=y-UBSN$P&^>dPo%VS`DlcDhLsT!#NasB%MGd5CG~fa8AW!Ce+Ve@+4^NpX6A0 zm&T-qWZ+$26K9Ck#02m;8p4Esz|Y`+Ko$hyc2K0l*hDM^ChPCO^Nc`4(HfXAEkxSG zUjx7A_wyt8Fy0I?SPK~zz}2z$*d6RhHjzbO@_wCJ&5VX9$e0>%A(x<|p9&n21l8aG zC;k=~`vmaz5~zuh&=IuIpQUPNHL%zqu)pk@rYBV*IT2AeR7~Y~j zLJwsJ&X1+L(G%g_&w=KY&;%393}BXk?tWpc&{qv$|735#1VO=d0j|8tmBW2hL%=J) z;we56nT{Ms(hw3n#ccEx`UCdu65!vv4SN86t_*JhY_tu(hNs~cTun45h5;k(ByIvH z6@o5E$aru@eIORI0ng3k5s1fC@-|F1pF>nWknhRQfcG2lG>;%oe?!N19JqcHxrCeq znco%a$&bXyIwFU721>I9^u8AnM~H}OsDQJ;K!fo_oP&Lr8{iCvfCgC5SHPBI&}h^K zwYvp4REJdYxA+w>JM-a7xSPO51Gpg0$i9cZYcAA+4{HPz&N3?@4lNlic%p2mhm-${ z#2~sc9SJqzpsJ`eV5i%_B}V|+Er9Q0$nWW}Cc&Bp>vw84wFs(aJ!Jh~z+-SmD*>LZhjz}Q} z5HlfTj}mu?H!!<5Ks02)B#C4*n86GrhmjM>8L;L8$1H@k6e2VqzMo8vBZmTubs(FQ z5rDps^b*y8|10o3hlzE>B%(KwN~j4p{tGemtoJb{n$*b6Q+WR&O>wu zIu=bp-N;LDaN}Wm>4hHVFig~1@&upDUFKGBePK>-XTPzR;a@%i>OsU-fij$diWtvy zWI~`DuA#p}ERNG#!7GlX`v8YTf>x8XmoiWlz$Z)dfHt+tGvQY4kGa^Dfi>!kp3!{wId%1v;>qxx{>A>KGB*3_iyy;K*+* z&Bk!Uxi#D^t_b+3GkEB;d^(SVu1$o0&nv`;gg|$*0zD1N>_!8z9^kwWU=OikaHo;r zPiKHbJ&V7=3!o}gL@YR^;V|=D3k-e*;_(sY6NL~F8%&)AFz@vtgJ9<pr z4nweC=uMcd4Trk~T+p*0Mt(F(w9}D{fE9uP;(Hry|sIvyBgCJnPflvvXVFL1uDP=gg+od}@ zncWF}*bmsr4g=O)$erUp!~KWR;7m8cr!VFu@Gtot*^9h}J7QF5N0_`F1piTj5?DOe zANvCs`97A1xu8#Lg%8B%gI~G?NM+!9oWuRWJ$4`l5#zwUt|fL6$AQ^z5f4E-K0q(= z6R^&PRX}8c=4KE-fXUv#wRH}eophwda!1vFkm(%O$o%AtKg8QHaKj|vk33?F3G+}x(<6zEq z5Pr{FrkL?EzW=L-CGa^Ov8BLEQSjO3!_4Y6SI4RN_Rygn1chjTiBL!A6pkQIAr=bQ zhns+|L$AYhr~%btEwGW0jfX)iGBGnI!DFFM9RoOR!_VOlVCSU>Ceu9VMg-9q@azRu zG9L1K5wR4QYZEyAoe-ZxaO@-Yz;`={^^pII0sq<1cMl`_5G{#DL@=-s2X43s-tPhE z@-}=SJ{f8-4p+c_RSs0;N$gMTH>@q(SLZ^r&|Bzs$d?YN7Bv8)9)?)-M1sJte&WwT zzc!4I=Mg?1T3!2=gTC3u04eBmys z7ElepK^(R-CzyxKC#DM2!3QGIkDbqM0j~VOR)SZJhEKMDI{^0|6hXh1%n#?+^Vj&F z;F+S3?l37jhCG7(TOpbV&S^1BNS~s=V0ICLwStUX0=?=j>^)Y2vEXEr@GcOMx%g(# zj;qjBe1dGQf!>-2SEVDufxDW4=jjN(vlr0=CQXCj7yx$@^dP#!b8X>TBO;Orf%`(m zz(*#$9RC6DaTmV~-fT5K2Okdap9p;diE2b71%&M#10=MZ4*Gh)oG#ode91P5%JgGhyY!Go^GnTywx{ zP&`7iwbQ7D=E9fUsa2yN8+ChaZ#`ZuL^$PB4 zXuxpX2X6$~I~bn=+PVQh3>keBxa%$8T8LKxgIRD7uow?>KM}0|HXfyby^tUX9%pbn z#GoE(;TQfD^yfar;S9d}f038~d*v;lDwIId)!0wy<e#ZevoZaz5!?d<(u8KZaif=X)1?&~xYrJ^1UWc0?r?yz|*eeP6Dg`f`}+#E--{&%pZlE%7*_PDG+Ik{080jN#qGqfVe@? zTR|r~2R!5{^d&Ht1#~?ExT_B~9khKn%)W17A7N*+7V}~xuK8bN+TcAQHe>Lqz&VQ{ z-#0>pc0!B}K?NOxU6>=V4#4BR_%4XTI(#L#k{bJDwu7Iz&eAQ^1-}l1^NZO4R;Q#_@92nqXM)ZI-?t~x9~gCA1YmhH1OYmw|4RK z`2KuTUIlwRdE6_gl&zqgL%H_A+Y+di680l>foC8tD_;ym!)Er`Vj<}0vN6~x#3e~LN} z_!{r_jXx(*iYhfjm9$2!7^ybqYgU9|yRjmQ6O2a|`MLi}Z_ws?`rxXWO8eE}`kQy*OCl<^0Aw=#j>DN-eh>Zp{0sO8_y^)l-z3_b zvJ%$D{~bKiyZ$}>doiNedU6}dGZBn7yrT*4tphUx$r;c4ds)@Hg_ApppGpV!Y1DZ` zP^?fmQr52^*P>iNwbEVlTob?~9QRS&m4nhApl|T8Gl;c^%1$BYf%ix67J8bA-YC3$ zW$*KJ1<%oITfypn99@UE(Xf)9JgmiCAZE9a>r>q0+#k>x>S)+hqib6jblmid{&;qs z>q*YgxjT+e+6zuw8QN8&`|H``XMXMi;9HSgRo~s3>VE+1 zI}>nLU%}6#u;efIbDjXYlr22H$m^eSWV<{+dj2N2SD+si3CmOQif6gj@C9nAR!(2m zKIc;5e(&6I@^Zbx8?H{S{;p&){W`qn&*+#3_f?TR+lJX13O18jgIta)-sN|cJaYw2 zdjxy(fKXxol6clvxC*lpZXk&46U3;(&)0e86;^Ztcuyg!3&;NnSIpd^%K4GKZ1c;Y z_mt}Q85uo>EY^l^d)2RmpNBrpd3qrmT=QL@knOsmuoYYdUH4e6-N`!nB-~<{6NLYL z;ysUsEhpxN;=4kqNS^oJ1(_Y3|18gFPk-`iL(l8v7nkP&*c@|jr%#dQo<{bK!;N*N zbI}Ar@iLsNj=yf=4kd>~ zk<$~wB-Op#o$lV_KJC8de#liU0mMc_xbi;LU<#|CyE(px;8M}s7}qt-JC!cmKJOLp z6K`?ODV){aWU_q*F8>CFP!Ve2=B}=EP9}iOTKec`(DiJ(xuwvQhV*p1`}OCllO$#_ z6%Vim-Pwt@{m8h8W4gsE-vh>DzZ|aOeF|bZ+&<<0L-4zYR^0%Ni@f`=-+sUE$X8#( z!I_|)z_lMyei3Nqn|_t~w&&o=b=PV1bRD^F0xK$!99a!lfXj_}Bqa)G$qz}naZ{7yIA*jxCqV*Cc%V`l3oRP9?-KaJ}M zCNY;ExCb(;UBIZNyRrLCG_IDrDsx`WUEW=q*)MHFKg;o3M6be)YOGC#xEru88wMgh zKseTT@)_A=DX3&pnO`8QJw?GvdTNm8+rgI+^lj7V?Cj_09)L_)BB?FaNs@OyJ?Il$ z2krHia%ysBy`3Z{1-;%&B;Lavmv+^3y-l}h7~RDbyw5hYF1jlXgZ7q3y2`kYv`E)W&8SK}OjMCPx zF$z|JZ^=*J@DH5uVZMDONAU?q)6><83|J1%WTR!ropgNhM_|()?^1>eJ_{w-32&x( z<8U@_gHBmiS09pVj^cS1duDhN(e^HQvk-D`Nl!k{Ggj8FaK*|I_jhETUf*uSmIgZSmE8y)nWJPw3nf;5=Lib zBXS1IkZrD#K{LE*-U;CI zF4aICZ)rSpw&xm}z7_r~@Jt4w7#P%+m5~}`;}TSv|BwZ)5#K+!_cNng+^ebf7O*yv z!c0%XQ6e>I%mKHcfvJyX}xuY=fKC`@Cl`hH;k3F1$fW{ zocA5a?G#4W>zcj|aE&B##i32i)=BjLCUf@;H(ivue2w*q5L{F%;=U_hp_gGb#PEuP zS&5*Kz^%4Xs9_wh3?ZlV`$#5!H*Q&e|~^OrjB!k`(9 zyMV`wczz|XuLqUQ?j2;8gE;fEAalcg*PTsoB`+#k9Z|H4z5Nk^}u@fVL z;rrRao^46?YDUhl$Le1dv`o3bFnX3lNA#iVDoXl2E^!-KZyC97qALk}df`)=ay)_X z$B!$}uE6!}&T8t+iPSZbIGbRi?FHvC=XHt-dKDNYk!2&nD1@9_8l8LWxk+7j5T#p7 z{7z$SE1vA!6R+UIsS-#PGo+rONO#@0P`*p>;0J~f+Y7%k89VHDC%4-6kiCwOU(WEZ zi#YUa?mO-*GL07xP&gNzIym@Nc!8eaGt4uQYbwN_O{m)$)=Z>tMeu9EC~|k=YAkC% zOTC-PqnEvpOyw#QfgRz|NGgU@;&L}G;i7XFCKVtTRb}r3b+>Ydy&uhGoG@K zES$hE)Ky1}J?miYT-WCyG};w|D`>}2yur}~xbnN6I=4B(qjUmR)8U)QRo_ugJF2yc z@W_vz*=1I$w}Vm&Op2ph(*gac36~0aUEp*LuXLEJQa5-Odgh`w$>i#2D#3TiOikfb zEh4@=t1(49FVNNT^W-q!k8oXC?%UvY4R%}uyX$P%Y}^9NyNoP2^O#&C-V_9#0QT~_ zryA^OgqIKZbmcd-V$rwpIO%!R#OvVDVUFcG&do#h`Kq@D?yZC6p=9rDj{iGQx(Ji> zcX}(}fI?Y8jiDm_4822ZN+^b z0j)EjCA{u4+yCGvy!3j!s9|1E$Pd?EWGl#4fMPMgA{KHj_!SLSF%zAkSYyQ{y2wQc&8I|b~k(0fYmJKEtz$Jp`L!ky3lIF%!bfa zsKz{(hhG6`VPQ}!z;7r&$H;?2$M~~7$Cd}jQIJ<(^t{A7g-#`quEFOUlJD9wx}vMm zL_>mMG#8y)3y=1ZiGBg4Y)~qQS9l%Hw`BdaKe06doR(6>9rpfA&-n?zEnkj`yD`0x z_vjgp1*wHFY8yzMW;X7@seD9m1v;ROa8vDY5z**h0&_TtJT)ITu?8o+h56m*ItXGv zGA@y~el_H7ql>q|;t$tdZnMZ{f3RJr18@~=#GN1c%wh1^P2Xq}ds;<@f3{(iM5jN- z)dwbb0HqM3FsU{w;2y18A_=nMy1!vt}xF0)?C zQAAWGSzs`8z9_}&%6yj;kd^huqcLojz(dppmlTjuCKV7 zW*6G~BRJhg@%-^MC8((D(1U7^*BR&?<^9Bv`i5&LexQnYfbtb}0^!tu@UOjz%(0yL z9P0Bec&Fp=>IT0zE(H{`s-irN@O+(#@&3g62Soft_?5!kE`Vd}P{ehxOt@t-`}@J* z7>qlH=Qzc7l6xl@2Y7xTw>ucy;AMI)LW@zlY3%PK_WOZrDBsZwoLZBU>QM_-K!ppt z@~~=okIZzMquUPqm(g>Zg7U=>X)TGk>SWtOV09n$JB3HeKtJYk)?=w+g;q;?*0qV= z;>?YQRjXU%hI8O`0K7IbgVMq;n9&Jz#Nw%=27y_Bc-D7XQ{`l-$me)DcS>z?0( z*LCp9q3ci>e!b=jLWdgD)oy2*t2eo81T0HJ6~8dtX5lxMz_zbo$k+JjHEiiHW)rCR zaM{2!t9X6|K4A&WT!7b~#b+mz1IL)+#ll_T6pr_9NR|w8RdSW#`wO_9(Jj15jdTX} z%fyMVME|~^${XekaJuqayNy7rES(0A_itkH94fz+s&)xy{R!6u4CC7O&Nzz(AXeEB z^JnenAyb__8E)D<1V4N|uRc^keiv(Rwm^u=V1$ z7ufW%Ee00F^4TG2JtHueyt@R>?e1h2eCit-?`AB zBFtMk<}a9eYzAr_@MArh+W~MPmRy#=e2-^Lw)vk1SEj){u`k6`b0)~7fRC{Kly$TT zjAYPG0QF(?dIsRYyMa_&<5WXpqbgXvg4=t66@@1p#cjIoXE>@%XES=e5Vty+JUbL+ z=mNVMQKy$hFZ`XS-aFpkILm$HtyRQmDu^Y~Gww$|=zzmg_NoYGMR9~K??3qC+sxiM zl<5elWx};@V8IHwumDDAzNZ*^n*R^MA(1hf5eF{1)uRM^B^it+(y^81&1B4G4@>cR za(Y`)zkPhe_k7b;c%9{W%!*HbYKKxBO%<*;Y(hKT_=-0nN{y<_o%$x zM^}0mz0t4%U>9p@IT{Q{gGK_(5tbh^66~3g=v^G|83IZ%d?Jd`ld7OI`+A!_HX>66 znFhWLT7~ItJLq7R`M-1ItUct`^;8yLa{a@{sKPK1>qhQs%z0G8vloG5Pr&RdN^-z5 zm|WrK_`-OUrY{b@1CiX2Oi`KZp-SO9@>6g93vM@2$aA^K9R|5wtP*SjyS4Pqm%)+w zjCr6SB!tHd+h*|d3+|<`&E=JOptKOQm8108&2$mJ1*?NF>wDbIWzhP=b04%kp65~K zqPW1COan;RCvpJ<*9)U{({=D9wt6%lRABE_0@bh|?OTWic&i_)#)p3u>~uh3NG zsC1D22E2E{tUacJ$Jo#}&GMk62lH0qrkG4hUu~Bb1Er9=Hv65{Te0@E{AxY8z3>z0B5W)5+^p zW7%Bu?6{tz`YFQP2B4Rf;9d|uPP1MgrZfe`rl8mY6k8jbt&Nd-q^-4~B%B(fv-SB@ zFe}{E*h>}mR)&4PM1LY5-|>|1ddPSFW;yI6*CS+dJnK2Gg=qLxa&HpOqd)5~UFlyo zN9SvDK1IRJp?iJ{g_N`3i$-n$x%pI_^7o^-@>Y!NLLamx@g2gPRVLa4yv0DTAb-ii zgU5bAHN>B|qxbWx@sIxkfEwTkouM3ygO0%0V>tDDTy0e&W;T zLF+2fa2tj_fMZW_hWQz#h?jEs_}A%C%6AC0u0&M~N0>;AP34H^bL1Js-hOcV8Qkuo zBYyC$G(M|3zqRup;#F01G+82^PR?Yon@68etoxSvI$*pz&m7*MMw4ddfL|Wi_ae+F z0smfRJ-Y&2sfxZ;1BqI6Ac7h7$WI|46wGZ1{H$xw*5O@2mba?#xpHg)?4_8oS*qyf z8?xcqO%(bfO#6YF;{fjHTX0(n+ftor_(kD1h-2>VMBqc3fLt|WTp<`I@A$iM?gV|P zEx7&V`2CsmL?b2-fG zpm>3+L8PST@GfT@D_xu7{zk&XBIQA!qWiuRDEk7?uUxII|KsT_4 z>0=YTeOscb7g03?z9qu9si^w`j(aU`WFJ+T{Kz%j{u5RX3pyp8@~CAkvO`Pawi{V4 z8ub~822EymW)a=XsDZv^on#L&FZP|r7YM<-%k}Yc$b$eA)ZjB{Z6;wES1`B^OLK+i^%gcn3Zu<0mH#B z8VAtDW~~+Yg%JHUU|ca_rc<#j$5&;b9D7laGoW{qs1)<^qM4;Q-|DP3G$3-@<5GGv1{2YVj$kdZvn_1v@m2*BxuGq=%8Lh`tr!gZ_>8ehkDjLO1#pEhzC;F|S zurP!gp(cz7A_ta-9RX-tabsgakmS-E*yF&;XJ}szTQ(cNmdyAk_mQ6Wa9`|oSWU|d zYA-U1GfLP#D}!8B*d7dWP591GzPl5>#7NM4KNr1Zj&VBNOC#HT&9QF>zvHm)5@(b} z&dcGNqXIb0GKOF<(c6kyh=7CrsSbuRJBiHF6j-=`8Cy!^ud-R(1``j!h-1dZizu5a zz3a@o7J#USe4m+4Yml)G9XaO)U_DS zR2nO6^78X}?iJuCe`@_W$y307V*X7V4g7>jO#=}mHF7UNI0yScY_ zc~0X7uZnHgaV5X<*$eFBC-(F`9G6<};2XBX{4JojhWJ^;m}7Zw60tP~XFMFWh(^mM@KopqfRp@V0Ep>vSx|o!HP$C8 z*e7dHnFzglj0WgtGq&(t?d;BqOEhB$$1)0kCBHeHk;<_yHVnT(NA|(PQ^e#I)a5?? zh8!}X>V}fUZDle@U4ElTUM37SMu1~qqI{TXYBHKCSCh(EgqDew>u@)lVaQHgyzo54 zydO0LelUifH7!&gyUe{y^sCNud&zivfoCrA_`G3%hWDT1lgAlHP|f}9FOxm*;5W54 zqMoY_!G%Q8ETT!C^J6efU<^Vr`s2L1;=hDqGt<%_&gNClst9K%93OMGcVOc$WW*Ch z@_wr$Hsb15nySuboq7s$mW;B-Q)3Ng9-~mSD0(lE@FVg~1Pc1Dc^COkABLmQd7(H1 z6z6l4OF(hGWy4(-i>HaoU(Aa>AWq$M#R{Q4r8)1)__$!^K}fbmpSqw@%8s$HGLCs0 zWAir!HJb^VY36j6f#-TgI^5JyCoR)Z-EZFUm|-h?j-rpJa&Prm&uAQB+Yk2+7l;%MSHu0dQo(3{Gy8<|{++KN6)2xq~66N67H zY4wC3&W1ld0+PRj2E7gNN%lM76y2sf)VTC6z`LQr=pbTA@s$>@N zvKgx-VQ5t+W~nE06^(ukL&XwttjX|U3cQ#}j!L!4VQn-$XH`MTxPj&5j_?u!7RS>Q#{Q_crH28k!0^! z7}`vT;Gg@-wjW`2gS&8UWhAd<`(nF5Ck0ZEA9A6|)o5p zt%Gqeg4-VOP)v+6HJ77_K@Z}Iq6AcR95_zqNM@j`vpKrO=*QQ_$}OntUNZd&D#Wv7 zN#)5bt2LhDSEaGy=F4Qus;0Bbm;WJSwnMkNk~7~!#iC)saAt56b16(GgXt7BceO?qO5TiUjxBX6=FAz(w8TjShev6ezhvOGLR@Oj?Qx79iHb2?oQ728s~qO zoOuF7_ftP^#|36khpomDDj&@;7bH~0j3h7}OV%2}JP&2YRhtZiMg0s}AG%#YSSs0x zAqIB@tIqbQ6ZboVpq}r-tymZdhWcD@MnBuzV7i?{Kr${jKaMq*BQ#Ydrg*=kQe2FF ze9cj&ljXPJ*fQye9wsW!Q}e4^^9Sda&F>p}@ILwAXHj&i9CJ{axu{8mH>MU*4<{Us zc4W?az|ubGTCCwZ(r`^i^Cp4pr_A?Ma22-mVA2AHI4guzp{rx3Z52qX@>2#>HM7#j zGVU$p_2t|O#d&;M?k1J}N!6#o$;swa#mfXVVz@=tK;vc~Jdf}cJ6kZCaNKo?%4$}F zlr@GH;S62q?Nf5+13b`8P`%7NoW(z!1k=6LmESQ>8;z+eOnK+S)Ktq?Qs0RT)tVo| zSs|;Ma|CR9A0!6iHv6%OWl@&*#JKkuLM)Q|;=*AGP{c*YSxyq>{ndLDsHW_RuG4E5koyM4InJxuv=5X&zuJV~< zSk2@90v;{ovF_brK4k-GxRbJ;ahIl#AvZXIyj^Y~!Gh&IZz8p&wh<3%XwI@Tg zrU%!IBd*V}2jgg~qB-U8w55pG0w|FW)xXi+dz}3Z)2efZ>WN%jl}|UqS84Ea%c=_u z*;I7cms!Qyam>2VO#%lY>|^gxWAIRLjsd3_(24ci-aQ2m)qBBtH~Rdot-%opY3 zykA14%9#Gj9o1xJ>MNoC%wQy(?Zb=;+d<5()L6VtFnp89b3#}e`LVfS zb&AAfVLcrURsNlB98?EM`FN(?PBRpz<|?{RWfd(G*tfa?qwv_nt)?8xH}{35y~zk- zX%{eU#}S4as*Ujh>WkM#b1IWf%M+{8-$LedUG!VU*L&#HEo$wnRNVh%>``VZ6HW6~ zFdI=h<<}*Q#muUBJJ*;y%{mO9;D*N;!sEFWCS&25&`B`X#iQ0@-zdwCaoqPk(mho} zi41+phvtVUK{A`7W(u0Gx{?jwLH-(WD9eC&*k=n{MPlxHJf^Cf#qed3aYqPCooAR6{oH(v5YZ6I6S+-hQ$3r^t%mRu!<8+Q z>{Y!(K5T+T$Y<>36A%@q(~PAlWOkt{Z=}_Z)wvEyY~9R|=iSY*9%LsrWM0+n z=REqH2$AwCR!9cEvG^EXLLy1 zy#vDcb1R&Gx#GraRnGIo_e;!0DRNXGGgF!P4`Qh1sn2L&{808)CEE^+J2Ar=Jz(>D zWIp9$DdqrUn)-(t>RWukrrJ`t4bN5Bk%r+&dsfxcaNeo+3DIG>@gfD58yBwHzc{NQ z2dw(5wPD*5ZE0@apq}9y47yUEikt=i1t0t^&fpL5Th8_8d~=9wU*7d)UiBj`n!A)! z7LN}xZ<(gk+fl*qKzTizW_dmHEiNqqZE-8jI6W6kgi8weC_8JL0S|q+3A>s0j6AO5 zAjMvp!Ml}F<-+xO`L;#2N7c{Ei6!-ISCJz$G8j6R@8Iq>;%}ej+d~}jN$~xFoP%(*x% zw4)3QX}6dy-pTu@Zy=5jfaU51Nz(_i4dyxNu12)oN)4jqx#*V{`BXC6dc&};pb~r6YXMl3LWoFI(DlibwmK(FB;Y$p2q4g!({|})! z7fgN6=yh#+m+v!+Kv!;fsYQ>nf*jOpqAHzlTo1bGe79<}T{iYvB`eKQMScbjp8@6b zoP{vHfj(uS)Y)Vs^?~_wP%v2?eZ_iFW`qCM-1J(Vs7h8p(GCeclhvA&(Fuu0bm-%ePOD1_BBm-&*G&gw>@%Ql=@22 z4l!6)7wB7sv2w3Q0}xgQ4n}#TKb33*S{{Cx^C`i372zC}js4hiP_QR92lv4G4`xN( ze$CK1o2xUZpJq?p#zSB&*6f5mx_&`*lUTJecmCzGHGG&a1*esUn7FQ*bb0P0VW>W! z@KkQqeZ8idT5%#pR=x8zKi3mSt1OyS{pi~^^Q~L0uHDIzsDktPX7!&=v7IG0&zaA< z44ZX6s(4lV{SD6QFnaJ@e#AL{h#Oz>Qm*eR!yHMuwGJSDh}X5r(IL#KYNy7Q1?9wA zGVgLc>SFnnv=f*pW6GO}<-Yu_+wR~d&g-67+HYiZU|ICUmAgq>`uBzel0>k8AEYBL)r)T_JyA^jWF2!jJ?FST>0tMRQ6fX|N-K7PBTS9;k zB4m@z`pn$>pS$Vzf6skpC3EhX^Pcy;@15OEx3;ZXNi_-S)vRaBk>jV92qlD2j23?q zvZyyD5(y>4hfE#vLk&VS&N#te63I(mlzUh*v$66li#G@xSK?}7Sm_=muEh2a+o^Q* zoc{Em=bi86-%P%dd~5DM7oOCAyCb`rH`M$*W@b5Cgfjh#9SiGg80$Wf zQS15p`^LYo-y8TK?CIQ;)K5DdHKclB{SpI`vZ_|DeyYlu3L{ExjM*4;hx}qc`>xzm z>0yogs~%XMEPHkQLrvRARkE~;8CkYl<&#wxRJ~OxsO+WUcOtr&yQ`0K>~F%Je<<;E%!c5r(rzdF_`}Q0$F}5)j}ASX z_~u;t5ZgRof~jcafs!E=HzZw4`mMs$(!AL9hz^#9dWJ14?eOy!PX;{R@wCpX`)O;l zCOY!??!bjb=aey5Tu`Y+#kysOmuMREESM^H-MzC)rvyGXKkf4L)QilNz8^c-EvXh$$p_IaCso|a~NdF}b7=fA#c`PTihiEX!MoIEJx=eQ%Kc9!i{ zu1%SuiACc&M2rcDCx;!gKV_x7e|h4?vzLogp1n`Z{<)yL-o#w3NLqY_()KdT%1keL zt9WQM3w~ngtvT1df=Rx+a(O8KbG!ZYE?pwqCEUo zKzq8|)gt>++Nd`{ukXFKyuJTndUo4_rrH$a%CMBUwTbgejVyJq#81V(jWUNUGd|VI z*?VWSdAs#Zi8o5>>vv5*b+h$!uO-<5=OcsS|47_Xa&}_*_|~zP!y~Lcq=}wOpQn8| zmfA37U&{2fJL$>UaRtNGr%LsZDzOz3zDyjO*dSp zaoIQeCd;uwe@3MhtCX-J;coF(MF&P|!ADK)xyRWdNB{6Rji$xFE1$k0bD3?1>uWa3 z%GK;%w}knk?yUDSsy8C!Bv?95w5YGNH& z#s4Wjx>&2&YehZ=Cz^Yc&F(3=Win2`Kk;ta``RBHW}UQEaxK)e4EA78)VR3U#eOUH zP0_nikHYp_k1A)h)PgbDpVQyH-|@ap`utDw=g0P`UMt;X`7(TO%#ygIVo`DJW4W8pv*4Bn+ z`ajKDV^~J9%=nx^ zc?+EL)gIDYOUJOPQH^7k#59lIT;!k7bZb51MLx-skykEz?x*V+>prDqb;?b%xAaV5 z;|$)w9ua>>0e5=08Gq z7s-g~6WukcAmW?Q4C`;kMdXlolKpJX(@fu|^_gq3&*j?f%zaJoqRg~j2^$!BG-^TA zhaz#|Rf0!Y^5tXtNf)>6$$p)=F7stp`_HfP`Z!nn7Lx|1vca_?wnWyA8Xeg!A`+Uj zjg9Cd-@Ah9xry2FSxd57ATJ&j28l5g^ehZ6uG9zq44t|udLNgAL(1QiSuV$|D2lH zle3*UD{U1E*0^_TL#4;&g5X=>A$&${WKK!&vM3(E1Toi~JQ47CtWIs&%628|k(-+x0AO;paLzZF4q$R&8wx#=EO% z%jq7|uAq%!{UZ)U>_nP<>hyG_VC*DN^*#$YH)m5`|xVv*`cR{f4AN; zjg-f*OP&S=hiv6?Gd{n{y^*)Apq6{6nnYF_+FD11j0ls%yM~<#DGlbkhI%wc8|~Vk zU(41mcSUZ2t)_jTGr>DmA0pXJMS@C)jtiR{HYjvR@GNVN>82dXFL`@7j^@d>ZMidS zW%F+olyS$X%lST~O2CldZ$oQ^oeXUrk`s8vVl`f-AG8_n)Asnh2wOed)Vy!)Q=Pe< z5d9F%GKK|K3|Sj`JM>wIDY&0Cz#O9-=SO{mom=wX+WOk8dCT(i3yQjL`b_-39A}vn zv?XM6XwlFY!G8vxv9vLkm-gthJjV;<{4`stEidnu{YU2m&tA<+JqDAtTkzG8=+F)! zCxYr&qs)_)#$=^B#o67F8Uc-BX%VA^CQ!93U(oE!8-;C9OjwA@duqi?fwyM1VWbpD(C z;RT1CyFH4Q%{wVkmfeAkf^P+P4b}p41Cq=RM$O1iDSL3#x`(eT`|H1PMJmqFn{ z`>iu9my8=_8_!S&x#Jx->`m;~>_$h9bCG9(D)AJlohj0q8n`^DUr_77UjoXQI~u&S zEi?H(IyV&jW#43pwI=jdG!U+}7+k+YHe zrS~5#p19?5=5p2nf%gL22ZmeQT3#6gmD{Ac9_C%{EGQUR@JqoiM;+IEPZhNhJ4X*1 zR$Dd#Jw9-awQ4|=d4*x4)Pb*1XSv@wvI{m8G$|q#2timFRUn)!W9k&fzFf9NaO~wa62!+Vw`%rd&4jfLm6lwVt)WVl{6ve3Xvy zDq2s^GUr@JX~!1F73Vbf1#b^+1V1k=HD0zPS&v%hSicL9EN_fMm2YV)w$&HpPICU_ znC0l;-0WKIar^$%?~!JT*EBewwsn^EeZUcm+jPVbEyt02T9mi0E5iAQLvaSUes&-C z*3e{LU%F!mv1|>fV2!dS1w1gnG|pG9)03>dn(V&ov^ujKJDks4n>=a03HoTVU#@OC zYdIX?4OkK|!Sc#<%Fs%lPP*w2y*aLR&I-=H&aST0?i1c1?JstT7Bh4;7Y*1GusP~CFQbkQ(TzDDlp z-}*MV<6PUF=bX!3DehC=Om!0LO6Mv&ObadL0-6W>YMErdZQQ1Glz!wBwI<#?SFr0J zXH!>8_Z81QpG7~)cS?^8bIb=Up#d)}1?J7BONQU%2-<+fsr5WNTrsXYP<(PT4>55^W+>`#n4yms^@$SX0Ij%T&4bN5Y8P%mPCZpwk#);+zmKhdev6y!n zuPHmEs$`-*!x!ywy8dvbx=y$?FrU|=`8m2>X=^%T{=!nhGR52t%y;Cq)XZyZQ@p#} zUe`0%AoobmeeZttZ@nh@EZsJwo082TmJ8Qd83=vU7m4ntGlW@-yP*W z?%S?CWrJz7a@<(YeA|5AT*F++bk6WWzDoP@6Po5t^nC69!oA(S%9G;Vs&3M=_#CN@ zVWerO`G|S8d8=u%F;)2}T_7#l3bl&&m3xAFuDhbAq4$JuxwZ)(cDBl8jSo#D%+t-x zq?isGKFdyegqP7*_8bg56Qffw=`Z9I7caf)qXSAo7x14XW+C)#}L+N=r(@@>C z!L-g~HN}9rx;%)s!iVb7>Jo3d z=eWn{z3YAJYoXco7o5|&iouv`tY$Ks`WuHCtjdqlL9&yL)+YEmdEa~No~hn`U=Gu7 zvQxw+$%awJe52X4&-mPMN$Df+qtEzX`eN1Xt?pI4jlDLn-Pc5Wq5s17(q#EJ!z$x@ z<0WHlV@E@fvQA1Px$Kel+_&3X+gr`M%RAGzN~QX*>>Kivv{50(?Z(T-amEXVV@iMd z5iLT(nMeJ~x5(SpJKG!U^ZJ@=C-m{W3mqdjG&C}9H7+#<8tWKhls!@~ZOp6c%~axB z=$-C;>Rs;Jrsim~SS?ars;lfU^fi8KY;4?S_(K^d+h{8?lJ(P0_}+Nedyjb=_#)M& z+OK+jZlMA4OXY*1i?N+C#gKpuo|o#<*?h6SRUP2F={@BQ@a^^OSKnzpna*F*hjLqk z$ynbQWSnJKqfC^8q$%VuJEn!H6@CABGrfa-mDQHo58wl)k5*d1cl|lhi@Jn!W+P9Nz`? zp;nyz&hgnq-l~i-oHcAVR5VP7=6cc{Qk##}FRC|u{d`@0Cw<-3HriuKY||LyM8=>@Tg0y5Bd(x7rt?-cge^3meaU)RbDWl|e zl9Np2m-TQhLfz(D<$K|qptjY9=m%IdIZG$VyOm~!!GUA@CCOkhtX7`N>Cz24k!Y;1o}<=OpTUc-)I9Z>mZ_KHOGr6spZu%B6szHa zQb!pm50a|T$Gj&yp>0&7RgbTtdPp6t_0gxW^Smy-Cq*fLDGnu7nWo%?=7)40sm1r{ zRkbl{F*Qb=r84!k_Fgyeq2v`EEca8cC~3+sN^#Wl5UCxtkd=t=wc1s!p>|fUtE089 z`bf5syU85si9B1msvK52E0^TA(kFVFjOKQIu69`MuC`UzsL|S6?XjNDlE|+#QZA}2 zRgNk%6()C;M@mCz5_!PB(i60m>Hu}7`b3?n_0YSp@A(B%TUsSIP?jt6lq$+T`JI$a zACld?JiDr8sLRwT>It=y_D*}K-)A!ELLW-0awp|`rKj>&NF42W=-?lpabyB~Do{zm^=-M(*($EC@O-sDD633oTo_qMv4|Jf1F- zw#YGvuA-7G*OsSAKhdvAbN*7_q!I0$dPOa&t<%2JYq17=1UX3+`H@^osj1lHh4NF0 zQwz=Khges=mu6G%sjAvb%h%57``IP_mb8+F$XRlNVpPt{RprsrD!Q7C;)(2y_Jx+E z=BhQct=d36k;U`IWGr&HNzRwUl*jToFq@?W8bZ?83VoSYTFY1CwQn@Hc2WNgYvl}~ zQW^Q2oGE9^8|C8i6zO-mo&3uCv10lVEkTRW+G%ICo_c8(!b3=NI!_uUUzXp==aG{K zk|I^3)kzqCqTkTEXo*?_ZK)>fSM{Hem6hZ?bx4clEAkEbdpSrRE^Vim$Qizd4bp$p zI%@T`(b_|8u%5u2%*hS3q4b5kPCkaCiF{GAO7&?s(t<}at3F5Tqz%?~YQ^TW6hQ|c|Rk+;diWiE}AcGG0?g5PBu^uM(k+7NApmWtI~jAbG#DMX_LxMlKexwL#j z3Y1#Ykz_n?&zk6mw7J?W?X*@^zo^e=9eGRAhmMyj$|K}iatGA@2T)d(O`C6XYJfB-N2e!i#8m8#H&PGs#*$i%ro#X#2Ho+GDMrejDqm9#16Y zX-&y1HI>`RN%9k^hjg5}NeC&&Ls?DzvG%8SOEc;7^`h(^+l@85oGzDw;6wx2EB%fP z_M~gc5q^-J(2e>d?WXoo>#pC>r?To?CX{;VBPm?2A{UV_OWmYHl+wzi9dFJ?>mDsx z`=FHqa{{}`R`AJWB<(4^mqL*1_tJb+-PiOFa+jyG485`L)Y7$Zy|4a6AH$0AeExvk zp{u1VDNuGue@ZQ-!!(SxBqI^wHa$jX8qpi*zv@NUZ8nX!C-rDi>Adt=(xivdWXUKE zpnsBV9?XldVS1cy)f4qG`fGg{i{VfBezJ)UmTpRE(hF&;R9iYhqi7$pkndrC>uvOS zy_nup-=oK}E9`4tfke^Ibd~f#N|ugF!z4EyLoec+Am!6 z`gOemJI2~`o!=%u(mYAt2bvFJ%P$uz#6rRxjzuYuj9JN1do%{KAQB$lSq zKGHmC0pg30_R_L+6?x2~csF)Q|3ROmuh1W$Z|q_Xc@E!7#?f$Txby=mzn1h4ZhRyS z$s&G@1+s(4^b*8pWD}U3E#kF^j~u17fu10BK^+~W<>^LZ=MDKxmZtB}m*YqU^HJ8A z-{Y%D3z|;bN&_$|NRQ|Q`iXQP+xaI}kKNVx>)Z6pdI+1ra@cn~iabVyL5Qu7R0nmm zg;qu-DWoSNjDYH0Sgi$mJ+_}!;aB)5Qik59rKMKVmr@bwHl0Y{k%8nIx1iHx=@<0B z^yjFfX)K#f;(_E88A5Yt6<|wBxpX6#50au}48O{f*lYck{*Ug{Te01&9N)*g5!^}R zr-VvURrI54bU1aAQRFGFz~`_~_DFxEr|IR{RF=lZa2MZ5I?#V;2%?LWUeOh_7Cl7D zlU4jZYsYjrk*Zr*2l$)_=2|3`{D)=$9VyAu0WiDCOnBFf?_%XxzWzbi^-63G`@jb9 zk9-cPNDt5g8Y(gRf-a{O=~Ysj?BW4@EGy3PbWM+9ec*F(zLA$CcS&EGOf|~rC(If_ zU1T0A`fGlHwPnFfVrEv0EoJXmcmA3WBu2W1KBab=OK;J6vimW^U1Su`t+NawTntSi68JCF}#GQB}x zA?v5;ceEzGMtY*|>SG^j!z!^v_5~Zq&a!a60Kd&FC*|ledY3-Kv5xk~4>`+839^!N z_5}x-|HJi@PupmB*JFv1W z^auEGnVzIeX*cR6>yeecJdSS$XA{yKk0I#LiH#sA^m$wShb{zO-!K4;O! z)J!*%W+WLAK1NN9V#C>NROma_h;P9!TZ>2la z&Zb>y0)0ZJlalbRI={?TLCJS)E4$93_&|P>S0NioarpZk{f3UD4ZwU1%z1n^cDTQQ z{vImMG8gu%`P|M2Aj0Z!_!~NkwxhB1DKwWLmw8A2hHZxv%h5ycvLbv4KZ&~g2|w+% z0eTGWiS_Cshe&tA_!9K63sAit;{q#SHNgCiwV}}}29w$3BdJ3Bfwvv4LUYLx-|@S=1o?$HNfK>Nn?Z#I%!^4AcsHLX@MLz8oo1KWM;6Qb@y+Nn z-N_Xa3|uo>kA~8GvKKw6D7lD;T=-@4BF1y3vs!!xcC3=fSQ;sf&Rh>FyyO{KimcfA z2K2BT_BXJPSRU%RCtrt(ZjA^f;HtvqD4I@=LUT#-kdNn9tnt6G%fH1wSeMV`=TXs< z$So2`6M>GRK60O|B<+!vKM+fYRs ztIYfJmHZ)(#|phpTtEkb`2|+WWby^P+sa$=B3QRJrr@~|G#^AoH^B;jh8@v>JEV`O z!Ih*piNf8_T&$J=&XJK|yb?Y? zgZ1(W$4#=8OhZo!#G0KAcLh3{m*=hdbTGf-MakD>H#k!;o}&}2B7?!~gLh+~HP$~G zVx_F)m(gdMkh$b6aIbM(#Jm~Ug91@^3(ybB16vv@I>HUX914xUksBl#*au)-SY=CbtsF29gVGb=y@e}mBV$pcMZvs-kKkWI zZ(XSA%;%s(-$g}#N&W-$4U9`wJN%r19N+8dh~Dp!@#I{0g14F_}Pq_hYx=KH(em{z~XGxA-s6(VKsTV+i8g zggXN}k0E^!)i(e59n51fI||+%2VxkoJ%ODFO?#1Vg;YjNYoK5c_?P;bE8{Nn334{g zj~)o@957!&zKbBjnNYn6V>wo2A27#}PtdUpsDT(`(FxY_17ODI2b})__XEFU`~dyk zaV;a5_d~~6U`Jq%(0mSEHjgK0Njg78n0_eSG^oQVFk0-En( zUx`7TO(j19yA+S(z+4;5dGK`u{FvxJmcW~H$Tz{cUdZ@ju+PKuAkx&&{0z*C`1gDY z#v;Gwdprv}czy8A1#&6+(J0KUg?x*ZwVD42-YJ-|4EL@VP@{~OA)SH#5o0P?c3*PVfLUf&z{24UIlD2Sc z9CS=Y2ObX1WssFLoLvhYKZ1Gjznarf(bZ6;tLlIFAL^cc9QP9znRPkr!2BKOE?s-sC$ef0JCqU;w#3-U1NIHT!4*Nmm_woY2@spXyc*bz`~)cA$G70pmLUGq78My@kJstkgw>f_XSP zpI}bJD$K#z{mAoD%-9U(vv58S5tbs&aebj-Fs{)UF@zEq;yKH=L&ZjPc9HFis3aF6 z6gd>ChXUUo*hJ(z4@^gZ+5jb+v8UWXwTP@FpgMX2EAZ{%Mg?Sr@id&@j23+Hd;lu$p>r_wj%HvMjtCXafK7mRX^8L$aOw;5f!Mqhpc45|eXif*S$YEQsb_Tj5oDu8FNHTHu zq+i1>FrUO8D>NH%-TFZF_N!=#*9jyVZlnRd3u7OSW6*pDfAR51c-P#I?F`LLz#Io1 z4n%kn$UPW;g82@ZvytyuU^_xZPaMLHB&aeW~dF} zh67Az{eJAioU_pUif2M|VT5gg7T9W-8;Y!?qs~r(_fH(6LhoU=9eYI?C>7YY|IaM4 z@&-v#;!cHFT=1JUGPw8*x| zN*-bt%*Xs*h@8Cn{|E)PIq3v1YT@%oD44Tx-RnRfhK{qyU@{`K`y;FZq|n_A=xXpX z5D{jeN-qL=6f*?#W4Pf!b(8^Lb0Ed2hF4+0T6kKE8o>1g<6^;|-vr zHb#=a`U&=mG$3vQFOGY7oryR^S4xE1IzU(RS6wui33B)n_ePh2yp55J7&75TAiS#R zN7um>DnfH8(Ai*42J)hxI~g-GfENFknux2{@$;62ibTH~c~JSl&wUw>qUtihEFq%O zK-R>6h)huOuIsUjuy|$7NjOr9Uf$5mxl`R)da2%oTN)2kc{T3Pc`&@3V> z>qi$d8&T1jU=z$@2o<76MMaAUlW+%E7S9RrU94{hqJIhWU1UWtzs7q}(ZOI&^eYkQ zSj<&`&I6yo-i99!{F+6+C7h1~sw^TD*aYN6RCJ*Z!74_oKSKO?3Pf2yb7`RCFeLmf z8|Q`7kHP*LBOTuP{5ce;Dt`7vWF;8hiTZ!-SCZ`4oCan)dUSwahj2|O7qt-#%|0+a z0Qv!#Ut*r94e?*ff%t5f;CC+$=xDqb-r4X;Hyv1!>!-k`AcG89iT3A3Xc69p`D@e% zw8(hjcnYk|zg7yJ7C50otSbqsg&Qfrii{N2v&&x{Vc-^(EGje_!|1OL!7O4F84 zxh#0&a0s7;4hOt?`Y&Fn7hT4ItOWY`3VCCJ6?>2!OqpO79t*{3erC~U!hkN+90}$y zzZ?J4A<(Ze(}p-iR>BaOsG*YnS3-s82I;^Qa;HH@CUgjNus^3;kXS$tit~~U5FKE zQAuLWreg@rf?4=p_<#3tU=>*5a-=_lgy4VEfDtN$Z^Ah{s>6uu3T!Mi3*G=Q|1ZJ} zzYgJ?5BVmjoM6A=FmQ`}iugo?BEAeieI*AF^smB|C9;B0+fJ=Ix9#5Qt9ZQbK5@e6VI^8koHk+j zH?vA~7teV2&DSGJ)UHyEv~Ag`wb+k4jvhN?#JCd8#!VeDe#kdtN!#Y#T3GS-8r7=R Ns$8vJ_O3^PSoBV}5V5GCOC^m2>aBgkJF-I-G1lNdGqd;>Jvx5$Qt+;V{}CCuGF{j_|~X zj2b>;ctUeRB&yIL(wN+*v$Q&ztQM&&l%d)`VRak-+H_3o^Q{V7ENosU_CmciHQGe~ zSm|Zh(ct#JT|CnD65*9Mw)mpyIrqQDead}XKOy5$uYY@A>vN&#bl{oYXQM9Ezf$Y^ zxZ7Fx?>r7qxSrVX{pU}`z)sgKb+1PiK$*RxM>( z(x-&z$35=`T%Ua9(3RYO+FXBhE8^~shuxnQB>26}f4}lmr>`wC59YlrYGxlQcO%LA zOO_M91A@nue^99~x>oJ**wm)ktwY+UwVl((_FePlU7FO4T~k+AYjriPa+S!JVRM2X z`JVFZWn3tvYrS21+lazZIrY->K9#;7|N6kQtOvbrSGxK8&4;%--x+y->7%pHI=?JQ zJo;XjawhFi`q}J71#u` zxE=bS!my}s)&5tju)c4TlTDMF+-h79Ypd6`&iER)tA$s2Qt{6Uzmyvo{LIhh6=8|h z@8UnH7hFed&x#EBx~zp?FMo=7e=9NTdGE&q9*ui+_p$G@pI-EMwd&2VcTJMFrk+I}N%vyc|2P!PdHtTG2HQ zMc1sdw&IfttHSbwxxj}$e|U~G8FcHoJSE;0Z7VM7n!he<|F`_qx*zRttG~SU?B{1U zpACAk<>iCd2i{J3ADMh8b<7tz{b2SVd54QGmriw5k*8{Bc%%L&^LVeCex~50ax){o zM3qK=tU0Rg%6e&aSJ% z*-+3W=VC^kFVUZp-fu}PdfD~mq?bOgor(ISoA1jdzxeblZNfLdtOmJ#3JfLhtXrJd zWFt-BOLThkIL|4*nSrZ9Ln^o`23MUI6H_arR?S+sYOJn4KYC2%mleN@@GAc_bbe5V zf3DAd&n&aWP+puub}RE;6KpL@))idM>75z!b!lqbk4bMc6UQW8Pn`3%)w|9gJ|tT| z?M-X;?P`W!&W60Fg#o2cY(Kfel-2Y(|5CTlw9{j&PuGCQ!4=DIjW`wcd$eE7mzc|1=sm=yL{VP2R9pGd!G-3$6Ipk@ZAcrP za`wI7y9G(YyG!r8eH@Zu*_e7fZS7aj3@LMYPH|rM!r3Ly ztS=n@NUhcRMB#n)it)Ooj<@D}DX?kig!26&!=tz=t*Q*KTr+A}#jO#G!^ej04cQjN z1uXIH=RL<`qItc+sGG@mr)kPK*9`j~rPYgO=6mLl%$%>?KJQA2OD_JHp1l2&mfGw~ z;5Q*-U{<-DJ$WYzf{UM*+HJnB^>PC(np-0Lu8%O~Sp@G>zO@5=Lk5NwR%lkSpi*k3 z;)+irTSg2CpBFYGG%z?W@R;9XpY~qIET>H0^f$x+emLdSYp%AAF4pG7`wM#HZp~Vh z-ula%)VNPdiY0a0=ae+z+u!M@Gp}UN$$gu@ztB=Lz`Di$m+O)Iht`B!DJ;_8FmAN8 z_xj>fG2n7ggL1>e`$Z%~{u;R^;+G1k9J(`=<5#lK3?}eO%_k>~6Wi`8^7Yiw2c; zwe4_3N#zx*){r|Ue6OEtY;D=)*}*5;|8QVQ$RA1nUNIKJ*p z-;n8(T{rhy-ob*cMXgJIwKle|aUPVOD68luE=pXYKWQ9fS>##O=d@q7z}S#U<$9Ly z75;bm_hHw|H4eQWTsLTHK#E_gkKVh9=X-OY>8bvK_>3P*e%FE&$#vYJw^>UEB(rUJIc9-+H#HrKh_gt|c>)INR zn=g3u@ZR9-6L2HwbBL|n!?4J(q2)S+-VR<6lo8O=KiSvnJ=Cj@M>X?YW3+y-*p-hV z12s*qEIoIuw*64LuqeLZLT*rYVum?A?OS|$^^A6zPqOOfq~@N<4=xNYUSIN)wWa;3 zLw4m3)Vs^gtiY^ z72GkXFyOj>dA|&wk>1Zd$9XI<8%#ll5ZyeXKX;PeP;bkgQnDl5o>F?e_+X)5ere9x ztf`r&Gs|Z=vix&;=kCs{UGQt6Z}G#DidNn}+ELl{O`5FytPv8#E5dV~hw+I?wRn3` z@6LWL1EvOP!C!)#25$;#7N`$M@N4Z`(Px`iGtXz1K=Vc8RlT2Xs4##_pfA)wWw7+U z^Qe8kb#2MiBB8)H@89eTS$uZy>;^fVbBE`h$@eepQRGvyyp&q++5?^Gu0gV<+|xRf z@A(2DL#H!dH)UHMc;5HU_r34`CNMQpNypw)l}J6YU12w|IK=@fQH%^?xCzE(OSSTn4XsSgET28{y$<_q^&1h85U?P? z5)k6A`Fi+n_Fm}~@0n@&Z0>EUZ@i)Js&fj}`9u;)r>mS&OSH$nXS_~&4)Tby=*`=Ws|{ZI$Ko{M9k-c0)HKIu%J!v>1I`#}ft;$0()Q8% z+;W~1x9ep6Gh=77!Q-3f81G@e+x(vS?eq)qi}fAq)73lBE86p+<+^!|sg<#w;g)Wn z*g{C*){zg|YBgUTCFxup9p7vXt=mfciz^g9%s-ni7A!y%#~1Y|9#+z-bgp#*GU$^- z@7g6jlv}F1wRAe3+s#)N=jn3w+l|Eh(y|a9cKIavCi(97r9Sn2MtjG5b@A-%VK+;r zOU9Lk8Tvq-m$;7~&-s(h+K=iPxu2Bf?BFP|#aSPe#1+pe98)m6;8H=4!Y)NpQN(Y1DMB8<{;&|bVl-kH6l~h&MMv{HpJHEX*Mwg;*WZY=w7XlnkL_rn!3^* zE9{E(Olj4U<3%Zj8HG)Xa*K`^PcKK_N&J^j3&lHa==~UX)%Gtv0Y4%h{n)8~gKuVB3 z)oNN}`WM;DS^0`$Yu#@Bbwg#-MDsPv5YHZ7SG|(FCVRd1Y~eZDtkRTp!YmcGQfjNqH^(>6(QM{$N{fZB*K}B)Qn9WKxM( zdZKiNwUsTx?(KN!NOEp+ZI%|xLzHFeP;D#SL5_iMo=`>CQ9s0R!g$%_Yw7J#-gBep zT2Hg*dXHR7xaBwVUQ@a;(imeHsgKhQ6vql3`O#cE(u;P}YO1XjUbegbb^hS!VEJ*;82+qN6_wT^zyAugj7DyPXWl=tdh?LECfK5~A7BDB)Q>Bk!W zG#)Wo&0Ze=dW3sgJw|&JT4F7;&2LSLv7d3K;ix`C_gV}RO@fiHj%cn&%W37+nu=cb zkP@ALJ2u%H*&11Umim1nxQi zLf~~Jx(GvEV_VZ)^CC-okKG<4J>FO*S@xMZb6?XEW1hj+Fj&7rw@3Ua+~+@Yh2$&s zq*M)1%PF36C8^k%=eT44*|y1=RC=-0!#d2G3D4HFr`iuYdN^Bw?IY=?JVp6QZK4HI zU-E^Naw&YKKy+EU5JRXj#`L|pwI$yY>hZ$zqb1#3&Ai_9-dMr7+;Bkep>M1kDef2k z;6HN7B!`AjL2IhEP+H4_rDm>pXP85=1>4$N+gq1d-&)7o?6xiT4vs>{PUmV@eaTnO zk#{It)plA#>OtO=U!-rfRMk)QQX0zbrSDw*oz)#J?W1fLtVz}iw&^y`z8*Gyo!d`Kw?r;4n!y)4zrbT8ii7Yj zk7KW+wetzov5xdsx+RZM+NdV&wswGaA@w+od&J)sRsnaF{(pw$#?ht@=0D88nOm4s zOkGXajkSzF8M5@%^^0^FVmWc8aDg}Tt+~PE3caEgs*!4KWtKcwI^??Lyyhsh>+D-> zw`^wnSbMSkXNTt4>x^(G9rqn=ofnfBt<9j6J|H7F3;&28A=DP%i$`=*^;HbP#(Bo!#tufCVS}NL;T&vyUsp@_j~Fg4 z5-1@c)7r0PfLW!-N& zPPZOb9wWTt>+$C~Be#U)(hl?=jnk&6XBDg5QJyV5cX_&cIz61e&SuU<&J1TKSBk5H zbWQ3epOHH%*OfT+jXF>xbSbSvK9aFqCH^GePcVvy#Nj%V{w}K0W5aR7CPO1bqJEBE z(C^d5=+26*#lM9n!hYU^U&$4bDdYuh1OIZ`FX}C&95U&Y| z+UD|?=17|Kvz#GMQeG<~)f{z}#pqx`8)Wd3|c0{X9kJ5PZjEsYS*YeGTJHmL;sN1g_p)b$} z8H|P${c?RXWbJ63ziy}4NW3fb5YqS#{0A_9&t{N42RxXlYs(`j+-4|B{hhGB=a=5LO_QEvF@w*ix>d5U4>Hqf4m75!IRrcyvTYQOjl~}cXesrg%d`k>sp_w8Q1r@D z`JMEG6e<-Vn%YY9r593&JXwAwM=2{5N$IIR1@2)~-k*WnpL`&FxVzj){v|(IC>5rP zp1PH~BArc_!aS|>(j68DiFv|)p{#x1jTF{-e0+~TC>Qoo8##B5;!^7bwN8(*2f4}}!D6QnJ&cQ&JLFGtJ!QV~02wqzO@@_MX^Qp(qPY@T0>0gWTZ{jTj}q1jLE>7` zB{tSo)0u&~OYALL#EZgkAq+KlDyr@kZWzaLM@b9vjsB17=svBkc3thKrYS!w4tb?q zOU^?KM`H(TQ9{Vm-1GLR%fWE)QZ|*^cm&pRNz)8e~=>5le@?T@{9Sed|x3+XeMqG z{}H!~OU1tEEmDPDLTABOIM0veL-~u`bS{Xyi>L@959lCjq`S2ST9P_k<Q20rR5|a7Nd>7uq?d67YdQ{#Yi8r}N2h%`$KUpJ`BFVet z)$r>rxkRp`Oi_-b&evBLs25c)t%tT*v$9hWEk=)Xh`2}(?i^>}NAtJ&I>JUFQ-~AW zh%us<_*OU~Oc1IIMTof(d^P?#w~}kX<&eLi%_==YzlVSKYTs*l$dS70ZDo{VR-VWY zU~DRmUP?2;`? zWo5XsOnIXCsvXr;sC^c#pSD5!s72H9^g3$qU~-sfWDvKV)A8T)`*}~{2UuDYz6c4z zabYr0%|ar-n;*tkBb#E_K-aESIfAsTq8tQHeVN(ej=QQJ}ng53*kaG ze-4q{3N`mJw+?kkCD+MB;AYbebO06TRc($Iq`gunhgtyogbnm54J4z;Uhs|MmZNizMP$81Rr;T>UD%9D`@Ik?6!O>bZeKov z&*YAAGq}230Xag3lZxa6{S&x6eXjkYRnc+~JI&QRWffFn6;LlJUlbp;ojOxJ3Ex)I zhH6`2_dK%LEZ=d1A9+%;}3*NdycS;$s_mg9>rijMslHk>ZML>Yd!t3byNl>8WN$6- z-9u7HBsYrN$>qYsQ~2wA9*?s>{{~sLi66wr@&fYq6gL&sFN8}W*T~Q0J7OaL0=F}@ z(0AG5W}JgOM;s2uZ>DAXFCw!u^y-85m-Z8C ze}Q@sInzOHt+vI_rRr`qLCsYow6@v=ZI^aeqre>w+-K<68S(688|cn98;1{JC%B68enqNi?$eCS69m(em^)`ooc0C7jMqsI%08 zP^X`u6erY2s)GD!qm4lZ-PTf358Bb`(5fV4QFAhxoFK1B5Nx;@wXl?H&Hv0V<=69b z`H|=wEAu*ZHD|dE(2H8or2QLat!n15X}zyhF+n|QTOYj<9G_i zAA<-oLACNRWHnT4jOsX5+X^2fprZ2_lS`7$ct9U;E&oFZ80>dyk-PvqZX;f zpcfbeZTuT5nyINc-M6D-G5-Yi>!88VyD4tmLK4cwqk}n!m`+1ff8<_37ym+TjYS2D z=DZP8FTr*>84bRnq!`(70(Ec*aDC}lsKR<}5ELRz3x{8uYu#Y?MX>R8?WN|>d}&j# zoe5pNN>izf-l`+^zYRQ!h!M6N#jWAagXcT$Id_>m0oEe;}_PYu_}UR)ancMYbP6|C&R2 zQW=>zmF&Q|`x7aL3O53gdlY$d85Z7(D4U4WW^3e+9%tR>awTi*u0`wd@dZ zM`6VZ=%Ev}z1jlAQ5^EAn>G&J`D(m#Rr`dz^`SLU{l;MSA!u9%aI2yB{t4CPH0~2h zq&n9PF@2Cb3@zTq{m#vSGIqh;gixsCC-RsaAnP!@7jSv-eT)Wd#$Vu`Qkrf5a8jX%(Gnj6I zE{@`QLZiYsN;09~XJD5l!0m*4DL%L>`Pgme$*4#Xh^%z&U-XL8w8^mcJoHhAw4;dQ z6!~K#Qi8~e<$A-?v%z{2o_&Yce)xl_EZh&cfGV^WZ2KXqB8eWjPjR+d zPUoQVH>5%E@GI>UI+@kDPH5+FqJM`TPQ)iQX&n6#^2S%ycKGEAlO>TJ4Escpw1;jP>Etm0J8TJ;`u1u0v>&7BispgKnt&+ z+MPfQpU__5RUuH#h~yTuJFGGnT@`*?i>Q)l2>5m-W5IVPxlG=odk;fT{yps59!e3- zMc_>DB3a}qKHWuDl9|B8olKlhMBqL}{%!$}UbH>V{8YSFHUfKU zO-EqXQgl@p;N2XkRVD1b8+2efR=tdxluvw7bz))P@3;yW{+tc(y#d?PWHZiT<4AwE zcYTOLnSYPbZ8&$20B&_^qBiY0knbbDK0%KinkV(AHGtX&Gk$@>>_#0a!>vH-LpMf~ z`R+`5Nz#d#D~~L$iD(Mpyf~F)lT_SuIgM(t3T%Hw9cn@6ytB~@;P=}f-GWxzt;^c79xXLM86|W#FjUP$Z3eP&rsy+6(b|Kvi+za@|7vP$)LJSxTfpV-M z`%&W(pjtAa=m99nz<7oGcvs18jAdjNawwj(fsG;&&3W+eZP@J~EcibJ z<| zr_cp{!cf4s5~+o?hC(@(qpqGs4!=kIX5vZ*>O*n^@9iWT$s$-}JQSlN=9dGm1g(2R zAArLitT~&GM)brYXTlJ{VHown^*g*b9N9ewY`4P37qHJS?kw^EZbR640Jtmw*d(fRGO>cKYyk$DGpK7fdsi`Dy~n`nT%i3WO8^o`xYb{M*;Il%n`cLmPFyU!34c~pZs zN8+~w9Z}cDKmnJ6+et*x1EAhRY@fxeT~LeV$g=71MKA2IA?Amm2C{g5gOx5qaev2o zXDV{IJJ1?{b#p{=uh$x%>*i2iPRx2-MF)%g1d04y$Rf_ zz&(ev%MPf?O0b=Pef5JrwghSvti=9?HVe2}uj9+;8KSUK8z}TJ^g8pQ9eaRx1(oMIxbFeiHExxf1S@yP`L8LW zD#{(r3VNg@taKiHw}a6yz#Rs>IE-$zKcaXdY_Nc?hBbDgdR#;d;(0QpzoY$o`vH;{MZZp~)AvjTP) zi_<|@pf<+bD0tTl{}$n-QHFa2YQGlBFcr81-Rd+Doy9D?UJSNdu&X0rdjm0*GfJb+%I~+RrD-`0d|E|Su)Jeb{ zNcy5m8lyH9o?2H{jvD@bC&So&wBq7?beq7htY|UhKy>i``uV+c)5A#qfc} zqJUcmolaM*J^{#!(Lt@n>2?M7FbnUD18(pCd|L}K7=Ya6-71-iRi0qQ%UF3ga2Eq@ z0>%{R;;(qU0v6s2Tb#g*`xFL)gFTV z48-T{QFWPj0}zYsUlCAKVY`P|^)PTZ17{9;is`^zjIjh7wH2QngFS8m_a#u%VWSct zd;N!73#&4|!-2FA`T8p`8R}%zM~2F*(Fj$y76}8c8K??&&f@AN*1U|BcSDgDBWvcn zFUEDV8}|foFT*B}5zEZGCCDOz6+*zEI@W9p|NRJV6QL3Fa7_l&$*6h*QE&UYKV`Vg z%3`-72JU94R@qnw-~K^&xNUq6GwuVIDMk)_s{xnst%%5~gATeA z*8dT>(=g`a=XjtFfoFSQG()D*Nx1|}=-*6__4AlL2 z_Z&tU+a%1-!?zSF!d_uG)m3rZFdi8Ffi~?w?18vG>l_H+ZdPqDvrnh9L1JB#!{tq2~mST`QL`a>-z z1A8LIKs@j7#%&GcShr3^V4ohaGnyFSvbahD-&_AN-V8ieXYqG0(BoqmCs1)8!pcwK z+a#Ke!Mv*>k3vbX+rLd<$=(=00d)i(hq*o51Gud*nvmL<6$Nas|DuZJZwf5;27Lbo z?m5)gJ-}sN-GLJy!#siaZ@I1f3UgENjUqQ+9;*bvb}WONpt3T?Ke#dby1Dj1mG1%@ zH-Uw#yS*EVc+k7~TCw*u*pA_rdH4{}b^x1QhoFoX+@8IK&mW^>P6ciWaHaqFGRD=x zqX|YFko%&_GISPA@z_h8+qboG`l|@b1OvA$iW-bPcW|qA^h>{4fje#XuWHGz;0cyN^v~hE7 zf=^lP3&RM+cgpy(c+SRZAKkdO!S{@tCwn}K`xlpR-FN40f*ZBWyCv@IWo!7j{Tl_` zSXi|ca0dXB**Ff}KqHKr_^hHEmDz?>Kn-4EsF`j%m+`$0Z=S(*1dkVhdL1@kYVjDT zOfhm14U8@GuZVR*!66FK8U_C{#;hx6_HBhL7JOrY8w=E$Zl44K)eGk$JHDUm=9>b( zEQcAx<9K8`!Ja>KTlpzIV>U^}To%oYFVic=AP}oo0jHX7A{F@2nR5zQ)=-6($(O4{90OD;7#+BKav1Pa{n(c1?>JcM>Sczp)lpCcL z*tUVao4W_&S{I+N&si+9++`Jz^>l2NG_3X(5uJd0vX6my){TADje8GF6Y$wbjC9P* z#5Z!?ImBZX5nO}8rVKY0Xl>kVn_?GDNmby+U@(;`i+mo8nRgYeVFwGA9f|aV8}~X; zZ@aHDwh4H@OfS;iK4F!Jsg(#^Gx!Gnhsz?m5&X(9Tfx4p{=@(|0{Dz=FfiGvh;{5% zU^6>sV(l`Ge(Yv>9Xq&`ND89ePr1#;(H2Wk}=41ugUDpeEa~&4=^5KB!KNJoMJv;Mmk0= zFd1?gDvwo|;)dcJT@e_yf!G+h47oP;!QL(78ixHbWD!FGDzkGD)+@r=Z1q>bN`$2u z<^w!?1g`A;WOpR99Wqq5UkN8r)=#obVv)sgV}RNaJR1YCCN5@$Pz)9W|F0R$Ly|i} z*jmhnsaT!a`Zmy>;Ch8eW@EOaR4`@UwPUAc8p-m3RZ zV^#(xL#+%ulxcEVB#ZyyvR*@>g&4Uwxo6{Io@BNyW6C_sEX>aJX_%Aip3C|wwqxd7 zJ-ntTzOZ5_PK6QR%Y0fD&nvrMv#bquf6mTPOfy&wV>)NWS|z|_icrS)i95Cuftdh2 z=G!v0U~|}9t9!TXyX@Wuv$GdgW;KqXl?@if%*vtQ%XU>Zhk1tCnW-epV8(;RD#J~5 zUy1n1EX-apzAS$jU)J3)T;?OTbG_SVfxu+QEQ-oJ8iqYE3zylM?Thhc`c}r4RRzht zCR>*wFq{wgjbB*|vsWyCn3b72mbe+S{9|fW#@H9Dv6y8Zj(~s5c!%K?voX`;P`6!} zrj}KF#+StvQ_8XoF0(6(F6P%{AeM1WcOw>J9?K!7u4Qc5N*=HyvnKO!nOB*o%h>w5 ztsID1%)4d2Wm&{xQvwI3LYcr|wl0g|G7Bf;lh1fJ7Z;nwkjrdTR#nVck*(I3?DUP;=~#Mo5Aicv-w%!giISdITBCZ|0WI}G0}i$?6bP{2w~sr zhv)I#JM@U}-JwqfJnuba^0<+a9j45jJZjpU$lmNHUQHW2I handle_call(join_lobby, From, State) -> Token = helpers:get_new_token(), Players = State#co_state.players, - io:format("join_lobby from: ~p~n", [From]), {Pid, _Sock} = From, NewState = State#co_state{players = [{Pid, Token} | Players]}, back_up(NewState), diff --git a/src/ggs_gamevm_p.erl b/src/ggs_gamevm_p.erl index bd1beb3..4d4cd67 100644 --- a/src/ggs_gamevm_p.erl +++ b/src/ggs_gamevm_p.erl @@ -191,8 +191,9 @@ intern_start(Table, Player) -> true -> ggs_table:notify_all_players(Table, {"game", "start"}), ggs_db:setItem(Table, local_storage, ball, {50,50,1,1}), - spawn(fun() -> game_loop([Table]) end); - false -> + Pid = spawn(fun() -> game_loop([Table]) end), + Pid ! tick; + _Other -> ggs_table:send_command(Table, Player, {"game", "wait"}) end; player2 -> @@ -202,8 +203,9 @@ intern_start(Table, Player) -> true -> ggs_table:notify_all_players(Table, {"game", "start"}), ggs_db:setItem(Table, local_storage, ball, {50,50,-1,-1}), - spawn(fun() -> game_loop([Table]) end); - false -> + GameLoop = spawn(fun() -> game_loop([Table]) end), + GameLoop ! tick; + _Other -> ggs_table:send_command(Table, Player, {"game", "wait"}) end end. @@ -215,18 +217,19 @@ game_loop([Table]) -> Ball = {BX, BY, SX, SY}, ggs_db:setItem(Table, local_storage, ball, Ball), ggs_table:notify_all_players(Table, {"ball", int2str(BX) ++ "," ++ int2str(BY)}), - check_ball(Table, Ball); + check_ball(Table, Ball), + timer:send_after(50, tick), + game_loop([Table]); 'EXIT' -> exit(normal) - after 5000 -> - self() ! tick end. int2str(Int) -> lists:flatten(io_lib:format("~p", [Int])). step_ball({BX, BY, SX, SY}) -> - {BX + SX, BY + SY, SX, BY}. + Ball = {BX + SX, BY + SY, SX, SY}, + Ball. check_ball(Table, {BX, BY, SX, SY}) -> % check up and down bounds @@ -237,43 +240,52 @@ check_ball(Table, {BX, BY, SX, SY}) -> NewSY = SY end, - % check intersection with player1 + % check intersection with a player P1Y = ggs_db:getItem(Table, local_storage, player1_y), - case check_intersect({0, P1Y, 10, 30}, {BX, BY, 10, 10}) of - true -> - SX1 = -SX; - false -> - SX1 = SX - end, - - % check intersection with player2 P2Y = ggs_db:getItem(Table, local_storage, player2_y), - case check_intersect({90, P2Y, 10, 30}, {BX, BY, 10, 10}) of + case (check_intersect({0, P1Y, 10, 30}, {BX, BY, 10, 10}) or check_intersect({99, P2Y, 10, 30}, {BX, BY, 10, 10})) of true -> - SX2 = - SX1; + NewSX = -SX, + case NewSX of + -1 -> + ggs_table:notify_all_players(Table, {"sound", "ping"}); + 1 -> + ggs_table:notify_all_players(Table, {"sound", "pong"}) + end; false -> - SX2 = SX1 + NewSX = SX end, - ggs_db:setItem(Table, local_storage, ball, {BX, BY , SX2, NewSY}), + ggs_db:setItem(Table, local_storage, ball, {BX, BY , NewSX, NewSY}), + % check for point player1 - if BX > 90 -> - Player1Points = ggs_db:getItem(Table, local_storage, player1_points), - NewPlayer1Points = Player1Points + 1, - ggs_db:setItem(Table, local_storage, player1_points, NewPlayer1Points), - ggs_table:notify_all_players(Table, {"player1_points", int2str(NewPlayer1Points)}), - exit(normal) + case BX > 100 of + true -> + Player1Points = ggs_db:getItem(Table, local_storage, player1_points), + NewPlayer1Points = Player1Points + 1, + ggs_db:setItem(Table, local_storage, player1_points, NewPlayer1Points), + ggs_table:notify_all_players(Table, {"player1_points", int2str(NewPlayer1Points)}), + exit(normal); + false -> + ok end, % check for point player2 - if BX < 0 -> - Player2Points = ggs_db:getItem(Table, local_storage, player2_points), - NewPlayer2Points = Player2Points + 1, - ggs_db:setItem(Table, local_storage, player2_points, NewPlayer2Points), - ggs_table:notify_all_players(Table, {"player2_points", int2str(NewPlayer2Points)}), - exit(normal) + case BX < 0 of + true -> + Player2Points = ggs_db:getItem(Table, local_storage, player2_points), + NewPlayer2Points = Player2Points + 1, + ggs_db:setItem(Table, local_storage, player2_points, NewPlayer2Points), + ggs_table:notify_all_players(Table, {"player2_points", int2str(NewPlayer2Points)}), + exit(normal); + false -> + ok end. - - -check_intersect({AX, AY, AW, AH}, {BX, BY, BW, BH}) -> - not (BX > (AX + AW)) or ((BX + BW) < AX) or (BY > (AY + AH)) or ((BY + BH) < AY). + + +check_intersect({AX1, AY1, AW, AH}, {BX1, BY1, BW, BH}) -> + AX2 = AX1 + AW, + AY2 = AY1 + AH, + BX2 = BX1 + BW, + BY2 = BY1 + BH, + (AX1 < BX2) and (AX2 > BX1) and (AY1 < BY2) and (AY2 > BY1). diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 9146799..d6e939e 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -40,7 +40,6 @@ start_link(Socket) -> %% @spec notify(Player::Pid(), From::Pid(), %% {Command::String(), Message::string()}) -> ok notify(Player, From, Message) -> - erlang:display(Message), {Cmd, Data} = Message, Parsed = ggs_protocol:create_message(Cmd, "text","text", Data), Player ! {notify, From, Parsed}. @@ -62,14 +61,10 @@ stop(_Player,_Table) -> loop(#pl_state{token = _Token, socket = Socket, table = Table} = State) -> receive {tcp, Socket, Data} -> % Just echo for now.. - io:format("Parsing via protocol module..~n"), - erlang:display(Data), Parsed = ggs_protocol:parse(Data), - erlang:display(Parsed), self() ! Parsed, loop(State); {notify, _From, Message} -> - erlang:display(Message), gen_tcp:send(Socket, Message), loop(State); % Below are messages generated by the parser diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 57785e8..909f789 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -44,7 +44,6 @@ remove_player(Table, Player) -> %% @doc Get a list of all player processes attached to this table get_player_list(TableToken) -> TablePid = ggs_coordinator:table_token_to_pid(TableToken), - erlang:display(TablePid), gen_server:call(TablePid, get_player_list). % @doc stops the table process @@ -88,7 +87,6 @@ handle_call({remove_player, Player}, _From, #state { players = Players } = State {reply, ok, State#state { players = Players -- [Player] }}; handle_call(get_player_list, _From, #state { players = Players } = State) -> - io:format("Players: ~p~n", [Players]), TokenPlayers = lists:map( fun (Pid) -> ggs_coordinator:player_pid_to_token(Pid) end, Players), {reply, {ok, TokenPlayers}, State}; diff --git a/tests/tick.erl b/tests/tick.erl new file mode 100644 index 0000000..0d21220 --- /dev/null +++ b/tests/tick.erl @@ -0,0 +1,26 @@ +-module(tick). +-export([start/0]). + +start() -> + spawn(fun() -> loop() end). + +loop() -> + receive + tick -> + erlang:display("tick!"), + timer:send_after(500, tick), + loop(); + 'EXIT' -> + exit(normal) + end. + +% 1> c(tick). +% {ok,tick} +% 2> Pid = tick:start(). +% <0.38.0> +% % Nothing happens :-( + +% When I send it myself then it responds +% 3> Pid ! tick. +% tick +% 5> From 79052830ad70e68207e87e679c0314ac966b1786 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Sun, 6 Mar 2011 05:37:48 +0100 Subject: [PATCH 105/192] sound fix --- games/Pong/Classes/GGSNetwork.m | 2 +- games/Pong/Pong.xcodeproj/jeena.mode1v3 | 32 +++---- games/Pong/Pong.xcodeproj/jeena.pbxuser | 109 +++++++++++++++--------- 3 files changed, 88 insertions(+), 55 deletions(-) diff --git a/games/Pong/Classes/GGSNetwork.m b/games/Pong/Classes/GGSNetwork.m index 932a734..a436f13 100644 --- a/games/Pong/Classes/GGSNetwork.m +++ b/games/Pong/Classes/GGSNetwork.m @@ -11,7 +11,7 @@ @implementation GGSNetwork -#define GGS_HOST @"home.jeena.net" +#define GGS_HOST @"jeena.net" #define GGS_PORT 9000 #define NO_TIMEOUT -1 diff --git a/games/Pong/Pong.xcodeproj/jeena.mode1v3 b/games/Pong/Pong.xcodeproj/jeena.mode1v3 index e793482..d4bc790 100644 --- a/games/Pong/Pong.xcodeproj/jeena.mode1v3 +++ b/games/Pong/Pong.xcodeproj/jeena.mode1v3 @@ -271,13 +271,13 @@ PBXSmartGroupTreeModuleOutlineStateSelectionKey - 8 + 11 1 0 PBXSmartGroupTreeModuleOutlineStateVisibleRectKey - {{0, 0}, {186, 1238}} + {{0, 0}, {186, 1086}} PBXTopSmartGroupGIDs @@ -289,14 +289,14 @@ GeometryConfiguration Frame - {{0, 0}, {203, 1256}} + {{0, 0}, {203, 1104}} GroupTreeTableConfiguration MainColumn 186 RubberWindowFrame - 1164 121 1267 1297 0 0 2560 1418 + 112 246 1267 1145 0 0 2560 1418 Module PBXSmartGroupTreeModule @@ -314,7 +314,7 @@ PBXProjectModuleGUID 1CE0B20306471E060097A5F4 PBXProjectModuleLabel - PongViewController.m + GGSNetwork.m PBXSplitModuleInNavigatorKey Split0 @@ -322,11 +322,11 @@ PBXProjectModuleGUID 1CE0B20406471E060097A5F4 PBXProjectModuleLabel - PongViewController.m + GGSNetwork.m _historyCapacity 0 bookmark - 1F36A0221323417E004E7A99 + 1F36A02B1323454A004E7A99 history 1FBEBF151319F5C1006D5497 @@ -334,11 +334,11 @@ 1FBEC002131AA71C006D5497 1FBEC05C131B085D006D5497 1F369ED81323101D004E7A99 - 1F369F33132317A8004E7A99 - 1F369F6C13232750004E7A99 1F369FE61323395B004E7A99 1F36A0201323417E004E7A99 - 1F36A0211323417E004E7A99 + 1F36A0291323454A004E7A99 + 1F36A02A1323454A004E7A99 + 1F369F6C13232750004E7A99 SplitCount @@ -350,14 +350,14 @@ GeometryConfiguration Frame - {{0, 0}, {1059, 1251}} + {{0, 0}, {1059, 1099}} RubberWindowFrame - 1164 121 1267 1297 0 0 2560 1418 + 112 246 1267 1145 0 0 2560 1418 Module PBXNavigatorGroup Proportion - 1251pt + 1099pt ContentConfiguration @@ -370,9 +370,9 @@ GeometryConfiguration Frame - {{0, 1256}, {1059, 0}} + {{0, 1104}, {1059, 0}} RubberWindowFrame - 1164 121 1267 1297 0 0 2560 1418 + 112 246 1267 1145 0 0 2560 1418 Module XCDetailModule @@ -544,7 +544,7 @@ /Users/jeena/Student/GGS/games/Pong/Pong.xcodeproj WindowString - 1164 121 1267 1297 0 0 2560 1418 + 112 246 1267 1145 0 0 2560 1418 WindowToolsV3 diff --git a/games/Pong/Pong.xcodeproj/jeena.pbxuser b/games/Pong/Pong.xcodeproj/jeena.pbxuser index c33f163..48544a7 100644 --- a/games/Pong/Pong.xcodeproj/jeena.pbxuser +++ b/games/Pong/Pong.xcodeproj/jeena.pbxuser @@ -45,7 +45,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 60"; rLen = 0; - rLoc = 1537; + rLoc = 1532; rType = 0; vrLen = 2676; vrLoc = 860; @@ -105,7 +105,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 14"; rLen = 0; - rLoc = 212; + rLoc = 207; rType = 0; vrLen = 2278; vrLoc = 0; @@ -115,7 +115,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 17"; rLen = 0; - rLoc = 258; + rLoc = 253; rType = 0; vrLen = 2268; vrLoc = 26; @@ -125,7 +125,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 39"; rLen = 0; - rLoc = 828; + rLoc = 823; rType = 0; vrLen = 2358; vrLoc = 29; @@ -135,7 +135,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 39"; rLen = 0; - rLoc = 828; + rLoc = 823; rType = 0; vrLen = 2358; vrLoc = 29; @@ -185,7 +185,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 64"; rLen = 0; - rLoc = 1755; + rLoc = 1750; rType = 0; vrLen = 2447; vrLoc = 328; @@ -195,7 +195,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 64"; rLen = 0; - rLoc = 1755; + rLoc = 1750; rType = 0; vrLen = 2447; vrLoc = 328; @@ -235,7 +235,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 64"; rLen = 0; - rLoc = 1755; + rLoc = 1750; rType = 0; vrLen = 2447; vrLoc = 328; @@ -245,7 +245,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 39"; rLen = 0; - rLoc = 799; + rLoc = 794; rType = 0; vrLen = 2464; vrLoc = 329; @@ -255,7 +255,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 69"; rLen = 0; - rLoc = 1845; + rLoc = 1840; rType = 0; vrLen = 2490; vrLoc = 369; @@ -265,7 +265,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 40"; rLen = 0; - rLoc = 799; + rLoc = 794; rType = 0; vrLen = 2021; vrLoc = 3; @@ -275,7 +275,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 41"; rLen = 0; - rLoc = 828; + rLoc = 823; rType = 0; vrLen = 2021; vrLoc = 3; @@ -285,7 +285,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 43"; rLen = 0; - rLoc = 865; + rLoc = 860; rType = 0; vrLen = 2028; vrLoc = 3; @@ -295,7 +295,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 43"; rLen = 0; - rLoc = 865; + rLoc = 860; rType = 0; vrLen = 2174; vrLoc = 29; @@ -305,7 +305,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 43"; rLen = 0; - rLoc = 865; + rLoc = 860; rType = 0; vrLen = 2205; vrLoc = 122; @@ -315,7 +315,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 43"; rLen = 0; - rLoc = 865; + rLoc = 860; rType = 0; vrLen = 2271; vrLoc = 1750; @@ -375,7 +375,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 14"; rLen = 0; - rLoc = 203; + rLoc = 198; rType = 0; vrLen = 2036; vrLoc = 0; @@ -385,7 +385,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 14"; rLen = 0; - rLoc = 203; + rLoc = 198; rType = 0; vrLen = 2133; vrLoc = 3; @@ -395,7 +395,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 14"; rLen = 0; - rLoc = 203; + rLoc = 198; rType = 0; vrLen = 2110; vrLoc = 26; @@ -405,7 +405,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 20"; rLen = 0; - rLoc = 534; + rLoc = 529; rType = 0; vrLen = 2271; vrLoc = 1571; @@ -415,7 +415,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 20"; rLen = 0; - rLoc = 534; + rLoc = 529; rType = 0; vrLen = 2271; vrLoc = 1571; @@ -465,7 +465,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 20"; rLen = 0; - rLoc = 534; + rLoc = 529; rType = 0; vrLen = 2273; vrLoc = 1569; @@ -475,7 +475,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 35"; rLen = 0; - rLoc = 865; + rLoc = 860; rType = 0; vrLen = 2277; vrLoc = 3; @@ -485,7 +485,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 33"; rLen = 0; - rLoc = 862; + rLoc = 857; rType = 0; vrLen = 2264; vrLoc = 26; @@ -495,7 +495,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 20"; rLen = 0; - rLoc = 534; + rLoc = 529; rType = 0; vrLen = 2312; vrLoc = 29; @@ -505,7 +505,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 34"; rLen = 0; - rLoc = 865; + rLoc = 860; rType = 0; vrLen = 2234; vrLoc = 3; @@ -515,7 +515,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 14"; rLen = 0; - rLoc = 203; + rLoc = 198; rType = 0; vrLen = 2099; vrLoc = 26; @@ -525,7 +525,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 14"; rLen = 0; - rLoc = 203; + rLoc = 198; rType = 0; vrLen = 2171; vrLoc = 26; @@ -675,7 +675,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 14"; rLen = 0; - rLoc = 203; + rLoc = 198; rType = 0; vrLen = 2403; vrLoc = 236; @@ -715,7 +715,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 14"; rLen = 0; - rLoc = 203; + rLoc = 198; rType = 0; vrLen = 2403; vrLoc = 236; @@ -725,7 +725,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 69"; rLen = 0; - rLoc = 1845; + rLoc = 1840; rType = 0; vrLen = 2623; vrLoc = 1240; @@ -735,7 +735,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 69"; rLen = 0; - rLoc = 1845; + rLoc = 1840; rType = 0; vrLen = 2571; vrLoc = 1292; @@ -1100,6 +1100,36 @@ vrLen = 2239; vrLoc = 2533; }; + 1F36A0291323454A004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 28D7ACF70DDB3853001CB0EB /* PongViewController.m */; + name = "PongViewController.m: 166"; + rLen = 0; + rLoc = 4434; + rType = 0; + vrLen = 1802; + vrLoc = 0; + }; + 1F36A02A1323454A004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */; + name = "GGSNetwork.h: 28"; + rLen = 0; + rLoc = 748; + rType = 0; + vrLen = 910; + vrLoc = 0; + }; + 1F36A02B1323454A004E7A99 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; + name = "GGSNetwork.m: 14"; + rLen = 0; + rLoc = 198; + rType = 0; + vrLen = 1862; + vrLoc = 0; + }; 1FA0569112F0B513003F1373 /* Pong */ = { isa = PBXExecutable; activeArgIndices = ( @@ -1173,16 +1203,16 @@ }; 1FBEBFED131A97F8006D5497 /* GGSNetwork.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {998, 1171}}"; + sepNavIntBoundsRect = "{{0, 0}, {998, 1042}}"; sepNavSelRange = "{748, 0}"; sepNavVisRange = "{0, 910}"; }; }; 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {998, 2055}}"; - sepNavSelRange = "{1845, 0}"; - sepNavVisRange = "{1292, 2571}"; + sepNavIntBoundsRect = "{{0, 0}, {998, 2175}}"; + sepNavSelRange = "{198, 0}"; + sepNavVisRange = "{0, 1862}"; }; }; 1FBEC001131AA71C006D5497 /* PBXTextBookmark */ = { @@ -1257,7 +1287,7 @@ fRef = 1FBEBFEE131A97F8006D5497 /* GGSNetwork.m */; name = "GGSNetwork.m: 44"; rLen = 108; - rLoc = 971; + rLoc = 966; rType = 0; vrLen = 2551; vrLoc = 369; @@ -1303,7 +1333,7 @@ uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {998, 5070}}"; sepNavSelRange = "{4434, 0}"; - sepNavVisRange = "{2533, 2239}"; + sepNavVisRange = "{0, 1802}"; }; }; 29B97313FDCFA39411CA2CEA /* Project object */ = { @@ -1453,6 +1483,9 @@ 1F36A0201323417E004E7A99 /* PBXTextBookmark */ = 1F36A0201323417E004E7A99 /* PBXTextBookmark */; 1F36A0211323417E004E7A99 /* PBXTextBookmark */ = 1F36A0211323417E004E7A99 /* PBXTextBookmark */; 1F36A0221323417E004E7A99 /* PBXTextBookmark */ = 1F36A0221323417E004E7A99 /* PBXTextBookmark */; + 1F36A0291323454A004E7A99 /* PBXTextBookmark */ = 1F36A0291323454A004E7A99 /* PBXTextBookmark */; + 1F36A02A1323454A004E7A99 /* PBXTextBookmark */ = 1F36A02A1323454A004E7A99 /* PBXTextBookmark */; + 1F36A02B1323454A004E7A99 /* PBXTextBookmark */ = 1F36A02B1323454A004E7A99 /* PBXTextBookmark */; 1FBEBF151319F5C1006D5497 = 1FBEBF151319F5C1006D5497 /* PlistBookmark */; 1FBEC001131AA71C006D5497 = 1FBEC001131AA71C006D5497 /* PBXTextBookmark */; 1FBEC002131AA71C006D5497 = 1FBEC002131AA71C006D5497 /* PBXTextBookmark */; From 7780459cd3519e8fab3529447d62ce25b7b01bb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Tue, 22 Mar 2011 18:37:09 +0100 Subject: [PATCH 106/192] Added report --- doc/report/#report.lyx# | 786 ++++++ doc/report/LO_CHGU_cen2rCMYK.eps | Bin 0 -> 551622 bytes doc/report/Thesis_Template.lyx | 352 +++ .../UTHM-Thesis-Classic-authoryear-V-05.lyx | 2262 +++++++++++++++++ doc/report/gu_logo.png | Bin 0 -> 15026 bytes doc/report/report.lyx | 984 +++++++ doc/report/report.lyx~ | 792 ++++++ doc/report/report.pdf | Bin 0 -> 155428 bytes doc/report/supervisors.png | Bin 0 -> 24524 bytes doc/report/system_structure.png | Bin 0 -> 56384 bytes games/GGSChat/chat.py | 2 +- 11 files changed, 5177 insertions(+), 1 deletion(-) create mode 100644 doc/report/#report.lyx# create mode 100644 doc/report/LO_CHGU_cen2rCMYK.eps create mode 100644 doc/report/Thesis_Template.lyx create mode 100644 doc/report/UTHM-Thesis-Classic-authoryear-V-05.lyx create mode 100644 doc/report/gu_logo.png create mode 100644 doc/report/report.lyx create mode 100644 doc/report/report.lyx~ create mode 100644 doc/report/report.pdf create mode 100644 doc/report/supervisors.png create mode 100644 doc/report/system_structure.png diff --git a/doc/report/#report.lyx# b/doc/report/#report.lyx# new file mode 100644 index 0000000..64e2c8a --- /dev/null +++ b/doc/report/#report.lyx# @@ -0,0 +1,786 @@ +#LyX 1.6.7 created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass report +\begin_preamble +\usepackage{indentfirst} +\usepackage{tocloft} +\usepackage{calc} +\date{} +\usepackage[section] {placeins} +\def\myClearpage{% + \ifvmode + \ifnum \@dbltopnum =\m@ne + \ifdim \pagetotal <\topskip + \hbox{}% + \fi + \fi + \fi +% \newpage + \write\m@ne{}% + \vbox{}% + \penalty -\@Mi +} +\def\myCleardoublepage{\myClearpage\if@twoside \ifodd\c@page\else + \hbox{}\if@twocolumn\hbox{}\fi\fi\fi} +\usepackage{morefloats} +\usepackage{graphicx} +\usepackage{subfig} +\usepackage{tocloft} +\renewcommand{\cftchapfont}{\bfseries} +\renewcommand{\cftchappagefont}{\bfseries} +\renewcommand{\cftchappresnum}{Chapter } +\renewcommand{\cftchapnumwidth}{6em} +\oddsidemargin 0.5in +\textwidth 6in +\topmargin 0.0in +\textheight 8.0in +\setlength\topskip{24pt} +\footskip 0.75in +\end_preamble +\use_default_options true +\language english +\inputencoding auto +\font_roman lmodern +\font_sans default +\font_typewriter default +\font_default_family rmdefault +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize default +\spacing double +\use_hyperref false +\papersize default +\use_geometry true +\use_amsmath 1 +\use_esint 1 +\cite_engine natbib_authoryear +\use_bibtopic false +\paperorientation portrait +\paperwidth 11in +\paperheight 8.5in +\leftmargin 1.25in +\topmargin 1in +\rightmargin 1in +\bottommargin 1.7in +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Title +Generic Game Server +\end_layout + +\begin_layout Author +Jonatan Pålsson +\begin_inset Newline newline +\end_inset + +Niklas Landin +\begin_inset Newline newline +\end_inset + +Richard Pannek +\begin_inset Newline newline +\end_inset + +Matias Petterson +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +pagenumbering{roman} +\end_layout + +\begin_layout Plain Layout + + +\backslash +setcounter{page}{5} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand +\backslash +contentsname{Table of Contents} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cfttoctitlefont}{ +\backslash +hfill +\backslash +Large} +\backslash +renewcommand{ +\backslash +cftaftertoctitle}{ +\backslash +hfill} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand +\backslash +cftpartdotsep{6.6} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand +\backslash +cftchapdotsep{6.6} +\end_layout + +\end_inset + + +\begin_inset CommandInset toc +LatexCommand tableofcontents + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{List of Tables} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftlottitlefont}{ +\backslash +hfill +\backslash +Large} +\backslash +renewcommand{ +\backslash +cftafterlottitle}{ +\backslash +hfill} +\backslash +renewcommand{ +\backslash +cfttabpresnum}{Table~} +\backslash +setlength +\backslash +cfttabnumwidth{60pt} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset FloatList table + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{List of Figures} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftloftitlefont}{ +\backslash +hfill +\backslash +Large} +\backslash +renewcommand{ +\backslash +cftafterloftitle}{ +\backslash +hfill} +\backslash +renewcommand{ +\backslash +cftfigpresnum}{Figure~} +\backslash +setlength +\backslash +cftfignumwidth{60pt} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset FloatList figure + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +pagenumbering{arabic} +\end_layout + +\begin_layout Plain Layout + + +\backslash +setcounter{page}{1} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Chapter +Introduction +\end_layout + +\begin_layout Section +Background +\end_layout + +\begin_layout Section +Purpose +\end_layout + +\begin_layout Section +Challenges +\end_layout + +\begin_layout Standard +Challenges lies mainly in providing a reliable, high-performing server and + at the same time make it easy to use for game developers. + +\end_layout + +\begin_layout Subsection +Basis +\end_layout + +\begin_layout Section +Delimitations +\end_layout + +\begin_layout Subsection +Types of games +\end_layout + +\begin_layout Standard +In theory no limitations, but in reality it will be limitations. + Many factors are involved here. + Implementation of protocol, storage possibilities, server capacity, language + support. + In real time games a low latency is very important not a high bandwidth + because the games already send very little data, ~ 80 bytes. + Lag of below 250 ms is good, lag up to 500 ms payable and beyond that the + lag is noticeable. +\end_layout + +\begin_layout Section +Method +\end_layout + +\begin_layout Subsection +Development process +\end_layout + +\begin_layout Standard +May be Extreme Programming(XP), need to check this out further. + Maybe adapt so we can say that we use a standardized software development + method. +\end_layout + +\begin_layout Subsubsection +Demand specification +\end_layout + +\begin_layout Subsection +Design +\end_layout + +\begin_layout Subsection +Testing and evaluation +\end_layout + +\begin_layout Standard +Can we use quickcheck? +\end_layout + +\begin_layout Chapter +Theory +\end_layout + +\begin_layout Subsection +Performance +\end_layout + +\begin_layout Standard +How many players can we have on a server? Performance differences between + games? e.g can one game have thousands players on a server and another only + have hundreds? Questions to be discussed here. + +\begin_inset Note Note +status open + +\begin_layout Plain Layout +Create a game with several thousand players, see how our server scales, + how can we improve the performance? Sharding isn’t very nice.. + alternatives? Improve the speed of sharding? +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Subsection +Choice of network protocol +\end_layout + +\begin_layout Standard +There are three main ways in which computer communication over the Internet + usually takes place; TCP, UDP and HTTP. + The first two are transport layer protocols, which are commonly used to + transport application layer protocols, such as HTTP. + TCP and UDP can not be used on their own, without an application layer + protocol on top. + Application layer protocols such as HTTP on the other hand needs a transport + layer protocol in order to work. + +\end_layout + +\begin_layout Subsubsection +HTTP +\end_layout + +\begin_layout Standard +Since HTTP is so widely used on the Internet today in web servers, it is + available on most Internet connected devices. + This means that if HTTP is used in GGS, firewalls will not pose problems, + which is a great benefit. + However, due to the intended usage of HTTP in web servers, the protocol + was designed to be stateless and client-initiated. + In order to maintain a state during a game session using HTTP, some sort + of token would have to be passed between client and server at all times, + much like how a web server works. + These facts combined makes HTTP unsuitable for our purposes, since GGS + requires a state to be maintained throughout a session, and also needs + to push data from the server to clients without the clients requesting + data. + It should also be mentioned that HTTP uses the TCP protocol for transport, + and what is said about TCP also applies to HTTP. + +\end_layout + +\begin_layout Subsubsection +UDP +\end_layout + +\begin_layout Standard +Many online games use UDP as the carrier for their application layer protocol. + UDP moves data across a network very quickly, however it does not ensure + that the data transferred arrives in consistent manner. + Data sent via UDP may be repeated, lost or out of order. + To ensure the data transferred is in good shape, some sort of error checking + mechanisms must be implemented. + UDP is a good choice for applications where it is more important that data + arrives in a timely manner than that all data arrives undamaged, it is + thus very suitable for media streaming, for example. + In GGS reliability of transfer was chosen before the speed of the transfer, + ruling out UDP as the transport later protocol. + +\end_layout + +\begin_layout Subsubsection +TCP +\end_layout + +\begin_layout Standard +For reliable transfers, TCP is often used on the Internet. + Built in to the protocol are the error checking and correction mechanisms + missing in UDP. + This ensures the consistency of data, but also makes the transfer slower + than if UDP had been used. + In GGS, data consistency is more important than transfer speeds, and thus + TCP is a better alternative than UDP. +\end_layout + +\begin_layout Subsection +Encryption +\end_layout + +\begin_layout Subsubsection +Performance penalties +\end_layout + +\begin_layout Subsection +Availability +\end_layout + +\begin_layout Standard +One important factor of a server is the availability, a server that you + can not connect to is a bad server. + Erlang has several features to increase the availability, for example hot + code replacement. + It is also critical to have a good design, we want to separate each part + of the server and thus avoiding that the whole server will crash. + +\end_layout + +\begin_layout Standard +\begin_inset Note Note +status open + +\begin_layout Plain Layout +Players are unsatisfied with the service of WoW Telecoms have the same problem + of having to migrate users from one node to another, this is called handover +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Subsection +Scalability +\end_layout + +\begin_layout Standard +Because P2P game architectures are a constant goal for cheaters and because + “Cheating is a major concern in network games as it degrades the experience + of the majority of players who are honest” and preventing cheating in P2P + game architectures is very difficult game developers try to use Client + - Server architectures which have a natural problem to scale. + In this paper we want to show some strategies to achieve scalability. +\end_layout + +\begin_layout Subsubsection +UUID +\end_layout + +\begin_layout Subsection +Security +\end_layout + +\begin_layout Standard +We only support languages running in a sandboxed environment. + Each game session is started in its own sandbox. + The sandboxing isolates the games in such a way that they can not interfere + with each other. + If sandboxing was not in place, one game could potentially modify the contents + of a different game. + A similar approach is taken with the persistent storage we provide. + In the storage each game has its own namespace, much like a table in a + relational database. + A game is not allowed to venture outside this namespace, and can because + of this not modify the persistent data of other games. +\end_layout + +\begin_layout Chapter +Overview +\end_layout + +\begin_layout Subsection +Techniques for ensuring reliability +\end_layout + +\begin_layout Standard +One of the main goals of the project is to achieve high reliability. + A highly reliable application is one crashes very, very rarely +\begin_inset Note Note +status open + +\begin_layout Plain Layout +CITATION NEEDED +\end_layout + +\end_inset + +. + There are some tools for creating reliable applications built in to Erlang. + +\end_layout + +\begin_layout Itemize +Links between processes. + When a process spawns a new child process, and the child process later + exits, the parent process is notified of the exit. + +\end_layout + +\begin_layout Itemize +Transparent distribution over a network of processors. + When several nodes participate in a network, it does not matter on which + of these machines a process is run. + Communication between processes does not depend on the node in which each + process is run. + +\end_layout + +\begin_layout Itemize +Hot code replacements. + Two versions of the same module can reside in the memory of Erlang at any + time. + This means that a simple swap between these versions can take place very + quickly, and without stopping the machine. +\end_layout + +\begin_layout Standard +These three features are some of the basic building blocks for more sophisticate +d reliability systems in Erlang. + Many times it is not necessary to use these features directly, but rather + through the design patterns described below. +\end_layout + +\begin_layout Subsubsection +Supervisor structure +\end_layout + +\begin_layout Standard +By linking processes together and notifying parents when children exit, + we can create supervisors. + A supervisor is a common approach in ensuring that an application functions + in the way it was intended. + When a process misbehaves, the supervisor takes some action to restore + the process to a functional state. + +\end_layout + +\begin_layout Standard +There are several approaches to supervisor design in general (when not just + considering how they work in Erlang). + One common approach is to have the supervisor look in to the state of the + process(es) it supervises, and let the supervisor make decisions based + on this state. + The supervisor has a specification of how the process it supervises should + function, and this is how it makes decisions. + +\end_layout + +\begin_layout Standard +In Erlang, we have a simple version of supervisors. + We do not inspect the state of the processes being supervised. + We do have a specification of how the supervised processes should behave, + but on a higher level. + The specification describes things such as how many times in a given time + interval a child process may crash, which processes need restarting when + crashes occur, and so forth. + +\end_layout + +\begin_layout Standard +When the linking of processes in order to monitor exit behaviour is coupled + with the transparent distribution of Erlang, a very powerful supervision + system is created. + For instance, we can restart a failing process on a different, new node, + with minimal impact on the system as a whole. + +\end_layout + +\begin_layout Standard +In GGS, we have separated the system in to two large supervised parts. + We try to restart a crashing child separately, if this fails too many times, + we restart the nearest supervisor of this child. + This ensures separation of the subsystems so that a crash is as isolated + as possible. +\end_layout + +\begin_layout Standard + +\end_layout + +\begin_layout Subsubsection +Hot code replacement +\end_layout + +\begin_layout Subsection +Implementation +\end_layout + +\begin_layout Subsubsection +User interface +\end_layout + +\begin_layout Chapter +Problems +\end_layout + +\begin_layout Subsection +Erlang JS +\end_layout + +\begin_layout Subsubsection +UUID +\end_layout + +\begin_layout Section +Design choices +\end_layout + +\begin_layout Section +Understanding OTP +\end_layout + +\begin_layout Section +Usability +\end_layout + +\begin_layout Chapter +Results and discussion +\end_layout + +\begin_layout Section +Software development methodology +\end_layout + +\begin_layout Section +Statistics +\end_layout + +\begin_layout Chapter +Conclusion +\end_layout + +\begin_layout Chapter +References +\end_layout + +\begin_layout Chapter +Appendix +\end_layout + +\begin_layout Standard +Text goes here... +\end_layout + +\begin_layout Section +Objectives +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +Figures go here... +\end_layout + +\begin_layout Chapter +Methodology +\end_layout + +\begin_layout Section +Overview +\end_layout + +\begin_layout Standard +Text goes here... +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +Figures go here... +\end_layout + +\end_body +\end_document diff --git a/doc/report/LO_CHGU_cen2rCMYK.eps b/doc/report/LO_CHGU_cen2rCMYK.eps new file mode 100644 index 0000000000000000000000000000000000000000..8bfd0c88b67e60b1b05d2ab2200f923407277892 GIT binary patch literal 551622 zcmeFa-Ev#UvL?9iCg2E1%p+jB+dHH=ZGpd{x?K0e)jIu31-YgJ`sWoBh%Wo7-W|NH;_ z|NfuuZ+`Qe|NZ~^AMo3L{!cvrkN?MSe)FII^KX9h)&KPT^y|aX{LT35-3Qyk4)ERKHs>wkJMzE~3AXfYnF=8JE-s-gRAI=x)37EHSL;(mAAD*Eb#5J%I& zc-ehEUaiK9<#I0kDn6Odjt47Lv)$X?@9k`DJtpQS^UE2jdNTj`O?M0bZEx>)x3?ZL z@B7J%@v;SA@4=&o+k1f8e{it#c-sh^Ulb@>AbuFk&MpUM;~&N!#?x=QJ1liPA6}l1 zXDiS(Am!u1?BK~{g)9i|$@pwCJDN_A|7`ZR@o)tOzUfAh@5h7Dc+veghtIaRA?$xc zbcfF#^<7eb0`r2WY#wZXiM+@C=Znc~1zuU5up=3b^W<_e9sP89{$_lWfYGQQ_jb0r zFS>)X^X}e*z1@Sy-QlXc|6qG-_pxC*n$K2)$!z(TAD@5I{Si+mlf`ny$`AT4-=T)t zU;^H^cOK#2R`=1DkUzOJ{2-FTdKt&+aaNKYYmFk00~*(NU!C z;)l=7-Q8vG?ylvYoIoB??BPR#J;V=x6YSwbf<1hAauP@%KPJrM$Ao!|9~FQ6m|%|| z6O2#%O|YXQf*ldQO%M3niDwdD2}U0I+Zxl<#e{1Vu+Gp05l?~$MjnGWKJl3~ zoA4+hqGt{(<8Mix4@MwsByKCp-vo&t!jQqxQ8Eb02j`Ye9+^Tg({=J_aWKHA^i zKioOtfA)8O_u%Q_qm$!t6Z4}z5%=)$ktl(Z>_6Ur%%TTCx zb5MNifP67w>llfTSwBf9-;@aRT^3};D8Lht()3io(U52I4|I?KQ4u}qN#Or)Ud7mD%ks6D*pbP?q z)cK#ay)h@PlftNLuyLe=4@nq#2FdEOYS3d+M9~rb!P7^3E;_TID8g)TC3B-FB8Oi);<26$%< zQ;C%S*!zg$kdqE#u@@$Ws91ocQXcB_$RQon4t7?eQkAk!sHf;ylk*55chuvQ~9p4oNTMZFC`5mgAqVOeBlO?8{HIP#dmxoXnj;PW`rywZt;s9qSpkVZyq5=m%M>OR3K(-H1 z5F1fZ68n(9+Wqh`I;xAuj00)G)A2)~qp(OFQJcU>4|VYH5k;p_)cQ98q!Osb5uocZ z&m_+g*XW^WMLZ2Zv!nf!Bsd6yc+)`EYm`x0SvP;9b^zd!L|V4js%*9Z(UJl>B+(ni zJD5>%wmGv=o6JAj03DJ@DFY1~6rog=qpqX^l;Rz}3RT7jB@7VkQQ`~;jt|&)GFj3| z=_iYypdy({dnkWDmGLCWED98~e#a+ZVt;1`-P%&fl!!;x@c~A6)N;I!AOgG?q|ox& zI}5P0?(g6)1~3-H6QEUGFZ*hd>|&&;{d=!D}ed|Laq;vcMkSGk&XcGh8 z6(we@AVQ}A)q;2lLI_wK;sL2U5|j~0L}VeuNw9!8q0XZKviUoj$0W{oQWeF>NS&tI z+wmH@5&>khZ3s|1k%AdDTp*yRh#wj*<=7Ej&No_veS$v}G72LF#bHxKpkY=PKqv=- zl51-TvBo5&SuTo`6r~nek?F;-kK2G)OWn=kJEv$eBRxYAO|@s=ByPke!8vSghnXJp&rWYr#c_3?ie0 zQ0D+iMz(VcptxRD8$nT{z{rXb&L=*T%KaUi=MfE%c$ZNtlPGZ>EKsB;WnF4iHK!Pc zj8MBtR$d~_aq600v<-!*VbiI&<3g>u*_?2-f{Rl$B7(r~A_@z0;R19kN3}H&**Ud+ z=p!kl5c!w2d*@&`HLa&mP&}g&XoB;??6@kP8_BdA#q|@yWcQ&$N4h8#1d0HX9}c30?)(}DVvl%PueNt#m>dz zE?u*Esvj**?#h3}Xzzk^`=f>f0v1T%8PsyD6FU?rU=^+2#SR@@aG%wZMU7kjr9WlJ zE!}EIz4mJ4MG*qVGwY=L5O9R_0ooEtlIhq1CVA%PNufjyIS;r%;_Z&t2HpVWM9k|y z-j+bs>OSsxyGva_3*7|i?R3M8d6 zQ^FL8&Wf7im@T(@Gcu#dw2r?mpU9~;Ad#T)mm=IoH|0AUkp#mT*OO@?>0)8kZW-Rw zl|kavFb)*YLMVtBaag<6gFkK_RVezjRQnF~4I;`m5A7`q%Csm%DTOo=@y59&t52bL zpo@3VH*z?mv2N`2p}64+qIV>orle_1OpMW0se!IG zCQY(nPt5Z6P-h8Ss79@XjM`oDAk1Yha%(B8ZV+sU381RXF>@)ilNo1_hRlT5WD-!T z*8*mUoAYFiad0=ijZsfVgc|LKsPO}pae+#0Lb}oCsGc%aY6CPB(VL`wCI#BOO7i~H zxTmy@4K}4Kke;Ffk{@bo6`;6dHpc|Dgq$g;Al#HE(FGO|b^$9WPJXgIy-nh-0nkTM z%Hqe{khu}YUX)SUI2Vdy1#E-|5{-u_4$fTiQcU2DV%CX_nVd#yApt2gih~E#X=5C- z$TQSLY4%S(4W}7IF)&9KsWP^#kAX(C15w#OzDsl=Uk3Or(^^_=NmZjzv_-t5 zc!Y8-i-hqBD4Vs3lPJh)Qo~uD2qgt!>!9w6mGPYui_?aeW?4H=$>H7pS;O5KyovU| zYH`~6Z8-rU(a-yf;vwx{^7p@Naq3~&@~FLhEuT4?57SJ>poKo8$j>a!R@dwRfA9D# zw9w2bu6nGvW$`!PfzV^KRk~Nl;^-PAPBf^0(HP`^G#7@*?2VgnFyeDqx9&=?V(M>r z*NBH6h$=vdy}6~4@kZ@54^|s&42ku34jN34zh<6jsB$`q2M8ziq(KZw;sF$F#0cx@ z+m?>vJN_8%0qtDH4)RqPa&gL3f>oiojc+PsAr-Z*y(dHxDc)2N#EVIJ)T#EMLVp=x zDeH=&@z>fyqKl-0U!WjBq>wSb%b#=6@*TxBEL!8J>43~!u^`ynMU!8om5qtwkzmaM zobHg=yTn#BXWgwueAsy-)ijX5Y4t75)+KU2Ke#3D+o(y4M;L46!j$ z+!~G?$3Hx|Kau2sx(tQE#2|v=Q7bc0&|8$qBnKb7nX5ucpoA6g1aL&D zEKvvOHsL=_PnnD2AuMHMX@mb6ZxIBw+Kd6pfRI3I#Z5$+PkSe^<-g?bf=R$4m()pg zK_LFhAxX_+29khKA*@fOb}{OF5}K2Pk+NPs8>!ZO*>t+(SzI-$ZX>Nmz_zfI%p~7I zJmqduwZBHX8VP)+LU;sin%AK^Rg@a8*`iS_**l2IB!r?uWN0Zm2q@|z8+ZpXmYsVU zy$%X2=dc5bc!DC?hdm3tnQX-=>a&)|Z~a6U7w-hjcuN_32TeVVc_vt?jfsv@HGGCW z8V|t7TV-GKniH+a1Mzh5HAfH&phLri;za105}0+K%!2$3LQ-^f4_9H-5Py@Vc@@<_ zrs8?ozzAbe@~N7o+nEZnlji6#SAj)@RCGMr{@tQO9P9x#2>2>zx9)w zSGAX<*QiWvmZth4`CyEwQ9L^9T0sekV-5>YgydF8s1-0(Zs(0FW`&yaucQoHV9%_} z^5dOOKq&dN%m4I`oHb&?cXOf4@DJ_Xz}jW zg9Gf|#-DBd>250e;=3nRNur~g&ChuRY5CjOHyvWIjb2F2K?J;%YHDd$+=I)p)#jbe|`VzQ(VIen9v1YPlMpFaLe_*=+cr zdpMnTU$794{EnC7#fS0e!Ixhw1v8oqS3P(g7Z?t~SNHvF{xi<(UJox93vlSkoz>!U z+|6L0CU3v|;u5G-T!(_?u-FiPu-j#NcXWBteZ%vm-HXfBmtXYWj8N+O4Nf0-N8`7j z;sH6c(e>;SR4SQJy^n$&e;mFm5~riLaH6iK^MPX!=t!Wb;u9+9sH{?UyI*g2A^Rz- zPk9%hY?Mc4n~^^?*>Tn9oJPnY8_zxV{Qfn_+F zsooNgi&5eba>=(uoR9{uOlV*}`v~&R;2MrUj)&v~wOuUxQyygocyH=wo0ZU@y=dkd zj7XgysBW&)m=UTSNV^jib$7aFV7AEKt+IEEY?P7r#N*$cYk%wxKP*1M$-1~0kFLMo zmJS&ds2Tgd*7c8&LJ8$D|LPapS*|j@#s%{ z?2i9I4UVkdi}5I4saf~>Na(|}?08GCeDAx(csxsB2B$QG3{b&7nWAHQ1s!SYy*|?% zG{F-1-u>Z+0BnpG{Hi7N>dfnJ^7A5Itj<;Ae;DlwGjj)ol5AZ&n#Y553Kycu9PKfk~nWT$KG zY=Gy3#rvw7?hv;UtS}uw2HWPkg*3y|k|7!@+d~v>+zE0MhVAZPWL9o5zQB}*MyQ4B zx3d*&+Prjr>)uhB|2wFTKUNt=+v!Nn$we=9NmZ4L|HF7oqf0G?we zwU|!u$3ep~4wmnlvKh_0u&`^X1E#i6y&Oa(=yUV;=>C7hTy6tJ)T#vrpi-+a(BUoz zj(+W2U<7dRIZW9FZ*kZF`Q|Jj-*A3;HlB@fO9n22fbGK!eM70s;UbFRGK}#;s=gSX z&p*HhmIX_qas9?@`4(4D2%ssfv#b6`WZ0%=FFNck;|@@^F@y&Fv5 zuI95%-S+J?LB5?r&8-R0B57Qexxd|hv~(nz50uWP1BAAKu^)bZ7vJtKFW+FygFo?0 zdN&J$*H7NNgUodb*~5{`4!)j=zKy)puUh~l0q@Q&*?)`j?8WQ(=)l0AJMTKgXwYql z6x|nPM(Eh<(CDkkEBom>OmtBIdQb4~xekh+38>U7*8$ieKYS!mqeHHPsuvpUS}$CO zcI7AX2K#5$En0HC&mjl+nu-`b*2xv;(Z|=Tf4Ay=@BNAqK&qkK?Z@y1%x%KG1bm(^ zSeN_{w;s_S*AX-rX{%#~F&qwo@O8QxIM+&DL)uYE_N*G>@ECF5vgR^}kP}aR(V|JKOu!O7R1;X5;@rMb0I}Y(ap<2D0Pe=W% z2gIj&2`)8&4i-8RhywPL0QgHz^7qZIvWu>vTvO!E4X6ZWYTD_9uL`_>mLK)~nDgrH z`Q_9xbzZ*1%z%V1HGQ~-+m?N5GxkDh4GBb@M!&QQV+L60KBa;gS8p*Ip3h|SO`W~` z+sSmCY>{gOCor`A?mXW6>i%Fhe1`})I^*zNqRqW{V1Sd>AD&;q>%GQIn!>Z$43TRt zGqYJSXJ+^A_f9Y0oFM0TjH|`QT`P}bCN9n1%xh(PB#vI;g?acRp(QOgEhWvahgMir zOvji^Wls?rO`TK~)*W;AE$0C2WJiB^@w9&d3o-69YcC7QkZ2&c=G*SV7r+Hr!fQi& zHq_Qjf?A?l^YUvVO3>uagX_+xw`P`|zkss}wi11;0z|;w#7uL*nLg#nunGS37z^Ow zhUeG%Q@5fR!Q>MCit!vk4L?k}KVhP}?3ysCwO!6!mzcwnYfd~ZSC#eH3`E8>bZQYIUC}cpQf4S-{p{8CEeho=eFl+HE~$+39Tetf5GhT8IzMt`QW*MA*Cy$Y!V*23cXKMQO$dkEYlvw`^dB|01IusqosTJ$Y~LrsB^*O*rS+Luy9*h1OFjnxF6LMv#Pklr-$vMhLC@451b)mUpSDiU-(0?>)v}=j7Y#0- zj~7_~yTI%SPCmQifjZ%%?qoFi5VJ*SLG7I@DC&as@VpZd>FcO;@rLekq# zw^OLmt1K`Y-dTS+zUYsjL$;}by-)SH1UtQ!*6FHoTp3|jO_N?hp0A^r9Cx`o5R7>b zCe}6Cd5LEnurRtgL$Hra{IpM=96Q<*OwB%zSO8+L+m> zgx6VAZoEHTGsw*~g8XD=+K34!(z})`BV(r@WDGc9o61-zj}_PpL`Ly-I20GElv%0U zab1(V)-^L^t+m}VZ_Zo;_anNt@{+rGAx*R|)MGGR73z_Elv+n_P=JP3mYRqzr;xhl zx!FllBg%p|#V8wUWj1t?())>VG{(WQ`{Zs?DlZ01%0642{FF6|!!)2IIC^Y&PMHOF zP|(Vx8}1C*riq)(db6y{MKzes1_af{rpq=U{=7hdc5Ud3!R-3pn*Q9s_w(P~r`%(T zucnjo0JYESc^`3J7)&F5ZnKYc769Mz6@#d-W8MGrN6Su&q{^PTMZ5p0NbyE%OmkvI zLv7Obnl*H+Z&EV`4* zq*){1)|AlZDbn4_Q2P8TRauZ)%cWH;oCFjlyxW!>v~<33-uKVDKMb%S`yZi$ym$3JLZ38o zYni-*wR?)yp7D|}nuoUl?FUeIGZgP&y%p6X#$j)(?-8~R-U`GkVs8h!p}Hfkpk^`c z0pS{RO&Hv^y9Sd4y?;8{oQVs@Zzp#fH~!wr(_WJ&4j535Zl|+Zm3q=A4ZA*0Cs^jl zU`Et1M-ni_f?@%Er`vlz;1%{s8-_K$2y;^YNP-~ zInS3?bCrR?PUiN8^Vt%2(Q9NJaUZfmHZdHcl4n1D2VZQmLfqs0Tr4|8%mt_5Bk`tK zD;JJJij>Cq<7DN`b~;+O1oAE53ZM$$({%2w6jDT4o2KNjeChhClS)V-&cfX&#BvvP z+T>?ZglYbu?IWezMk$oix>+-luztBBtg+v!2OW1RZ-^H?>aNY-*gy=$c@Sx%MBsf! z`}yBOUm`G~hECehk)W#9ZqtVj_SY2})5#ire?K#&ta06+%1}Q_$ux!NthZWpc4RhGJHG0kd8~5)5p9D;KK%PHf!B z1(_%aX%cHz$IMVtHD6qWGdsg7SlT1VHuGLc>j=z6D_S7X({s?DXI?m|)e6(<{DK=! zeL~A7ya8~>w2NM>uMAm}uuhu79`(!z4l-#PaRWkkTVi1iVj+LT!s0iPvX{2W#$4Pw zXCkE>-0n(?20_(a%K4WOqQMH(0Nu?3z|vl^;}_tx)PpI_9C2L3EQmE<(kdiG@fOYP zVhis}!cXF8v`ptZ;W4=hk=n2+I0sd7z-lbYbQa1?s_7OuwGq-p=+?|v&tVJiHB?bc zU~(`Jui~=$PuvPp$4C?6Mkv*h%bFqVm$7S=jcb$Ac2z-{Xy3N43gf+Zbb9<`upC#0 zEYhH)%%_jd{j)t=2Qxnv?1o+AXdHp0!lIeEC^I2M-+^sGtdLQJeZdPSfnHCwr<>JT zq*Fxj)%w^y7EaTeLWQjQplegrXdbxfFD4g^l=}#lOvGf?Us#UqLPo8slstug@!_ui zWTu*>Z)xz8CCMR7T@Ym(Xnk{A5E4xaX7_}&B0=DzAQF=r(RY8^k~kHQOJ*7XoX0#?kOUM zBsMiVTdj97ddm$^{e4(~w7ID`)gXl_pd7x02vK2Q_+a$pDq%EsolJVe7U+Uw4m-AK z*G05mE8m(kQ_ud%ymzkU9*e4yafsx)_xz79yTPY1$1sey%SYxIYssXV(*7`bGsbp* z%{r_b4&+Fg6ZJ|;Xyc^0dA;X{-#z`|@X6C3sB-Q{SP}3jHGFmb^4(;~bGe^>_q+Y> z*E{kLzx|dZs!+%tQP5~eq$gACG>?{~CyzUJ!o^31fLReH2^Own6W+tgHeo1KwK$vs zAIlHhnCXO^a*~SZxabQ%PJE~1MD>|mS8IIx?v~R;+m9a~@HElEuXdU!i^q9H0y`8v z%akG}Q3AR&EM2n7WqaAxdV+nKf$G01O33%jQRM~dfs^UVX~Od`t$cSHuzQj;Q-+z zDgdXiwF0^3q^;8BqI{|sLHyO=FEw7J{k2Y;aY?-r0k;J#FUG?OPApUz;{{IfXx(-R z)ov%O51_h~Qwx;y71op|gJmndlNruq@Qa$Qxo_GgSc*u0O0U+I{C+jFe8_{nrFDQpr*iOgPrXaVV=xg z>{U8~)eK|zFYr0gRbNxeun=&(hwtZ?t3EC}SS|lSR-`6&(_rBwSm&veqgw2*`^Tidmgw96r^lhIKO?NXal0hLM>{Ly_8pqRU zOdF;%fkiKQKfdZ~?qHQ?_r5s-JR8N3>aN1N6R(q-7M`BWt;jVWxn(z&)lom^jmg2(ru!U7_3(ZX znPUNqOxJXJ6whLF87TR*DNI*X1~Btk&@4O=nOr%{;Mh0cdf3WZAjV1?p3G&X%PIHG z{IcZ17qe&zgOld<0}0!336(^1Vp=r4=+7=z2yH>1CKwSfJQOyb4|5h@%1oBPSxlkB>;ZXR z3O)rrA`EOR#%9<~X&~`Dc}w=ow5Nk*uAz=^$bY6=d9u0j8Ao`xSYgD&SjTWXsm_-}c)*&IZO17KT*zOeA5L$A`*{n&Ty>P0tg)s#-r)o^! zV7};|FL8kaRqV{+5Y|J)eL~Mxe!1d2-;bvsuy1%c(72-`vDA*?U^>){jWTu?c-@6D<(JTSV!qz3bhXn zF{X5PIS_!n2=946O9*@>m|KUn07+~SZC^)#ouFO zsY+HQ{wfiPhoBKL{HDgSviP@$sbWYpiIKyMjsACLvC9n+_qzA_N9=NWIcRhFxZ9@g zESO-Z0Vn#mV%srjiAD3&yk#rqA+Zfjq_M?zRo*EWBu|l}MKwS9AyPo(y&c9Qk9wq~N(6UBw0GV3! zg|{!^oG55EY-^=#u`DeBH4(J9YsFC1Btdb7z-2z+O=6({(k@(eg^-6eSsGl5;1~s+ zt}Y5{Qvz=?Qa*w?OWw~>KtvL*-h?=`Q=!PU2FE&c>>f2QB_Ik4($2fcb73cH-{7#B z!_(Jk@RB^TdXa#0CN-heD{|~GPr{pHyLC|u+)|iUHV>w$ghf4DidjZ3+aT8a=H~lP ztj0v5!{2!GNu$WI2h~zk%yAUAh9vYkQp;xUSrm3v+>E82?=_nZW8i((i{8`huKOHu zu1Dv8>+_yf%T6}gNv8BQVX)xlKB!yO_Fjle;iH*2U$#=dPp4@71f&4~- z>SBTnz+0EFyAVEbv8GV?P?mpz9o8|&X_nuS69ih6-_`;okY%>dZ=F{vS1sMxHwuTH453&Wz`X}RK#pgIdivK8^Seh ztxILI&d!ybEt|}n;@fVrME-9vm@eNbcoe9rfz7wLi-NX7!;9!$pFt>8+e9?dmcE&?mqD13_xZnDE6z09roXm;^QL<^Y(rp^=1toP zTQP_58I{4x{t8Qt_wF|_4s~C985RDl+4CXZk$%YZGq}0+`&SZKi#$0$gA)1 zYh?OWWZdpuW2~<3``zzgI(k12K0dcz^$b@B$7I_&m~EgdK#sK0z>M{`-=a7y5_j$x zAl~I7*}#J%e7-sapwyuXU);l;dHsa**TO~=rRczA6xt$YPLp-p8b#W>UzGxJGD3T{ z13Q!;w%^#zuhFe@U2E1DczgvgLQhQDH50q*rvVtBWni8@0uIc?+99JETLe$B+R_iq zXB;Tj#n~IFudfh&(n@vSsTl?;*jlGNIMj~aa*te~LM7#BBLAYUrOK9di?V^d*Z^d= zVQ+O;STeTlH`YnDd#4%GKd&|jG4MFm_X%PVbTH%L;y2uQs0cr5Uf7Tgq8=A}S{r z=3b$fs4zo_HPhnA%uyT#;bO@tMOadYXxTLShuQbsd0n9g z$pYSPqiD^&bi%*Br!CY@+qZf1QZQFaeseJox|BPKVIJT;r{*M2`VIu{_U+LiE+(UK zUWRv*$e|%>PQ2b)w6H|kn!zf4{|__n?ObXz@+s(nJ+=?->He9hD0N90FZRp$SC}s< zo^PHZSn-TU6%2G0-P+Yfp{^5C?tkvR#EgivcF(YNEHzjdLgFvGey7@ClA;x=$5z=H zIJ*9nA~^LTUQlZLAk$mfLb+vR{(k}owR@9FWp+zP2QsZxN-Lt}LWx9Ha9Xk|?QU&@ zJP@dSqyMN`O8=?sYh}^$xn8l!Icey)!|0MhC>E0lhXN0<=5FA^`X#oX_~h%;sJrw- z_8fAw5d&f_vYGs&Z|Ol!-Z=zMt^wxzHg17>!Y@~FEGtokCMY9rxN5Pq=Q zd;V^|nq!~c#qlK`X5$}l+BCZ}jOED{g;vnMgJ=(!hBH)C@Dh0&?X%+pPjtB z^5hG|i^Ni+%BqTI_a;51+S$``;ERfiflGTr@V%<;&K5SJ;v)l0w`rngHhc}+*O(7M zPh5-g^hYB^aT={Ge(MAsS{YSU^YbFToSsW?x$3?#xusBCF%74A0@^AYWSI^#qh-c+ zmwC1%)dKiThvM^m+^$~hWNGClQ+KI?wy!9#Fbp2K4R?}%X?!DOor0BYh3I+YcIyFd zP}>)#G_-$8SClF}MJ_a!Mr_sBhiIF5HOCxL{Q=H1=q#1rd;mv;8dzK73?kJGZ4sBT(6%{dCQNBg3*Y~q-dyDjuX{}ZEkg3zOwcw|X)4jIc2 ziG-x$Sw~%vEAp<`h0rV^Ywr<0#n2=}$^VNkIz@?{51<+~X}LQyJv!T=Puxi$H3 zK?2ab0mc)+;@f{~HL)p@1A&T*xAGYte+Wc6{YfjV*0FMk3vOvTd@4>t#A_nc-AOJt zGiiz3DAO*q>o%zwhP#UmNY>>RNJ_y0a9wg4un^Wp(KTiCf}gS)mr5>IQ{u9QZMoV@ z-=d(iE3oMM=oCFVLG15-3Bm z*FfO0IlkglnwAb9EfDa~I~dwI6P7$T>wr z#s%h}j-3k}KZ6gW-c0xkASlI%$K+#q5{2dlaLH0wJYl58tGF0DMD&&XcE*uAcy zbHPd|)%XxXG0gFnB#Rb0+In@g#mj@$ET9eEi&PL=$_i7N-qH4}BOIf>9WtT~Q~;pQ zAJaerQnni@u7b#mx;AiDjaUKO3+9)v($jSi=>m=R-Jrzbi-6l!B79WP`5Duss==>& zO2mG*Mhg|?oLY3SB%Gj;BFDKz>nOKS>S$bI_ICG9Yw+Hyaty8LUIoQTuC1$eCEyc& zPj-Q$-1#yKHZ*)b_k*tsh}eHrD_Z^v$?IML3?s3w3Ye(*G~gCtWe$?Df%b7adCDt< zs!fhr(Np_mNDX9bjxEkxf(g*)nrXXG2x$R3f!2&~iASjlIH_bY5-e(aQ(9a>&Zg zASzAc7kW(|w3@_pN^*9Kz;8i5{TU10KW!o?dOJtcgQT!Y>k{t|Trbxls{ziVeZ^#;7&*k2gSt;qI2{ z7<;)Z>!jIq>Z;Uh%TC@xo?@o8O`BuB1_>F~G&mpq%o-fBmTJfZDwYDS3ftyfMVHEv z6VK?t2ym4k)tP2~(XTa&OwicP*9z@@zXsmf0BrW5hTYu&n3M4C3+p!F8?3fB4!wTY+Y zd5)Cr-NT*;KU11mi-)zs(fH4nM@5(+nb}gph{hwbyWaORifl`((5fU~EbtV@tDr}& z<7W*Z{_p*j84g7Np347FmUTC{in&wIxT7##m9rr9lCI_F4qX zp``d8WLW`1g6TVvW%_O!UNjBzPnnnF4C-39? ziw<3`z5}Xgw9+i0Q&?!8D9h+w^`HQ^J`| zP=B*A$;(-rxCD=6D>V|{!JU&+Fy<+@TN@iMcr~>b2|4A#!ZVs(f*W(SC$2)f40N>bqa|8XdzFU~-4RaN=ZP~xQA4Fqj*4F!g-$91U0ye5bCON5H72 z&}^PNfghZ6)L$5dvM_ftFn6{u!QKY*QcHDRl((7_j@aI< ze2!@LlF8X0fUz;(BpV-FBrS%7Xp)=E5M{GASB(})b5>6%dVAhKn=MsH=59SApf`1h zpuU>ZnR|Ei>?yD2A01|sTUyM@WvT8!>JKMl-pW22^b20F^(;^58(LQAyXsc!r23y6 zMLSgK$4^fp-K*h_V=dMAZUNMSpUh%ul%w}@+P}aNl^)K`;m&0IeKWlr_hY6Hl%GR* zFNg+l-`z=Wu37)2;6rV3ir#Q%pQNx@`LRIcs=29KrO7_KPpDk!L6ot%XpbVqRX0rT zf3|6QlM)s5@l!5NW1|04s2i>=L=f3OU*xq1kq!I8Ij{RncVY#M`(kO{+?dZcS5_*M zQ=BC>nw=(E5KCa)e!NmKb%v0N5OPQ`eM-bxuO#Y=0^Rs~6UQN`PRF5dZN!G`WhI>o zuBYP?rIP+_ykX6OYx>#}*n9G1{t>ZR?h4<2-TTYw3RiA#_x|dC1uVw5doL%r`0z|G zyWf7B8dslaNz)RFd`+r3vL(|T{QtH-+3iHPHkH+8zoU3Qx1v_izN32ox3!MyEYDBc zQv5;0N&TxI*x!q*pO)Md!Z9U`)gJa$=n%A)Ct{C8V($|jFo!unxVtV-h6;&ihgk54eyTDRm%hdF8+73kCw{kh*p znAdQ06oO4v)Mt%yQ>DQjcbf${PHg4{A6HyErhr;R_C9Wdevdn|2c!9HdZlO`vf^+q ziLNwRWokY4W5t~f`k6J8$kK*58y=z_s=M@*%wugAV$jj4Vz*(6*wvdQP4?OfPT!T~ zQzy@NJH)V?WfDM|pR-iXGRueS9WKxX@sW7ss+RabTe@}`CO8(vuelD6)ynJ*+m*?k zjK;r!9@u`E&)-A8ZOgnzxbs>MKQ>qr5ZGoWCj9o5>vXuR{hK$oYsnl6ZuW;DOk$9K zSI39F;}^Xz!T7n~Fb#GtILoOJnUhzXg2Y$z@IP;^O}8XXCq2KgHm+D2e&AvA3J6|7 zd80gA#t7C~p-^$`chES2qZ-3i4CFDI8Wpm_$@C>VvUa72VNbT~x4*3qK{U`f<=GOx z7$dMa9RJ7zz9adpB-v@^UTZn|a#C|BJf;x*a0y&uenO5@0SG>MsYX^|a(V3Ikl!&l zTwLvx{Q|X>gS_g@9&>h_q7P*1@MPT(5BMRmu81NDF_H_}x0FkWI-=-fe#>F05J6z3 zHtUF-1qc&7VTi8mO;O3|%gqpp=%(UaEqy%_0?fT8wr4tjz)o%k)75K%j zgMXFm>aZ*>n@@v;dU%exp*%i-puUYy!DLx@@BY0NpobmCtM*KZiQfc2sWuLu03FbF*0m7Pl7qC|p8UH0RB#Buz`Y^eQ31y=ZWE z3p8nsr)bbBTbPn&)miq@HZ8Skz$#U}DT#()@Y*Vmf>Jm1MO(eDgjEW0@V}Xb2D`pmzxPwU{2Aj@58T3B@J8_uF6K^0BH zZj(k^${~heJ*UB28O7Gp8mXK6gGl zHzsg-)UVCYsP5=nJi>>Mw_iO%AKAhae!sr{-P^_wW}RF)t|_%;$90*NX!CDOzvqa%mgdyiOCy9Y!1_#{>)@rT>C6VBo8BbIKX^BNBn!!zeOUy zs1vE@Q>Nzc=0y5v`HmUOFNdb> z51Z!)dhg$x$qiNMU146%mHCu#e%?qJ4jT!}%k+^*=ozwc0$_ZNE$ipF$>Y4c^KbDz znk_C&0cUqO47CB`Cg2voT;qV}=K%xMqC`QJ@DPMML*4>CHn?jK3cD?bCa6o`kBWzSVPu+7 zOKgO~p$DLjyvYdX0T}O*$6RIMWg+D%;W4?xHIYp2<571vdS7C#OJ+p%W;Z;SG+1^? zMFj#<45B2af*4-((&u}E0epZ9iT3@jNEdu9RDy>R(##piW)$p ztdBn2sV*bI(Gmt=jH}io%J{i+ynI$UKJn(g#f(Z0O!BM??p!z3N6#^n1zq}BnHa{` ze!4tA;z6HujL0k+sMVl!3M^Ax_#xXBPQ-?RU-$u&x^T=dPVsFmI0y*|?!TK4MiEp_ zlQC7u$gA&LAU{kyVy8Rh$a^w4pG>c67fI7|d;-{0< z%d^=ioQMd=E|&m%llIlCf<(V6U#smjM}`pYV~xKyeVP;6XoV9GBYaSmD|no%h`znX zXWq(%R+C{Y+4M4JDQWz1g*b=b#E+M)^uqPK^s?AVkHa0U50TT}aHjytc!t{r$aVn& z1!EscxFBt;ie*>EE_;LfYqmM(Xh{*8@9LIr#SxJnh8^|^*m@w#(h?`en(U%I!P;<5r2CK4SM0CHBsXP(b8`+~+b z%vJzK!;)%xVBkyc_U*n$Hh;2{~B`2Z`ZiLN}uhkzO2eH0seFG_pWdaa?;n2<;&HN z`GjNdWARcRTeT9*gmn-u6-z4v)}UpHh$s4t1q)6eul;k8_|z!+#wUER70xA}tbN^j zp~=oCvw($e+z87dLwzxa(bp_Vr!W{rC%Z0^8y3?)1{e)fe>>1cTHI;X+Gw3-t99yT zquHU(S-+5eVYua368)k~qZTdyVUfOYgVN9vbr1DAynd`+q1ri@7ExfQQXvuel2609V398E@L5glH)cIDuRZ#s=2CmJywPG8s0hG~v~@rt zB?4c?Ww8s;XA;6ATP;Zpkkxw-U9ucw3Z#XQ$|1P{9qfDLyBtag0RVj>D`5(Q|LF09 z$B#*Vh!Dc}u?J;vhyS61Pwd~sZG9QzR34IY!93ovN-W!*ZgXffgQD>SmSPDmWkHAY zo=-oqtlzcIu0 zzR{x-^b9lQXR{&fNu;8Emz)Z78f*I)JjXFJKE|4?j}&Mi;@!!+66rER9L&0c ztRA}ZlA!fz7Ov#3JQbd+(n*ZsE`|!)D+im!ISCkPA zJ2i15)PhiXAZW!jw7G**(;HSp6*wJDE|(%l#ilU$Eth;eTbg+L?QV`U2gQuzYIwU#x*A5 zGM%C&uamxb^Xa1bGX4X8DiUi};r>Dn=pAe*5*$i_3^c@5SK_TRqDj1E)=E~@H9gzX z=_Mre}DM_txM zfb4rBDGh!F&L&&`>ahRUbJ%Zotj(24ezmIy#s&HY(2j;ThGghH6eo2Ag3{Z9ea_A| zlGea(b~enTPLmUNpVGT&8aB!mbBIjqZSHi_n+}h8-Ii$Vc$MSnAM;}h+eL|g4WVN>2*ESiQ^p{XSb_)?XkU}Tw6_F0cKGFtP?Lg%Tk4k63xKA9|vvXewSF7*cSps@7r~)|Ct~bq<0w zK~**zb7BLDuJF$=G546dCf{xJ_drC;)clU~X6%t%ZM($Gc+!SMP&bK^i7rZ5XbFc> zX`?5aFaDP1x$?DQ(X#m$1$`=SE|zU)?D4cD>5)I?X(Mi(iTtyrwuv`SucnQF{783K zzqGwM6h`ZDgX-6rRj;MuOlK_Rh&$b>q=~Nuc~MLm^sd&+Q^Fon zD5yBSd;_m;$Pc3@YC1(>qc3lkkBSNqI7s~Hhgz^xQW*h^0yfZD>o=*lFj4`&8Fd

      !^wVD4%<%$Hfb=9wcXP12y$T=^@bxYb?`O**5p{wXWb z{wf^;%EM39%=r@lVlLf;kj_x#Q<$&f))F1RNB}xs!NRXw$4%V#;`hX;0^YPx_opbu zY>&)YKg|?N0~?A)@SDu6?g%AN$e(P7WL-C{c@u@NL?JdMCxe|jxwS>hO&orN7}AK( z4#3;Wmu|%I75fsDZR?dT^BYA$SvrP7<%>4P0w>5LSSJx^^z!~URY&^{>4C8UK1hX6 z|FXk4K_*ES40n|X&qlQ7hq1BEnSfMC=%D%QkgA-3GW3Y*UV_F6A| zbpr<>p)q9-Dc?5TXL=}pq9wQwWhn@Wtj3q{R8y|Xl}^=1iH)BXs%=ps0`U>vvJCpz zAe2|iN-d8H#NGOI$7U)# z>T<6S3+dKT)s*)YnQ_XUxmFe)$Y?jsK$Ja~#!HcrAM+DP;;ASI)eMl&Kq~(SUgm^u zBktdmmjOlSVp3N|WV?!E>5z?Y@39mcNNt^@3+={C_43>k<&()W3L$s+24Dxx05Lke zqs{OhJag*_^71Y8W@(4p@hO=e$0)RV*pg4d?VOs?SMX)Z5eam_9=e#?M%X(8GE)GRh{3JH2 zlOOVlFY&MkCc&UdYXLIXOC+Gp(yN5W!@`=y_KWy4c}QL86|w8>Wkje&ZuBhgt+_K+ zrnfkWZ_xnjh@6bh@M($n<6^)!SCgB)igkzHjI&)k@a&6!GOV$sEk3bDbF}Q1z??I; zSYGmW!&JD5fox{;gThvkO%4=wNcVi%d_ay0t(I3}`owcuXe z7SkxdVM}FM_q~(La8Sz%I$a1WEs=2iwG2?L!OtZ~3HdC?L%BU{z|s^ZM9C8Bwy|O& z2%9*)R^x3|CZ{;pn5)cnejeUe77M%NmjdF~ z>-GxrgdQB0FU{sQ8KvlqWi zX;i9(rrz{&)yG%k7FT`t={0^VQbFOmMcCPYhdLgY?;p^qsf`q-6D}{k1}*JU-g|DeoZiCgOD~8lzLo57=ej8`;&$s!ZgaH ze&7bH!~FE^RlWGfH8~&Dd;VmmUZ41f0Yy{*=BG;NATkmETRL=UH)Rb?@ zLQ*w?xjNiulr|hvot)>z0obxJo%)?S=pqtM4f{%pPWSyM^;b7{KGoq!n13IM@B`2vn6zxVFXN`heV3P z8S#=1h=o?su-(hXDc~{@YgBaZLPlquj!yotC<831rev8ro%|u;lv@xYmoaDDiHtTn zFq~mud>P&;s41K^+R`k19DmZiw(b;f5I;BD*A*0=RTtM`gOk~ zyJy$;`2>y7NtV>vb;WOGfq^dj@H{7~(tQ_lW+mpX_|g$SvdGyi&*|_l`$1;5rnc&U zWe?Nzwq=qF4t!!mp87c=2V07M>`qb79(Hpe>u~rQi~HZw48ZPKoLPBv%m| z%T4yI2v)I0A;B=ERjkhlj7tr1=VS8MggMCL!i~xGmTZFY$yM~U0O_rOG zV!>oVSpEv1V%mk7sI6%#P<@N9txR?Y zqmJ@}e9aQ~!d*-ilwUkyR5$#`;39`an!|q7$2IyoCM5G?3OkeYFU!^%*(of5b%c@K zqe2u}L#p|T)J_e8efIob0(1yx8z<==oovj^d~S7V{LE6dgnc+IsX{rS9a{O|*|?C! zMi1y_QGB)}6fw(!*eHiQNpZ_TL!J!_Bv^>QntIfZN-=-z+|-ZUgye2?LnlcsV=Z+z z(QP6(Vhmw{?uISaNME_K7Bu6 zS$Q%Wnc@_3%=dkZ{GNLekl!YGTe}qTVW_Y7wS3oqB=`p_>m3Kz+7IY;sOWWsoJUfRk z%K_XJB+s9!ReKC&yf9DF4SC|@=XMpZW^7RL$WOvrUpe=t*lUE6VOEA%%s-l~d|IAv zoT^6V{9WukwDx`)|7^~1_xs78uo=Vb5Y7&Bk7x|#iW({3DZo8S3@AUF;i5s0^mBZ0 zO!Qba!80^I#fzdHr?p$4U_@E%=Y}DKM87@VkeZc;byci-F->rwSw1h8maJhkgHq)c zB2VqcvBt|5gcklmZ1JG??0{LAX_sCY%Ipo}W7U!yt~7TI$lC0Uknn6U1UWq5Ld|w3 zO^GYjUe`{3Guz4dEX!nCVhz2Cx@0q|N=}m%msS>A4_X#-?^aFOZlN-Xt)c>9^EP_r ze~aGds#JE~TXflRK-g(xK)1zKIAYGL-1eet#01P%caTSiX@NU>>3QXiNftq7TAJvq zHv7tL-51asIJD+PKgL+n&Lt-{1oZi=#l(=CsCwL>d`F_%B$9?b+EciB#a2Aq?Spls zoKN9#6}HhAXRa~&<_$sN*#c+UhAwm= z_cp~e@{65>?YjtJ?r2j}+~0$cH*HT$))w-N4$l2MudT}Lo_4IOG0%Fn0R+{a?WM|2 z^MV`N5BXV`a>N9wscH|P;G06(!dZYa4aZc1JfPC9`xv58+iNxMjm}s?A*jrK*|*Dy zNF7b!f_)iXD7xKs>1-2g38zpa=PFy7t4_hW$h4b_bUk9~%Xv#3#XG+T&jKbi41Eypdq$i&|*jGLEL5vZu{WQgOrO9`-#yUnEDw5sJ zw=XAERfHm3L^SSjJ{se@klU}_W$qoLj??+&VmSWY$;r2o`Xer&n&3L(oV%=pZM`Rx z)$;jxkpiLkxQ7=m6g<8fTAZK~WBv_=e9}n*fm|?g#RcW#f_s+=LZSSkQl3SjlSO=m zoBk-%=3%JZ>C$#?lM#aac=$1?5Enyk<(wo*_sVD`O;umziTi7D>KXmg3S`{Nf3VuR3y(tOFO zQp741nc*O4BCIGy!O1fMGCqg$;ngOyxcyllvP2co4#eIay%aXr!D%VT_P)>vo_puR z{T(H7)vS)6Iq`-vny z#g`67W0$aVe{DOJ3UL=Q1v0}nO=WhOn9u69g83|{W)m;X*yS@&SiA3HCmWw zNsUd@CiBl)b;{JWu}kuwO_lx`ltGPJ$k!CqRWM6fYEBv6x%u0LT@-I>(7pRmS_+(N zXBba%H|EaNJ}yf^cY`xWiq*P#(027DM!)>gCFO6CsBb#>3r*2(e9Wu*beNFu+Eobt z0chH;7$%hMH(T3O8Q)07XxWKBoA>Ig&lJ>@uS2vWj`K#lG=Rx`klwP#Vuq)?VO4yC{ zb&2&a;pubTr48=9a$Hujmu0As12?2t%z>}3p)n+JH-7}&+#6^jLm)-6THWlnPuJu? zLWyWv;hO_b{hjaZqq*e(V6DZdz4{ipDT%LrStesX{3L6Y6@kC()Z*hxRR{o8G)+a%5o$FAjlDreJ;#Nd!WQlS%r$?iMG%L{npaG%S&39J{F2-AfE z7+c}6(PTeE)C_(@4%*!f9-;!lX}!m=^bX%F=h$O5J|Z0x_+E<%zGdWJzMu}^mU0KN zScb#slQ}W_)zN5*!Z#eUoFI#^xW zsX6eYN&*1qyi?w-d^jgD<$^pe#+ch&tS$%ByA%$86Ov3CP(2#!&=*Nh8zc(ZZD@81 z`qQ;>+KM(O8W8r< z;v|uy0}KTOf9QsP zH_681Y#l!X?b?~W>fD@Ie2UX%5Z^1SxpSR2Bj%57MhnRu&U=6iAkPu$EW@>QOgX&? zml3Bk`z%U-8(w4?EH9|ple~G=n=?7c8j~?UC&cla5_uycA7p;fXhmZ7k`{DMU zfF2$ocWdYI!vd?8OQ;zru)DK!@OXdgU~j*>!$r`@}@ae&eRvREG~-Di2~Qc6Y~s}HzKrgqZEDeDx4L--msAdem`uO<6sC1)5TLa3IDq{mnv(gSFe^nv5#Iaf zTDL@AY9FU}sNih>jFDNN6V7KJ#*6Z{wau}91ARGH8!UMS**+7zadDtofQA{}5QIqr z_r3z@{gS5pZ>N_Ccg)O%E%ha!v{1;>cPA6IvPR8->MDWk_8KML>)C~i@Z~mx3W(m4 z2yY3-FuN;!8)ByUOnd72Jos+Ur>@F4STN96CQt^BEN4j`NmY-8C&ZAse^5|KzXsC$ zfkF?~W}ajDF71oD#&=F}12!&Lq$_yc6F|~8Gc{7!9we4yGo1zk^k7~{RWQRv zw7~R_GGMn=#Of_F&sxI(SGDBbgRR*f*QbM}Ay!KZcV&S$fm=6h#cfpsSuClwLGfD{ zZRuQEnD|~QqG*Llyyuk$z_x+zWdBg=TVs#4mZFVQ%d9mo+x;4n*M2ZLd|cyJ>tAaP z6SzMWv#hkX*lcPQF+FN+yPa;9U;^;IR!|DgVrPTfE>h?+Prbq`UoZYE5MWl$*Cq#8 z?m_*{ij$1)SYI&`MSF4`HSJH;d{uU}y}cy^t#ajdsu1~52oo1O7viri?s7_Pix0Gb z)DTKlXn3P)eGI#Xfa@@^#WTbxd zetgxJ<0!|Iv~C=+8Yr5V{>TKnR>?l#tPhN)U29{PaN_fK?)dq3>}FjlR?t8Wy3|M; z;b~ph>uU|4#DYxWvC`(3CN24+h|pDLWHeYJXz<|Q<*`S#ih*b1w;k+#?>wrH_AWvo;pXb9+brH;-Nd^8l3^`_nuey86p zrQYTCO=hG2cFbTnBuEA}Y#(tLZDBmpt_5+==2))qeQjUcwhaxp;Fw<+hNdOHzNOr7 zb>6;;$svSI=UmZOt$1pzLid&zBlfO~!P(fh%iG$PdF^%1HB_vB1{Sf_h+>?)_^VZh zPmRra3Gns58!r~~1+SgagKupL%G~w;Eb&me6@P)-g5|^2wMI$1#-|)H(P)jfxJ8a^ zG;4wNDj+)#AvUVGOXCRL*grE^wg{z$wNx$s_=wh+ie$4FDm~G3het8geXVgU1fh=R zV{>jqoae9_o@0&7SI1J<8cmife3*&oV7T(ez1y&WrKZJA&PAq>jHmvu9$WP+jfZX> zI-TGBuBP;E_`m(O(pXuR&ZkP%ZA4X03yo%CO^h@SfV1Cg0vDyPV8SJMsNko(Fs#Uk z3r#D?+@nJ{J2-_!A$F0-(Lzn&&rN^|xR8Um1B@yhARX*)wrNaikKu7rARL2&A*8XtQ$-Cr6uRem=d*= zLmy`|X`=ck&6a;}!BBCqAudcIZStOik_wM)3A#mG1_Z|(PW5Nkur0Q4slkAX8cc6uQT7(e zglwUgCQuRSDDcNZ?AF*Z5WqV2Ep(Pol%@ge&0vK4zdlSB^Vz+p_V=8dT{voE)5c`^ z7B|(;5fH*QV|)jEvh4nC{^mjVDK>c{)Vz8(Sn=!N-RIAbyT}{zvmekL!A916xjL00 zveQiXcE~?m!cgE)B1$YTFD~W_zP!0I{1z%EwhgP_IdWFV5Uv}}` z+xY^G4c~tBpnHgBdBLK~E^5W8L?n`qKaCelT)h2Fs%0D7lxdB8U~)$`QS^MUT&~_N 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

      {db`*csf(?ZtgkNjD@?k+P( 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 B_(cE! literal 0 HcmV?d00001 diff --git a/doc/report/Thesis_Template.lyx b/doc/report/Thesis_Template.lyx new file mode 100644 index 0000000..19b8d5f --- /dev/null +++ b/doc/report/Thesis_Template.lyx @@ -0,0 +1,352 @@ +#LyX 1.6.3 created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass report +\begin_preamble +\usepackage{indentfirst} +\usepackage{tocloft} +\usepackage{calc} +\date{} +\usepackage[section] {placeins} +\def\myClearpage{% + \ifvmode + \ifnum \@dbltopnum =\m@ne + \ifdim \pagetotal <\topskip + \hbox{}% + \fi + \fi + \fi +% \newpage + \write\m@ne{}% + \vbox{}% + \penalty -\@Mi +} +\def\myCleardoublepage{\myClearpage\if@twoside \ifodd\c@page\else + \hbox{}\if@twocolumn\hbox{}\fi\fi\fi} +\usepackage{morefloats} +\usepackage{graphicx} +\usepackage{subfig} +\usepackage{tocloft} +\renewcommand{\cftchapfont}{\bfseries} +\renewcommand{\cftchappagefont}{\bfseries} +\renewcommand{\cftchappresnum}{Chapter } +\renewcommand{\cftchapnumwidth}{6em} +\oddsidemargin 0.5in +\textwidth 6in +\topmargin 0.0in +\textheight 8.0in +\setlength\topskip{24pt} +\footskip 0.75in +\end_preamble +\use_default_options true +\language english +\inputencoding auto +\font_roman lmodern +\font_sans default +\font_typewriter default +\font_default_family rmdefault +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize default +\spacing double +\use_hyperref false +\papersize default +\use_geometry true +\use_amsmath 1 +\use_esint 1 +\cite_engine natbib_authoryear +\use_bibtopic false +\paperorientation portrait +\paperwidth 11in +\paperheight 8.5in +\leftmargin 1.25in +\topmargin 1in +\rightmargin 1in +\bottommargin 1.7in +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +pagenumbering{roman} +\end_layout + +\begin_layout Plain Layout + + +\backslash +setcounter{page}{5} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand +\backslash +contentsname{Table of Contents} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cfttoctitlefont}{ +\backslash +hfill +\backslash +Large} +\backslash +renewcommand{ +\backslash +cftaftertoctitle}{ +\backslash +hfill} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand +\backslash +cftpartdotsep{6.6} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand +\backslash +cftchapdotsep{6.6} +\end_layout + +\end_inset + + +\begin_inset CommandInset toc +LatexCommand tableofcontents + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{List of Tables} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftlottitlefont}{ +\backslash +hfill +\backslash +Large} +\backslash +renewcommand{ +\backslash +cftafterlottitle}{ +\backslash +hfill} +\backslash +renewcommand{ +\backslash +cfttabpresnum}{Table~} +\backslash +setlength +\backslash +cfttabnumwidth{60pt} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset FloatList table + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{List of Figures} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftloftitlefont}{ +\backslash +hfill +\backslash +Large} +\backslash +renewcommand{ +\backslash +cftafterloftitle}{ +\backslash +hfill} +\backslash +renewcommand{ +\backslash +cftfigpresnum}{Figure~} +\backslash +setlength +\backslash +cftfignumwidth{60pt} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset FloatList figure + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +pagenumbering{arabic} +\end_layout + +\begin_layout Plain Layout + + +\backslash +setcounter{page}{1} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Chapter +Introduction +\end_layout + +\begin_layout Standard +Text goes here... +\end_layout + +\begin_layout Section +Objectives +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +Figures go here... +\end_layout + +\begin_layout Chapter +Methodology +\end_layout + +\begin_layout Section +Overview +\end_layout + +\begin_layout Standard +Text goes here... +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +Figures go here... +\end_layout + +\end_body +\end_document diff --git a/doc/report/UTHM-Thesis-Classic-authoryear-V-05.lyx b/doc/report/UTHM-Thesis-Classic-authoryear-V-05.lyx new file mode 100644 index 0000000..a251c39 --- /dev/null +++ b/doc/report/UTHM-Thesis-Classic-authoryear-V-05.lyx @@ -0,0 +1,2262 @@ +#LyX 1.6.7 created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass scrbook +\begin_preamble +%====================== +% Written by Waluyo Adi Siswanto +% You are allowed to modify this +% in order to meet your requirements +%====================== +% this command prints empty date in title page +\date{} + +% If you want your text paragraph is left justfied +% you need to uncomment (delete %) the following command +%\raggedright + +% this command set the paragraph indentation +% if you want to modify change the value 1.5cm to your preference +\setlength{\parindent}{1.5cm} + +%This command will change the default Bibliography to References +\AtBeginDocument{ + \renewcommand{\bibname}{References} + \renewcommand{\nomname}{List of Symbols} +} + +%The following comands center the heading of chapters and +% chapter entries, the default is on the left +\addtokomafont{chapterentry}{\centering} +\addtokomafont{chapter}{\centering} + +% The following commands set the page numbers on the top right +% except in the beginning of chapters +% using fancyhdr package (page layout>heading style->fancy) +\lhead{} +\chead{} +\rhead{\thepage} +\lfoot{} +\cfoot{} +\rfoot{} +\renewcommand{\headrulewidth}{0pt} + +% The following commands set the vertical space before and after +% every chapter entry +\renewcommand*{\chapterheadendvskip}{\vspace{2cm}} +\renewcommand*{\chapterheadstartvskip}{\vspace{2.5cm}} + +% The following commands set the TOC, LOT, LOF and LOA +% this employs tocloft package +\usepackage{tocloft} +\cftpagenumbersoff{part} +\renewcommand{\cftdot}{} +\renewcommand{\cfttoctitlefont}{\hfill\Large\bfseries\sffamily} +\renewcommand{\cftaftertoctitle}{\hfill} +\renewcommand{\cftaftertoctitleskip}{2.5cm} +\renewcommand{\cftbeforetoctitleskip}{2.5cm} + +\renewcommand{\cftloftitlefont}{\hfill\Large\bfseries\sffamily} +\renewcommand{\cftafterloftitle}{\hfill \hfill +\\[3\baselineskip]{Figure No \hfill Title \hfill Page \linebreak} \vskip-50pt} +\renewcommand{\cftbeforeloftitleskip}{2.5cm} + +\renewcommand{\cftlottitlefont}{\hfill\Large\bfseries\sffamily} +\renewcommand{\cftafterlottitle}{\hfill \hfill +\\[3\baselineskip]{Table No \hfill Title \hfill Page \linebreak } +\vskip-50pt} +\renewcommand{\cftbeforelottitleskip}{2.5cm} + +\newlistof{appendices}{loa}{List of Appendices} +\renewcommand{\cftloatitlefont}{\hfill\Large\bfseries\sffamily} +\renewcommand{\cftafterloatitle}{\hfill \hfill +\\[3\baselineskip]{Appendix \hfill Title \hfill Page \linebreak} +\vskip-60pt} +\renewcommand{\cftbeforeloatitleskip}{2.5cm} + + +\renewcommand{\cftchappresnum}{Chapter } +\renewcommand{\cftchapaftersnum}{} +\renewcommand{\cftchapaftersnumb}{\qquad\quad\,\,} +\renewcommand{\cftsecpresnum}{\qquad\quad\,\,\,\, } +\renewcommand{\cftsubsecpresnum}{\quad\,\, } +\renewcommand{\cftsecaftersnum}{} +\renewcommand{\cftsecaftersnumb}{\qquad\qquad\,} +\renewcommand{\cftsubsecaftersnumb}{\quad} + +\usepackage{minitoc} + +% Redefining automatic label of Figure, Table and Eq. +\usepackage{prettyref} +\newrefformat{tab}{Table\,\ref{#1}} +\newrefformat{fig}{Figure\,\ref{#1}} +\newrefformat{eq}{Eq.\,\textup{(\ref{#1})}} + +%To remove extra vertical space in List of Symbols [added in V-05] +%\setlength{\nomitemsep}{-2\parsep} % another alternative +\setlength{\nomitemsep}{-\parsep} + +% from koma-script scrbook.cls, then modified [added in V-05] +% to shift addchap in TOC ro the right: \qquad\qquad\,\, +\renewcommand\addchap{ + \if@openright\cleardoublepage\else\clearpage + \fi + \thispagestyle{plain} + \global\@topnum\z@ + \@afterindentfalse + \secdef\@addchap\@saddchap} + \def\@addchap[#1]#2{ + \typeout{#2} + \addcontentsline{toc}{chapter}{\qquad\qquad\,\, #1} + \if@twoside\@mkboth{#1}{}\else\@mkboth{}{#1} + \fi + \addtocontents{lof}{\protect\addvspace{10\p@}} + \addtocontents{lot}{\protect\addvspace{10\p@}} + \if@twocolumn + \@topnewpage[\@makeschapterhead{#2}] + \else + \@makeschapterhead{#2} + \@afterheading + \fi + } + \def\@saddchap#1{\@mkboth{}{} + \if@twocolumn + \@topnewpage[\@makeschapterhead{#1}] + \else + \@makeschapterhead{#1} + \@afterheading + \fi +} + +\makeatletter + \renewcommand*\l@figure{\@dottedtocline{0}{1.5em}{4.3em}} + \renewcommand*\l@table{\@dottedtocline{0}{1.5em}{4.3em}} + \renewcommand{\@dotsep}{10000} +\makeatother +\end_preamble +\options liststotoc,chapterprefix,tablecaptionabove,bibtotoc,parskip=full,headings=small,numbers=noenddot +\use_default_options true +\language english +\inputencoding auto +\font_roman lmodern +\font_sans lmss +\font_typewriter lmtt +\font_default_family rmdefault +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize 12 +\spacing onehalf +\use_hyperref true +\pdf_title "Write the title of the thesis here" +\pdf_author "Write the student's name here" +\pdf_bookmarks true +\pdf_bookmarksnumbered true +\pdf_bookmarksopen false +\pdf_bookmarksopenlevel 1 +\pdf_breaklinks false +\pdf_pdfborder true +\pdf_colorlinks true +\pdf_backref false +\pdf_pdfusetitle true +\pdf_quoted_options "linkcolor=blue, citecolor=blue, urlcolor=blue, pdfstartview=XYZ, plainpages=false, pdfpagelabels " +\papersize a4paper +\use_geometry true +\use_amsmath 1 +\use_esint 1 +\cite_engine natbib_authoryear +\use_bibtopic false +\paperorientation portrait +\leftmargin 4cm +\topmargin 2.5cm +\rightmargin 2.5cm +\bottommargin 2.5cm +\headsep 0.5cm +\footskip 1cm +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle fancy +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +frontmatter +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Note Note +status open + +\begin_layout Plain Layout +This is UTHM thesis (Classic) template version 0.5 (release date) +\end_layout + +\end_inset + + +\begin_inset VSpace 2.5cm +\end_inset + + +\end_layout + +\begin_layout Title + +\family roman +\series medium +\size larger +The Thesis Title Line 1 +\family default +\series default +\size default + +\begin_inset Newline newline +\end_inset + + +\family roman +\series medium +\size larger +Thesis Title Line 2 +\family default +\series default +\size default + +\begin_inset VSpace 1.8cm +\end_inset + + +\end_layout + +\begin_layout Author +The Author +\begin_inset VSpace 2.5cm +\end_inset + + +\begin_inset Newline newline +\end_inset + + +\size normal +A thesis submitted in +\begin_inset Newline newline +\end_inset + +fulfillment of the requirement for the award of the +\begin_inset Newline newline +\end_inset + +Degree of Doctor of Philosophy / Bachelor of.../ Master of ... +\begin_inset VSpace 3.1cm +\end_inset + + +\begin_inset Newline newline +\end_inset + +FACULTY OF WHATEVER +\size default + +\begin_inset Newline newline +\end_inset + + +\size normal +UNIVERSITY WHATEVER +\begin_inset VSpace 3.1cm +\end_inset + + +\end_layout + +\begin_layout Publishers + +\size normal +SEPTEMBER 2010 +\end_layout + +\begin_layout Standard +\align center +\begin_inset Formula $ $ +\end_inset + + +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +thispagestyle{plain} +\end_layout + +\end_inset + + +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{ +\backslash +qquad +\backslash +qquad +\backslash +, +\backslash +, Declaration} +\end_layout + +\end_inset + + +\begin_inset VSpace 2cm +\end_inset + + +\end_layout + +\begin_layout Standard +\align center +I hereby declare that this thesis entitled “Write The Thesis Title Here” + is the result of my own research except as cited in the references. + This thesis has not been accepted for any degree and is not concurrently + submitted in candidature of any other degree. + +\begin_inset VSpace 2cm +\end_inset + + +\end_layout + +\begin_layout Standard +Signature +\begin_inset Formula $\hphantom{xte1}$ +\end_inset + +: +\end_layout + +\begin_layout Standard +Student +\begin_inset Formula $\hphantom{Date1}$ +\end_inset + +: Write the name of the student here +\end_layout + +\begin_layout Standard +Date +\begin_inset Formula $\hphantom{Student1}$ +\end_inset + +: Write the date here +\begin_inset VSpace 4cm +\end_inset + + +\end_layout + +\begin_layout Standard +Supervisor +\begin_inset Formula $\hphantom{Co}\,$ +\end_inset + +: Write supervisor's name here +\begin_inset VSpace 2cm +\end_inset + + +\end_layout + +\begin_layout Standard +Co-Supervisor: Write co-supervisor's name here +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\align center +\begin_inset Formula $ $ +\end_inset + + +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +thispagestyle{plain} +\end_layout + +\end_inset + + +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{ +\backslash +qquad +\backslash +qquad +\backslash +, +\backslash +, Dedication} +\end_layout + +\end_inset + + +\begin_inset VSpace 2cm +\end_inset + + +\end_layout + +\begin_layout Standard +\align center +For my beloved mother and father +\end_layout + +\begin_layout Addchap +Acknowledgment +\end_layout + +\begin_layout Standard +Here is the acknowledgment must be written. +\end_layout + +\begin_layout Standard +Praise to the Almighty... + +\end_layout + +\begin_layout Standard +Thanks to supervisor(s)... + +\end_layout + +\begin_layout Standard +Thanks to sponsor... + +\end_layout + +\begin_layout Standard +Appreciate family... + +\end_layout + +\begin_layout Standard +Thanks to friends... + +\begin_inset VSpace medskip +\end_inset + + +\end_layout + +\begin_layout Standard +\align right +Author, Place +\end_layout + +\begin_layout Addchap +Abstract +\end_layout + +\begin_layout Standard +The abstract should be brief, written in one paragraph and not exceed 300 + words. + This only demonstrates the paragraph in the abstract. + +\end_layout + +\begin_layout Addchap +Abstrak +\end_layout + +\begin_layout Standard +Here is the abstract in Malay. + Please write the abstract in Malay. + Please write the abstract in Malay. + Please write the abstract in Malay. +\end_layout + +\begin_layout Standard +\begin_inset Newpage clearpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset toc +LatexCommand tableofcontents + +\end_inset + + +\begin_inset Newpage clearpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset FloatList figure + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{ +\backslash +qquad +\backslash +qquad +\backslash +, +\backslash +, List of Figures} +\end_layout + +\end_inset + + +\begin_inset Newpage clearpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset FloatList table + +\end_inset + + +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{ +\backslash +qquad +\backslash +qquad +\backslash +, +\backslash +, List of Tables} +\end_layout + +\end_inset + + +\begin_inset Newpage clearpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftchappresnum}{ +\backslash +quad +\backslash +, +\backslash +, +\backslash +,} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftchapaftersnum}{} +\backslash +renewcommand{ +\backslash +cftchapaftersnumb}{ +\backslash +qquad +\backslash +qquad} +\end_layout + +\begin_layout Plain Layout + + +\backslash +listofappendices +\end_layout + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{ +\backslash +qquad +\backslash +qquad +\backslash +, +\backslash +, List of Appendices} +\end_layout + +\end_inset + + +\begin_inset Newpage clearpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset nomencl_print +LatexCommand printnomenclature + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{ +\backslash +qquad +\backslash +qquad +\backslash +, +\backslash +, List of Symbols} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +mainmatter +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Chapter +Introduction +\begin_inset CommandInset label +LatexCommand label +name "cha:Introduction" + +\end_inset + + +\end_layout + +\begin_layout Standard +The specific use of the word “thesis” in this guide refers to the academic + writings submitted in fulfillment for the award of the doctoral degree + or the masters by research degree. + The word “thesis” is also used in general to refer to the master’s project + report and research dissertation, which are the documents submitted in + partial fulfillment for the award of the degree of master by coursework + or by coursework and research as well as the undergraduate project reports. + +\end_layout + +\begin_layout Standard +The Numisheet Conferences is conducted once every three years in location + between North America, Europe and Asia. + The conference attracts international participation from the metal forming + industry and university professors interested in sheet metal forming technology +, with a strong emphasis on forming simulation. + The Numisheet Conference Proceedings include the latest developments in + metal forming technology, which is a rapidly growing and challenging opportunit +y for application of science to industry. +\end_layout + +\begin_layout Section +Background of Study +\end_layout + +\begin_layout Standard +One of the hallmarks of the conference is the Numisheet Benchmark Study, + which is a set of three blind tests prepared one year prior to the conference. + Numisheet 2008 Benchmark Problem II is provided by Daimler AG. + For this benchmark, the well known S-Rail geometry as shown in +\begin_inset CommandInset ref +LatexCommand prettyref +reference "fig:R-rail-geometry" + +\end_inset + + was chosen. + In this benchmark, study the influence of different drawbeads geometries; + smooth bead and locking bead on the springback behavior for steel is to + be examined using numerical simulation. + Here is the example of citation. + +\begin_inset CommandInset citation +LatexCommand citep +key "Rodriguez2009,Poirson2007" + +\end_inset + + +\end_layout + +\begin_layout Standard +Sheet metal forming is one of the most widely used manufacturing processes + for the fabrication of a wide range of products in many industries. + The reason behind sheet metal forming gaining a lot attention in modern + technology is due to the ease with which metal may be formed into useful + shapes by plastic deformation processes. +\end_layout + +\begin_layout Standard +\begin_inset Float figure +placement h +wide false +sideways false +status open + +\begin_layout Plain Layout +\align center +\begin_inset Graphics + filename sample.png + width 80col% + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption + +\begin_layout Plain Layout +S-rail geometry +\begin_inset CommandInset label +LatexCommand label +name "fig:R-rail-geometry" + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Chapter +Literature Review +\begin_inset CommandInset label +LatexCommand label +name "cha:Literature-Review" + +\end_inset + + +\end_layout + +\begin_layout Standard +The sheet metal forming process, in theory, can be viewed as relatively + straight forward operation where a sheet of material is plastically deformed + into desired shape. + +\begin_inset CommandInset citation +LatexCommand cite +key "Schell2002" + +\end_inset + + has investigated musical melodies. +\end_layout + +\begin_layout Section +Practical Usage +\end_layout + +\begin_layout Standard +In practice, however, variations in blank dimensions, material properties + and environmental conditions make the predictability and reproducibility + of a sheet metal forming process difficult. + Apart from this, springback properties of sheet metal make it extremely + tedious to design appropriate tooling for a given process. + +\begin_inset CommandInset citation +LatexCommand cite +key "Poirson2007" + +\end_inset + + concluded the analysis as shown in +\begin_inset CommandInset ref +LatexCommand prettyref +reference "tab:Data-structure" + +\end_inset + +. +\end_layout + +\begin_layout Standard +The explanation of the Hubolt formula +\begin_inset Formula \begin{equation} +f(t)=\intop_{s0}^{s1}d\left(x\right)\label{eq:hubolt}\end{equation} + +\end_inset + +where +\begin_inset Formula $x$ +\end_inset + + is the displacement. +\end_layout + +\begin_layout Standard +\begin_inset CommandInset ref +LatexCommand prettyref +reference "eq:hubolt" + +\end_inset + + can be derived from another equation as written by +\begin_inset Formula \begin{equation} +\varepsilon_{x}=\dfrac{\partial u}{\partial x}\label{eq:fdfdfd}\end{equation} + +\end_inset + + +\end_layout + +\begin_layout Standard +This is another example +\begin_inset Formula \begin{equation} +\left[N\right]=\left[\begin{array}{ccc} +N_{1} & N_{2} & N_{3}\end{array}\right]^{T}\label{eq:ddssdd}\end{equation} + +\end_inset + +as mention in +\begin_inset CommandInset ref +LatexCommand prettyref +reference "cha:Introduction" + +\end_inset + +. +\end_layout + +\begin_layout Section +dded +\end_layout + +\begin_layout Subsection +dddd +\end_layout + +\begin_layout Standard +\begin_inset Float table +placement h +wide false +sideways false +status open + +\begin_layout Plain Layout + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption + +\begin_layout Plain Layout +Data structure +\begin_inset CommandInset label +LatexCommand label +name "tab:Data-structure" + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\align center +\begin_inset Tabular + + + + + + + + +\begin_inset Text + +\begin_layout Plain Layout +node +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +x +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +y +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +z +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +2 +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset + + + + +\end_inset + + +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +DVI +\begin_inset CommandInset nomenclature +LatexCommand nomenclature +symbol "DVI" +description "Device Independent" + +\end_inset + +, +\begin_inset Formula $\sigma$ +\end_inset + + +\begin_inset CommandInset nomenclature +LatexCommand nomenclature +symbol "$\\sigma$" +description "Nominal Stress" + +\end_inset + + +\end_layout + +\begin_layout Chapter +Methodology +\end_layout + +\begin_layout Standard +dsds +\end_layout + +\begin_layout Standard +bla bla bla +\end_layout + +\begin_layout Section +Title +\end_layout + +\begin_layout Standard +bla bla bla +\end_layout + +\begin_layout Section +Another Title +\end_layout + +\begin_layout Standard +bla bla bla +\end_layout + +\begin_layout Standard +\begin_inset Formula \begin{equation} +ff\end{equation} + +\end_inset + + +\end_layout + +\begin_layout Chapter +Title of Chapter 4 +\end_layout + +\begin_layout Standard +bla bla bla +\end_layout + +\begin_layout Section +Title +\end_layout + +\begin_layout Standard +bla bla bla +\end_layout + +\begin_layout Section +Another Title +\end_layout + +\begin_layout Standard +bla bla bla +\end_layout + +\begin_layout Chapter +Title of Chapter 5 +\end_layout + +\begin_layout Standard +bla bla bla bla bla +\end_layout + +\begin_layout Section +Title +\end_layout + +\begin_layout Standard +According to +\begin_inset CommandInset citation +LatexCommand citet +key "Abdullah1989" + +\end_inset + + also +\begin_inset CommandInset citation +LatexCommand citet +key "Creme2003" + +\end_inset + +, bla bla bla. +\end_layout + +\begin_layout Section +Another Title +\end_layout + +\begin_layout Standard +bla bla bla +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +setlength{ +\backslash +parskip}{0.3cm} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset bibtex +LatexCommand bibtex +bibfiles "thesis" +options "UTHM-ref-style-V-04" + +\end_inset + + +\end_layout + +\begin_layout Part* +APPENDICES +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +thispagestyle{empty} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +renewcommand*{ +\backslash +chapterheadendvskip}{ +\backslash +vspace{2cm}} +\backslash +renewcommand*{ +\backslash +chapterheadstartvskip}{ +\backslash +vspace{1cm}} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\start_of_appendix +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +makeatletter +\end_layout + +\begin_layout Plain Layout + + +\backslash +def +\backslash +@chapter[#1]#2{ +\backslash +ifnum +\backslash +c@secnumdepth > +\backslash +m@ne +\end_layout + +\begin_layout Plain Layout + + +\backslash +if@mainmatter +\end_layout + +\begin_layout Plain Layout + + +\backslash +refstepcounter{chapter}% +\end_layout + +\begin_layout Plain Layout + + +\backslash +typeout{ +\backslash +@chapapp +\backslash +space +\backslash +thechapter.}% +\end_layout + +\begin_layout Plain Layout + + +\backslash +addcontentsline{loa}{chapter}% +\end_layout + +\begin_layout Plain Layout + +{ +\backslash +protect +\backslash +numberline{ +\backslash +thechapter}#1}% +\end_layout + +\begin_layout Plain Layout + + +\backslash +else +\end_layout + +\begin_layout Plain Layout + + +\backslash +addcontentsline{loa}{chapter}{#1}% +\end_layout + +\begin_layout Plain Layout + + +\backslash +fi +\end_layout + +\begin_layout Plain Layout + + +\backslash +else +\end_layout + +\begin_layout Plain Layout + + +\backslash +addcontentsline{loa}{chapter}{#1}% +\end_layout + +\begin_layout Plain Layout + + +\backslash +fi +\end_layout + +\begin_layout Plain Layout + + +\backslash +chaptermark{#1}% +\end_layout + +\begin_layout Plain Layout + + +\backslash +addtocontents{lot}{ +\backslash +protect +\backslash +addvspace{10 +\backslash +p@}}% +\end_layout + +\begin_layout Plain Layout + + +\backslash +addtocontents{lof}{ +\backslash +protect +\backslash +addvspace{10 +\backslash +p@}}% +\end_layout + +\begin_layout Plain Layout + + +\backslash +if@twocolumn +\end_layout + +\begin_layout Plain Layout + + +\backslash +@topnewpage[ +\backslash +@makechapterhead{#2}]% +\end_layout + +\begin_layout Plain Layout + + +\backslash +else +\end_layout + +\begin_layout Plain Layout + + +\backslash +@makechapterhead{#2}% +\end_layout + +\begin_layout Plain Layout + + +\backslash +@afterheading +\end_layout + +\begin_layout Plain Layout + + +\backslash +fi} +\end_layout + +\begin_layout Plain Layout + + +\backslash +makeatother +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addtocontents{toc}{ +\backslash +protect +\backslash +setcounter{tocdepth}{0}} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Chapter +Write Title Here +\end_layout + +\begin_layout Standard +You can see here the equation number is consistent with Appendix numbering + system +\end_layout + +\begin_layout Standard +\begin_inset Formula \begin{equation} +\left[k^{e}\right]=\dfrac{AE}{L}\left[\begin{array}{cc} +1 & -1\\ +-1 & 1\end{array}\right]\end{equation} + +\end_inset + + +\end_layout + +\begin_layout Section +Section title 1 here +\end_layout + +\begin_layout Standard +Text text text of first paragraph +\end_layout + +\begin_layout Standard +Now second paragraph. + +\begin_inset CommandInset citation +LatexCommand cite +key "Bongers1998" + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Formula \begin{equation} +f\left(x\right)=3x^{2}+\intop_{0}^{20}45x^{2}\textrm{d}x\end{equation} + +\end_inset + + +\end_layout + +\begin_layout Section +Section title 2 here +\end_layout + +\begin_layout Standard +Text text text of first paragraph +\end_layout + +\begin_layout Standard +Now second paragraph +\end_layout + +\begin_layout Chapter +Source Code for Initial Model +\end_layout + +\begin_layout Standard +The following codes are written in LaTe +\begin_inset ERT +status open + +\begin_layout Plain Layout + +\end_layout + +\end_inset + +X preamble +\end_layout + +\begin_layout Standard +\begin_inset listings +lstparams "basicstyle={\small\ttfamily},breaklines=true,numbers=left" +inline false +status open + +\begin_layout Plain Layout + +%====================== +\end_layout + +\begin_layout Plain Layout + +% Written by Waluyo Adi Siswanto +\end_layout + +\begin_layout Plain Layout + +% You are allowed to modify this +\end_layout + +\begin_layout Plain Layout + +% in order to meet your requirements +\end_layout + +\begin_layout Plain Layout + +%====================== +\end_layout + +\begin_layout Plain Layout + +% this command prints empty date in title page +\end_layout + +\begin_layout Plain Layout + + +\backslash +date{} +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\begin_layout Plain Layout + +% this command set the paragraph indentation +\end_layout + +\begin_layout Plain Layout + +% if you want to modify change the value 1.5cm to your preference +\end_layout + +\begin_layout Plain Layout + + +\backslash +setlength{ +\backslash +parindent}{1.5cm} +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\begin_layout Plain Layout + +%This command will change the default Bibliography to References +\end_layout + +\begin_layout Plain Layout + + +\backslash +AtBeginDocument{ +\backslash +renewcommand{ +\backslash +bibname}{References}} +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\begin_layout Plain Layout + +%The following comands center the heading of chapters and +\end_layout + +\begin_layout Plain Layout + +% chapter entries, the default is on the left +\end_layout + +\begin_layout Plain Layout + + +\backslash +addtokomafont{chapterentry}{ +\backslash +centering} +\end_layout + +\begin_layout Plain Layout + + +\backslash +addtokomafont{chapter}{ +\backslash +centering} +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\begin_layout Plain Layout + +% The following commands set the page numbers on the top right +\end_layout + +\begin_layout Plain Layout + +% except in the beginning of chapters +\end_layout + +\begin_layout Plain Layout + +% using fancyhdr package (page layout>heading style->fancy) +\end_layout + +\begin_layout Plain Layout + + +\backslash +lhead{} +\end_layout + +\begin_layout Plain Layout + + +\backslash +chead{} +\end_layout + +\begin_layout Plain Layout + + +\backslash +rhead{ +\backslash +thepage} +\end_layout + +\begin_layout Plain Layout + + +\backslash +lfoot{} +\end_layout + +\begin_layout Plain Layout + + +\backslash +cfoot{} +\end_layout + +\begin_layout Plain Layout + + +\backslash +rfoot{} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +headrulewidth}{0pt} +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\begin_layout Plain Layout + +% The following commands set the vertical space before and after +\end_layout + +\begin_layout Plain Layout + +% every chapter entry +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand*{ +\backslash +chapterheadendvskip}{ +\backslash +vspace{2cm}} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand*{ +\backslash +chapterheadstartvskip}{ +\backslash +vspace{2.5cm}} +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\begin_layout Plain Layout + +% The following commands set the TOC, LOT and LOF +\end_layout + +\begin_layout Plain Layout + +% this employs tocloft package +\end_layout + +\begin_layout Plain Layout + + +\backslash +usepackage{tocloft} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftdot}{} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cfttoctitlefont}{ +\backslash +hfill +\backslash +Large +\backslash +bfseries +\backslash +sffamily} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftaftertoctitle}{ +\backslash +hfill} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftaftertoctitleskip}{2.5cm} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftbeforetoctitleskip}{2.5cm} +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftloftitlefont}{ +\backslash +hfill +\backslash +Large +\backslash +bfseries +\backslash +sffamily} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftafterloftitle}{ +\backslash +hfill} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftafterloftitleskip}{2.5cm} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftbeforeloftitleskip}{2.5cm} +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftlottitlefont}{ +\backslash +hfill +\backslash +Large +\backslash +bfseries +\backslash +sffamily} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftafterlottitle}{ +\backslash +hfill} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftafterlottitleskip}{2.5cm} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftbeforelottitleskip}{2.5cm} +\end_layout + +\begin_layout Plain Layout + + +\backslash +usepackage{tocloft} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftdot}{} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cfttoctitlefont}{ +\backslash +hfill +\backslash +Large +\backslash +bfseries +\backslash +sffamily} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftaftertoctitle}{ +\backslash +hfill} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftaftertoctitleskip}{2.5cm} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftbeforetoctitleskip}{2.5cm} +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftloftitlefont}{ +\backslash +hfill +\backslash +Large +\backslash +bfseries +\backslash +sffamily} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftafterloftitle}{ +\backslash +hfill} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftafterloftitleskip}{2.5cm} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftbeforeloftitleskip}{2.5cm} +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftlottitlefont}{ +\backslash +hfill +\backslash +Large +\backslash +bfseries +\backslash +sffamily} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftafterlottitle}{ +\backslash +hfill} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftafterlottitleskip}{2.5cm} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftbeforelottitleskip}{2.5cm} +\end_layout + +\begin_layout Plain Layout + +\end_layout + +\begin_layout Plain Layout + + +\backslash +usepackage{minitoc} +\end_layout + +\begin_layout Plain Layout + +% Redefining automatic label of +\end_layout + +\begin_layout Plain Layout + +% Figure, Table and Eq. + +\end_layout + +\begin_layout Plain Layout + + +\backslash +usepackage{prettyref} +\end_layout + +\begin_layout Plain Layout + + +\backslash +newrefformat{tab}{Table +\backslash +, +\backslash +ref{#1}} +\end_layout + +\begin_layout Plain Layout + + +\backslash +newrefformat{fig}{Figure +\backslash +, +\backslash +ref{#1}} +\end_layout + +\begin_layout Plain Layout + + +\backslash +newrefformat{eq}{Eq. +\backslash +, +\backslash +textup{( +\backslash +ref{#1})}} +\end_layout + +\end_inset + + +\end_layout + +\end_body +\end_document diff --git a/doc/report/gu_logo.png b/doc/report/gu_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..1f83e775d3efc7fcb380d0ca3357bda45cc64dbd GIT binary patch literal 15026 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 Zij+^-R=jkbVF?vMK}J=&M$$Ow{{T^?Qvd(} literal 0 HcmV?d00001 diff --git a/doc/report/report.lyx b/doc/report/report.lyx new file mode 100644 index 0000000..d216beb --- /dev/null +++ b/doc/report/report.lyx @@ -0,0 +1,984 @@ +#LyX 1.6.7 created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass report +\begin_preamble +\usepackage{indentfirst} +\usepackage{tocloft} +\usepackage{calc} +\date{} +\usepackage[section] {placeins} +\def\myClearpage{% + \ifvmode + \ifnum \@dbltopnum =\m@ne + \ifdim \pagetotal <\topskip + \hbox{}% + \fi + \fi + \fi +% \newpage + \write\m@ne{}% + \vbox{}% + \penalty -\@Mi +} +\def\myCleardoublepage{\myClearpage\if@twoside \ifodd\c@page\else + \hbox{}\if@twocolumn\hbox{}\fi\fi\fi} +\usepackage{morefloats} +\usepackage{graphicx} +\usepackage{subfig} +\usepackage{tocloft} +\renewcommand{\cftchapfont}{\bfseries} +\renewcommand{\cftchappagefont}{\bfseries} +\renewcommand{\cftchappresnum}{Chapter } +\renewcommand{\cftchapnumwidth}{6em} +\oddsidemargin 0.5in +\textwidth 6in +\topmargin 0.0in +\textheight 8.0in +\setlength\topskip{24pt} +\footskip 0.75in +\end_preamble +\use_default_options true +\language english +\inputencoding auto +\font_roman lmodern +\font_sans default +\font_typewriter default +\font_default_family rmdefault +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize default +\spacing double +\use_hyperref false +\papersize default +\use_geometry true +\use_amsmath 1 +\use_esint 1 +\cite_engine natbib_authoryear +\use_bibtopic false +\paperorientation portrait +\paperwidth 11in +\paperheight 8.5in +\leftmargin 1.25in +\topmargin 1in +\rightmargin 1in +\bottommargin 1.7in +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Title +Generic Game Server +\end_layout + +\begin_layout Author +Jonatan Pålsson +\begin_inset Newline newline +\end_inset + +Niklas Landin +\begin_inset Newline newline +\end_inset + +Richard Pannek +\begin_inset Newline newline +\end_inset + +Matias Petterson +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +pagenumbering{roman} +\end_layout + +\begin_layout Plain Layout + + +\backslash +setcounter{page}{5} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand +\backslash +contentsname{Table of Contents} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cfttoctitlefont}{ +\backslash +hfill +\backslash +Large} +\backslash +renewcommand{ +\backslash +cftaftertoctitle}{ +\backslash +hfill} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand +\backslash +cftpartdotsep{6.6} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand +\backslash +cftchapdotsep{6.6} +\end_layout + +\end_inset + + +\begin_inset CommandInset toc +LatexCommand tableofcontents + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{List of Tables} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftlottitlefont}{ +\backslash +hfill +\backslash +Large} +\backslash +renewcommand{ +\backslash +cftafterlottitle}{ +\backslash +hfill} +\backslash +renewcommand{ +\backslash +cfttabpresnum}{Table~} +\backslash +setlength +\backslash +cfttabnumwidth{60pt} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset FloatList table + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{List of Figures} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftloftitlefont}{ +\backslash +hfill +\backslash +Large} +\backslash +renewcommand{ +\backslash +cftafterloftitle}{ +\backslash +hfill} +\backslash +renewcommand{ +\backslash +cftfigpresnum}{Figure~} +\backslash +setlength +\backslash +cftfignumwidth{60pt} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset FloatList figure + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +pagenumbering{arabic} +\end_layout + +\begin_layout Plain Layout + + +\backslash +setcounter{page}{1} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Chapter +Introduction +\end_layout + +\begin_layout Section +Background +\end_layout + +\begin_layout Section +Purpose +\end_layout + +\begin_layout Section +Challenges +\end_layout + +\begin_layout Standard +Challenges lies mainly in providing a reliable, high-performing server and + at the same time make it easy to use for game developers. + +\end_layout + +\begin_layout Subsection +Basis +\end_layout + +\begin_layout Section +Delimitations +\end_layout + +\begin_layout Subsection +Types of games +\end_layout + +\begin_layout Standard +In theory no limitations, but in reality it will be limitations. + Many factors are involved here. + Implementation of protocol, storage possibilities, server capacity, language + support. + In real time games a low latency is very important not a high bandwidth + because the games already send very little data, ~ 80 bytes. + Lag of below 250 ms is good, lag up to 500 ms payable and beyond that the + lag is noticeable. +\end_layout + +\begin_layout Section +Method +\end_layout + +\begin_layout Subsection +Development process +\end_layout + +\begin_layout Standard +May be Extreme Programming(XP), need to check this out further. + Maybe adapt so we can say that we use a standardized software development + method. +\end_layout + +\begin_layout Subsubsection +Demand specification +\end_layout + +\begin_layout Subsection +Design +\end_layout + +\begin_layout Subsection +Testing and evaluation +\end_layout + +\begin_layout Standard +Can we use quickcheck? +\end_layout + +\begin_layout Chapter +Theory +\end_layout + +\begin_layout Subsection +Performance +\end_layout + +\begin_layout Standard +How many players can we have on a server? Performance differences between + games? e.g can one game have thousands players on a server and another only + have hundreds? Questions to be discussed here. + +\begin_inset Note Note +status open + +\begin_layout Plain Layout +Create a game with several thousand players, see how our server scales, + how can we improve the performance? Sharding isn’t very nice.. + alternatives? Improve the speed of sharding? +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Subsection +Choice of network protocol +\end_layout + +\begin_layout Standard +There are three main ways in which computer communication over the Internet + usually takes place; TCP, UDP and HTTP. + The first two are transport layer protocols, which are commonly used to + transport application layer protocols, such as HTTP. + TCP and UDP can not be used on their own, without an application layer + protocol on top. + Application layer protocols such as HTTP on the other hand needs a transport + layer protocol in order to work. + +\end_layout + +\begin_layout Subsubsection +HTTP +\end_layout + +\begin_layout Standard +Since HTTP is so widely used on the Internet today in web servers, it is + available on most Internet connected devices. + This means that if HTTP is used in GGS, firewalls will not pose problems, + which is a great benefit. + However, due to the intended usage of HTTP in web servers, the protocol + was designed to be stateless and client-initiated. + In order to maintain a state during a game session using HTTP, some sort + of token would have to be passed between client and server at all times, + much like how a web server works. + These facts combined makes HTTP unsuitable for our purposes, since GGS + requires a state to be maintained throughout a session, and also needs + to push data from the server to clients without the clients requesting + data. + It should also be mentioned that HTTP uses the TCP protocol for transport, + and what is said about TCP also applies to HTTP. + +\end_layout + +\begin_layout Subsubsection +UDP +\end_layout + +\begin_layout Standard +Many online games use UDP as the carrier for their application layer protocol. + UDP moves data across a network very quickly, however it does not ensure + that the data transferred arrives in consistent manner. + Data sent via UDP may be repeated, lost or out of order. + To ensure the data transferred is in good shape, some sort of error checking + mechanisms must be implemented. + UDP is a good choice for applications where it is more important that data + arrives in a timely manner than that all data arrives undamaged, it is + thus very suitable for media streaming, for example. + In GGS reliability of transfer was chosen before the speed of the transfer, + ruling out UDP as the transport later protocol. + +\end_layout + +\begin_layout Subsubsection +TCP +\end_layout + +\begin_layout Standard +For reliable transfers, TCP is often used on the Internet. + Built in to the protocol are the error checking and correction mechanisms + missing in UDP. + This ensures the consistency of data, but also makes the transfer slower + than if UDP had been used. + In GGS, data consistency is more important than transfer speeds, and thus + TCP is a better alternative than UDP. +\end_layout + +\begin_layout Subsection +Encryption +\end_layout + +\begin_layout Subsubsection +Performance penalties +\end_layout + +\begin_layout Subsection +Availability +\end_layout + +\begin_layout Standard +One important factor of a server is the availability, a server that you + can not connect to is a bad server. + Erlang has several features to increase the availability, for example hot + code replacement. + It is also critical to have a good design, we want to separate each part + of the server and thus avoiding that the whole server will crash. + +\end_layout + +\begin_layout Standard +\begin_inset Note Note +status open + +\begin_layout Plain Layout +Players are unsatisfied with the service of WoW Telecoms have the same problem + of having to migrate users from one node to another, this is called handover +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Subsection +Scalability +\end_layout + +\begin_layout Standard +Because P2P game architectures are a constant goal for cheaters and because + “Cheating is a major concern in network games as it degrades the experience + of the majority of players who are honest” and preventing cheating in P2P + game architectures is very difficult game developers try to use Client + - Server architectures which have a natural problem to scale. + In this paper we want to show some strategies to achieve scalability. +\end_layout + +\begin_layout Subsubsection +UUID +\end_layout + +\begin_layout Subsection +Security +\end_layout + +\begin_layout Standard +We only support languages running in a sandboxed environment. + Each game session is started in its own sandbox. + The sandboxing isolates the games in such a way that they can not interfere + with each other. + If sandboxing was not in place, one game could potentially modify the contents + of a different game. + A similar approach is taken with the persistent storage we provide. + In the storage each game has its own namespace, much like a table in a + relational database. + A game is not allowed to venture outside this namespace, and can because + of this not modify the persistent data of other games. +\end_layout + +\begin_layout Chapter +Overview +\end_layout + +\begin_layout Subsection +Techniques for ensuring reliability +\end_layout + +\begin_layout Standard +One of the main goals of the project is to achieve high reliability. + A highly reliable application is one crashes very, very rarely +\begin_inset Note Note +status open + +\begin_layout Plain Layout +CITATION NEEDED +\end_layout + +\end_inset + +. + There are some tools for creating reliable applications built in to Erlang. + +\end_layout + +\begin_layout Itemize +Links between processes. + When a process spawns a new child process, and the child process later + exits, the parent process is notified of the exit. + +\end_layout + +\begin_layout Itemize +Transparent distribution over a network of processors. + When several nodes participate in a network, it does not matter on which + of these machines a process is run. + Communication between processes does not depend on the node in which each + process is run. + +\end_layout + +\begin_layout Itemize +Hot code replacements. + Two versions of the same module can reside in the memory of Erlang at any + time. + This means that a simple swap between these versions can take place very + quickly, and without stopping the machine. +\end_layout + +\begin_layout Standard +These three features are some of the basic building blocks for more sophisticate +d reliability systems in Erlang. + Many times it is not necessary to use these features directly, but rather + through the design patterns described below. +\end_layout + +\begin_layout Subsubsection +Supervisor structure +\end_layout + +\begin_layout Standard +By linking processes together and notifying parents when children exit, + we can create supervisors. + A supervisor is a common approach in ensuring that an application functions + in the way it was intended. + When a process misbehaves, the supervisor takes some action to restore + the process to a functional state. + +\end_layout + +\begin_layout Standard +There are several approaches to supervisor design in general (when not just + considering how they work in Erlang). + One common approach is to have the supervisor look in to the state of the + process(es) it supervises, and let the supervisor make decisions based + on this state. + The supervisor has a specification of how the process it supervises should + function, and this is how it makes decisions. + +\end_layout + +\begin_layout Standard +In Erlang, we have a simple version of supervisors. + We do not inspect the state of the processes being supervised. + We do have a specification of how the supervised processes should behave, + but on a higher level. + The specification describes things such as how many times in a given time + interval a child process may crash, which processes need restarting when + crashes occur, and so forth. + +\end_layout + +\begin_layout Standard +When the linking of processes in order to monitor exit behaviour is coupled + with the transparent distribution of Erlang, a very powerful supervision + system is created. + For instance, we can restart a failing process on a different, new node, + with minimal impact on the system as a whole. + +\end_layout + +\begin_layout Standard +In GGS, we have separated the system in to two large supervised parts. + We try to restart a crashing child separately, if this fails too many times, + we restart the nearest supervisor of this child. + This ensures separation of the subsystems so that a crash is as isolated + as possible. +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename supervisors.png + scale 40 + +\end_inset + + +\end_layout + +\begin_layout Standard +The graphic above shows our two subsystems, the coordinator subsystem and + the dispatcher subsystem. + Since these two systems perform very different tasks they have been separated. + Each subsystem has one worker process, the coordinator or the dispatcher. + The worker process keeps a state which should not be lost upon a crash. +\end_layout + +\begin_layout Standard +We have chosen to let faulty processes crash very easily when they receive + bad data, or something unexpected happens. + The alternative to crashing would have been to try and fix this faulty + data, or to foresee the unexpected events. + We chose not to do this because it is so simple to monitor and restart + processes, and so difficult to try and mend broken states. + This approach is something widely deployed in the Erlang world, and developers + are often encouraged to “Let it crash”. +\end_layout + +\begin_layout Standard +To prevent any data loss, the good state of the worker processes is stored + in their respective backup processes. + When a worker process (re)starts, it asks the backup process for any previous + state, if there is any that state is loaded in to the worker and it proceeds + where it left off. + If on the other hand no state is available, a special message is delivered + instead, making the worker create a new state, this is what happens when + the workers are first created. +\end_layout + +\begin_layout Subsubsection +Hot code replacement +\end_layout + +\begin_layout Subsection +Implementation +\end_layout + +\begin_layout Subsubsection +User interface +\end_layout + +\begin_layout Chapter +Problems +\end_layout + +\begin_layout Subsection +Erlang JS +\end_layout + +\begin_layout Standard +To be able to run JavaScript on our server we needed to embed a JavaScript + engine within the server. + After a thorough investigation erlang_js became our choice. + erlang_js provides direct communication with a JavaScript VM (Virtual Machine). + This was exactly what we wanted, but we also needed the possibility to + communicate from erlang_js to Erlang. + This functionality was not yet implemented in erlang_js, due to lack of + time. +\end_layout + +\begin_layout Standard +There were two possible solutions to the problem. + We could rewrite some part of erlang_js, or we could switch erlang_js for + some other JavaScript engine. + Searching for other engines we found erlv8 and beam.js which provided the + functionality that we wanted. + As we tested beam.js it occurred random crashes of the whole Erlang environment. + These crashes were related to the use of erlv8 in beam.js and we decided + that the use of erlv8 was not an alternative due to the stability issues. +\end_layout + +\begin_layout Standard +To get the functionality needed we decided to implement this in erlang_js. +\end_layout + +\begin_layout Subsubsection +UUID +\end_layout + +\begin_layout Standard +Erlang identifies processes uniquely throughout the entire Erlang network + using process IDs (PID). + When we wish to refer to erlang processes from outside our erlang system, + for example in a virtual machine for a different language, possibly on + a different machine, these PIDs are no longer useful. + +\end_layout + +\begin_layout Standard +This problem is not new, and a common solution is to use a Universally Unique + Identifier, a UUID. + These identifiers are generated both using randomization and using time. + A reasonably large number of UUIDs can be generated before a collision + should occur. + There are standard tools in many UNIX systems to generate UUIDs, we chose + to use the uuidgen command, which employs an equidistributed combined Tausworth +e generator. +\end_layout + +\begin_layout Section +Design choices +\end_layout + +\begin_layout Standard +When designing concurrent applications, it is useful to picture them as + real world scenarios, and to model each actor# as a real world process. + A real world process is a process which performs some action in the real + world, such as a mailbox receiving a letter, a door being opened, a person + translating a text, a soccer player kicking the ball, just to name a few + examples. + Since we focus on games in this project, it is suitable to model our system + as a place where games take place. + We imagined a chess club. + +\end_layout + +\begin_layout Standard +The clients pictured as green circles can be thought of as the physical + chess players. +\end_layout + +\begin_layout Standard +When a player wants to enter the our particular chess club, he must first + be let in by the doorman, called the Dispatcher in GGS. +\end_layout + +\begin_layout Standard +He then gets a name badge, and thus becomes a Player process in the system. + He is also guided in to the lobby by the Coordinator, which has the role + of the host of the chess club. +\end_layout + +\begin_layout Standard +When players wish to play against each other, they talk to the Coordinator + who pairs them up, and places them at a table. + Once they have sat down at the table, they no longer need the assistance + of the Coordinator, all further communication takes place via the table. + This can be thought of as the actual chess game commencing. + +\end_layout + +\begin_layout Standard +All the moves made in the game are recorded by the table, such that the + table can restore the game in case something would happen, such as the + table tipping over, which would represent the table process crashing. +\end_layout + +\begin_layout Standard +Once a player wishes to leave a game, or the entire facility, he should + contact the Coordinator, who revokes his name badge and the Dispatcher + will let the player out. +\end_layout + +\begin_layout Standard +With the information kept in the tables and the Coordinator combined, we + can rebuild the entire state of the server at a different location. + This can be thought of the chess club catching fire, and the Coordinator + rounding up all the tables, running to a new location and building the + club up in the exact state it was prior to the fire. +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename system_structure.png + scale 40 + +\end_inset + + +\end_layout + +\begin_layout Section +Understanding OTP +\end_layout + +\begin_layout Section +Usability +\end_layout + +\begin_layout Chapter +Results and discussion +\end_layout + +\begin_layout Section +Software development methodology +\end_layout + +\begin_layout Section +Statistics +\end_layout + +\begin_layout Chapter +Conclusion +\end_layout + +\begin_layout Chapter +References +\end_layout + +\begin_layout Chapter +Appendix +\end_layout + +\begin_layout Standard +Text goes here.. +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-1" + +\end_inset + +Savor, T.; Seviora, R.E.; , "Hierarchical supervisors for automatic detection + of software failures," PROCEEDINGS The Eighth International Symposium On + Software Reliability Engineering , vol., no., pp.48-59, 2-5 Nov1997 doi: 10.1109/IS +SRE.1997.630847 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=630847&i +snumber=13710 +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-6" + +\end_inset + +Vinoski, S.; , "Reliability with Erlang," Internet Computing, IEEE , vol.11, + no.6, pp.79-81, Nov.-Dec. + 2007 doi: 10.1109/MIC.2007.132 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&ar +number=4376232&isnumber=4376216 +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-5" + +\end_inset + +CESARINI, F., & THOMPSON, S. + (2009). + Erlang programming. + Beijing, O'Reilly. + pp.139 +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-4" + +\end_inset + +"Erlang/OTP Product Information: Technical Description of Erlang." Home of + Erlang/OTP. + Web. + 01 Mar. + 2011. + . +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-3" + +\end_inset + +Joe Armstrong – Armstrong, J. + [2011]. + If Erlang is the answer, then what is the question?. + [1]. + IT University. + Computer Science and Engineering, 15/2/2011 +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-2" + +\end_inset + +Gul Abdulnabi Agha (1985). + ACTORS: A MODEL OF CONCURRENT COMPUTATION IN DISTRIBUTED SYSTEMS. + Ph.D thesis, Artificial Intelligence Laboratory, MIT. +\end_layout + +\end_body +\end_document diff --git a/doc/report/report.lyx~ b/doc/report/report.lyx~ new file mode 100644 index 0000000..65806e0 --- /dev/null +++ b/doc/report/report.lyx~ @@ -0,0 +1,792 @@ +#LyX 1.6.7 created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass report +\begin_preamble +\usepackage{indentfirst} +\usepackage{tocloft} +\usepackage{calc} +\date{} +\usepackage[section] {placeins} +\def\myClearpage{% + \ifvmode + \ifnum \@dbltopnum =\m@ne + \ifdim \pagetotal <\topskip + \hbox{}% + \fi + \fi + \fi +% \newpage + \write\m@ne{}% + \vbox{}% + \penalty -\@Mi +} +\def\myCleardoublepage{\myClearpage\if@twoside \ifodd\c@page\else + \hbox{}\if@twocolumn\hbox{}\fi\fi\fi} +\usepackage{morefloats} +\usepackage{graphicx} +\usepackage{subfig} +\usepackage{tocloft} +\renewcommand{\cftchapfont}{\bfseries} +\renewcommand{\cftchappagefont}{\bfseries} +\renewcommand{\cftchappresnum}{Chapter } +\renewcommand{\cftchapnumwidth}{6em} +\oddsidemargin 0.5in +\textwidth 6in +\topmargin 0.0in +\textheight 8.0in +\setlength\topskip{24pt} +\footskip 0.75in +\end_preamble +\use_default_options true +\language english +\inputencoding auto +\font_roman lmodern +\font_sans default +\font_typewriter default +\font_default_family rmdefault +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize default +\spacing double +\use_hyperref false +\papersize default +\use_geometry true +\use_amsmath 1 +\use_esint 1 +\cite_engine natbib_authoryear +\use_bibtopic false +\paperorientation portrait +\paperwidth 11in +\paperheight 8.5in +\leftmargin 1.25in +\topmargin 1in +\rightmargin 1in +\bottommargin 1.7in +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Title +Generic Game Server +\end_layout + +\begin_layout Author +Jonatan Pålsson +\begin_inset Newline newline +\end_inset + +Niklas Landin +\begin_inset Newline newline +\end_inset + +Richard Pannek +\begin_inset Newline newline +\end_inset + +Matias Petterson +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +pagenumbering{roman} +\end_layout + +\begin_layout Plain Layout + + +\backslash +setcounter{page}{5} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand +\backslash +contentsname{Table of Contents} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cfttoctitlefont}{ +\backslash +hfill +\backslash +Large} +\backslash +renewcommand{ +\backslash +cftaftertoctitle}{ +\backslash +hfill} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand +\backslash +cftpartdotsep{6.6} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand +\backslash +cftchapdotsep{6.6} +\end_layout + +\end_inset + + +\begin_inset CommandInset toc +LatexCommand tableofcontents + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{List of Tables} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftlottitlefont}{ +\backslash +hfill +\backslash +Large} +\backslash +renewcommand{ +\backslash +cftafterlottitle}{ +\backslash +hfill} +\backslash +renewcommand{ +\backslash +cfttabpresnum}{Table~} +\backslash +setlength +\backslash +cfttabnumwidth{60pt} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset FloatList table + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +addcontentsline{toc}{chapter}{List of Figures} +\end_layout + +\begin_layout Plain Layout + + +\backslash +renewcommand{ +\backslash +cftloftitlefont}{ +\backslash +hfill +\backslash +Large} +\backslash +renewcommand{ +\backslash +cftafterloftitle}{ +\backslash +hfill} +\backslash +renewcommand{ +\backslash +cftfigpresnum}{Figure~} +\backslash +setlength +\backslash +cftfignumwidth{60pt} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset FloatList figure + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +pagenumbering{arabic} +\end_layout + +\begin_layout Plain Layout + + +\backslash +setcounter{page}{1} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Chapter +Introduction +\end_layout + +\begin_layout Section +Background +\end_layout + +\begin_layout Section +Purpose +\end_layout + +\begin_layout Section +Challenges +\end_layout + +\begin_layout Standard +Challenges lies mainly in providing a reliable, high-performing server and + at the same time make it easy to use for game developers. + +\end_layout + +\begin_layout Subsection +Basis +\end_layout + +\begin_layout Section +Delimitations +\end_layout + +\begin_layout Subsection +Types of games +\end_layout + +\begin_layout Standard +In theory no limitations, but in reality it will be limitations. + Many factors are involved here. + Implementation of protocol, storage possibilities, server capacity, language + support. + In real time games a low latency is very important not a high bandwidth + because the games already send very little data, ~ 80 bytes. + Lag of below 250 ms is good, lag up to 500 ms payable and beyond that the + lag is noticeable. +\end_layout + +\begin_layout Section +Method +\end_layout + +\begin_layout Subsection +Development process +\end_layout + +\begin_layout Standard +May be Extreme Programming(XP), need to check this out further. + Maybe adapt so we can say that we use a standardized software development + method. +\end_layout + +\begin_layout Subsubsection +Demand specification +\end_layout + +\begin_layout Subsection +Design +\end_layout + +\begin_layout Subsection +Testing and evaluation +\end_layout + +\begin_layout Standard +Can we use quickcheck? +\end_layout + +\begin_layout Chapter +Theory +\end_layout + +\begin_layout Subsection +Performance +\end_layout + +\begin_layout Standard +How many players can we have on a server? Performance differences between + games? e.g can one game have thousands players on a server and another only + have hundreds? Questions to be discussed here. + +\begin_inset Note Note +status open + +\begin_layout Plain Layout +Create a game with several thousand players, see how our server scales, + how can we improve the performance? Sharding isn’t very nice.. + alternatives? Improve the speed of sharding? +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Subsection +Choice of network protocol +\end_layout + +\begin_layout Standard +There are three main ways in which computer communication over the Internet + usually takes place; TCP, UDP and HTTP. + The first two are transport layer protocols, which are commonly used to + transport application layer protocols, such as HTTP. + TCP and UDP can not be used on their own, without an application layer + protocol on top. + Application layer protocols such as HTTP on the other hand needs a transport + layer protocol in order to work. + +\end_layout + +\begin_layout Subsubsection +HTTP +\end_layout + +\begin_layout Standard +Since HTTP is so widely used on the Internet today in web servers, it is + available on most Internet connected devices. + This means that if HTTP is used in GGS, firewalls will not pose problems, + which is a great benefit. + However, due to the intended usage of HTTP in web servers, the protocol + was designed to be stateless and client-initiated. + In order to maintain a state during a game session using HTTP, some sort + of token would have to be passed between client and server at all times, + much like how a web server works. + These facts combined makes HTTP unsuitable for our purposes, since GGS + requires a state to be maintained throughout a session, and also needs + to push data from the server to clients without the clients requesting + data. + It should also be mentioned that HTTP uses the TCP protocol for transport, + and what is said about TCP also applies to HTTP. + +\end_layout + +\begin_layout Subsubsection +UDP +\end_layout + +\begin_layout Standard +Many online games use UDP as the carrier for their application layer protocol. + UDP moves data across a network very quickly, however it does not ensure + that the data transferred arrives in consistent manner. + Data sent via UDP may be repeated, lost or out of order. + To ensure the data transferred is in good shape, some sort of error checking + mechanisms must be implemented. + UDP is a good choice for applications where it is more important that data + arrives in a timely manner than that all data arrives undamaged, it is + thus very suitable for media streaming, for example. + In GGS reliability of transfer was chosen before the speed of the transfer, + ruling out UDP as the transport later protocol. + +\end_layout + +\begin_layout Subsubsection +TCP +\end_layout + +\begin_layout Standard +For reliable transfers, TCP is often used on the Internet. + Built in to the protocol are the error checking and correction mechanisms + missing in UDP. + This ensures the consistency of data, but also makes the transfer slower + than if UDP had been used. + In GGS, data consistency is more important than transfer speeds, and thus + TCP is a better alternative than UDP. +\end_layout + +\begin_layout Subsection +Encryption +\end_layout + +\begin_layout Subsubsection +Performance penalties +\end_layout + +\begin_layout Subsection +Availability +\end_layout + +\begin_layout Standard +One important factor of a server is the availability, a server that you + can not connect to is a bad server. + Erlang has several features to increase the availability, for example hot + code replacement. + It is also critical to have a good design, we want to separate each part + of the server and thus avoiding that the whole server will crash. + +\end_layout + +\begin_layout Standard +\begin_inset Note Note +status open + +\begin_layout Plain Layout +Players are unsatisfied with the service of WoW Telecoms have the same problem + of having to migrate users from one node to another, this is called handover +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Subsection +Scalability +\end_layout + +\begin_layout Standard +Because P2P game architectures are a constant goal for cheaters and because + “Cheating is a major concern in network games as it degrades the experience + of the majority of players who are honest” and preventing cheating in P2P + game architectures is very difficult game developers try to use Client + - Server architectures which have a natural problem to scale. + In this paper we want to show some strategies to achieve scalability. +\end_layout + +\begin_layout Subsubsection +UUID +\end_layout + +\begin_layout Subsection +Security +\end_layout + +\begin_layout Standard +We only support languages running in a sandboxed environment. + Each game session is started in its own sandbox. + The sandboxing isolates the games in such a way that they can not interfere + with each other. + If sandboxing was not in place, one game could potentially modify the contents + of a different game. + A similar approach is taken with the persistent storage we provide. + In the storage each game has its own namespace, much like a table in a + relational database. + A game is not allowed to venture outside this namespace, and can because + of this not modify the persistent data of other games. +\end_layout + +\begin_layout Chapter +Overview +\end_layout + +\begin_layout Subsection +Techniques for ensuring reliability +\end_layout + +\begin_layout Standard +One of the main goals of the project is to achieve high reliability. + A highly reliable application is one crashes very, very rarely +\begin_inset Note Note +status open + +\begin_layout Plain Layout +CITATION NEEDED +\end_layout + +\end_inset + +. + There are some tools for creating reliable applications built in to Erlang. + +\end_layout + +\begin_layout Itemize +Links between processes. + When a process spawns a new child process, and the child process later + exits, the parent process is notified of the exit. + +\end_layout + +\begin_layout Itemize +Transparent distribution over a network of processors. + When several nodes participate in a network, it does not matter on which + of these machines a process is run. + Communication between processes does not depend on the node in which each + process is run. + +\end_layout + +\begin_layout Itemize +Hot code replacements. + Two versions of the same module can reside in the memory of Erlang at any + time. + This means that a simple swap between these versions can take place very + quickly, and without stopping the machine. +\end_layout + +\begin_layout Standard +These three features are some of the basic building blocks for more sophisticate +d reliability systems in Erlang. + Many times it is not necessary to use these features directly, but rather + through the design patterns described below. +\end_layout + +\begin_layout Subsubsection +Supervisor structure +\end_layout + +\begin_layout Standard +By linking processes together and notifying parents when children exit, + we can create supervisors. + A supervisor is a common approach in ensuring that an application functions + in the way it was intended. + When a process misbehaves, the supervisor takes some action to restore + the process to a functional state. + +\end_layout + +\begin_layout Standard +There are several approaches to supervisor design in general (when not just + considering how they work in Erlang). + One common approach is to have the supervisor look in to the state of the + process(es) it supervises, and let the supervisor make decisions based + on this state. + The supervisor has a specification of how the process it supervises should + function, and this is how it makes decisions. + +\end_layout + +\begin_layout Standard +In Erlang, we have a simple version of supervisors. + We do not inspect the state of the processes being supervised. + We do have a specification of how the supervised processes should behave, + but on a higher level. + The specification describes things such as how many times in a given time + interval a child process may crash, which processes need restarting when + crashes occur, and so forth. + +\end_layout + +\begin_layout Standard +When the linking of processes in order to monitor exit behaviour is coupled + with the transparent distribution of Erlang, a very powerful supervision + system is created. + For instance, we can restart a failing process on a different, new node, + with minimal impact on the system as a whole. + +\end_layout + +\begin_layout Standard +In GGS, we have separated the system in to two large supervised parts. + We try to restart a crashing child separately, if this fails too many times, + we restart the nearest supervisor of this child. + This ensures separation of the subsystems so that a crash is as isolated + as possible. +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename supervisors.png + scale 50 + +\end_inset + + +\end_layout + +\begin_layout Subsubsection +Hot code replacement +\end_layout + +\begin_layout Subsection +Implementation +\end_layout + +\begin_layout Subsubsection +User interface +\end_layout + +\begin_layout Chapter +Problems +\end_layout + +\begin_layout Subsection +Erlang JS +\end_layout + +\begin_layout Subsubsection +UUID +\end_layout + +\begin_layout Section +Design choices +\end_layout + +\begin_layout Section +Understanding OTP +\end_layout + +\begin_layout Section +Usability +\end_layout + +\begin_layout Chapter +Results and discussion +\end_layout + +\begin_layout Section +Software development methodology +\end_layout + +\begin_layout Section +Statistics +\end_layout + +\begin_layout Chapter +Conclusion +\end_layout + +\begin_layout Chapter +References +\end_layout + +\begin_layout Chapter +Appendix +\end_layout + +\begin_layout Standard +Text goes here... +\end_layout + +\begin_layout Section +Objectives +\end_layout + +\begin_layout Standard +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +Figures go here... +\end_layout + +\begin_layout Chapter +Methodology +\end_layout + +\begin_layout Section +Overview +\end_layout + +\begin_layout Standard +Text goes here... +\begin_inset Newpage newpage +\end_inset + + +\end_layout + +\begin_layout Standard +Figures go here... +\end_layout + +\end_body +\end_document diff --git a/doc/report/report.pdf b/doc/report/report.pdf new file mode 100644 index 0000000000000000000000000000000000000000..32bb70d46b220496aa896b65e38c51e97ed3715d GIT binary patch literal 155428 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

      uRNyDI@_`v(ENq2br3hW{RDmrp1Hunorjk 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 WYxmDUUc^w82N9cSbB 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 UN2Q@t0RR9107*qoM6N<$g753huK)l5 literal 0 HcmV?d00001 diff --git a/doc/report/system_structure.png b/doc/report/system_structure.png new file mode 100644 index 0000000000000000000000000000000000000000..2daec0abe66d482d91bfc51a0c96dd32ebb9abeb GIT binary patch literal 56384 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

      jA@W+0Cc3nGc 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

      !J3^-CpIA(Pw!sBx)L=U^v3p{cIAXRs5On=~5h zkZuq@`NZxAi~H@}?(~wj&OLkgQlv6au%j3O7pE#7bmiT|QET1@(v} z)!`Vuz^hlUrb~K%V>~$bv}xZ)4aO^7S^e%d05H{MSs5ANrj|x8<`u|j8cCUP)y~2; zBt`RFzn)|mV%gyd@yJGK`W5`Y0|U__Ffig70V3%NvE_0XmkBzNBsgnerBxt7-D-WiDEE8sp zf_2r;pO9G~osEKQMGK8zL1Cc}9VmEz{&Yu3NXe&93*ZALj^?)apFV-` zM(x|zedsbZb5w-RlX3l4bby#!n6xII@*Esd#GR0`Db61I-x$D;=Ne>-FzY5ynv~)0 zM#(>Oy7zuTa14pmC`I_R0|%92A(gmoV zPS*}ZX^ID&;*-aZo8dApD!Iu>p|a{4KOtiNRX1gYECss+`xGWDh=59a z1qH%oxJ;ti7fgiPBLrY@wt@Ot_MmnBw_WoyH2$hm_n) zkIoQE0q$yQEad1F4Jp@mJRJkf%DFJ=yb{!w3m}GD=jE~#Wb84ykgQogB8kvY`TRBM z)^Sfi1HFv)sW&<>)nv{4Hlu@Cf`tYy237b13X)+;#yGb8dFj^W6%`AZ7y)2Htc|X8 zdz^gw6UQ7!YfvqEVNm!bN}L8UuzZB05;=$Qh!JL)Le2~C+PYxAEZA6WJ-utF zKnLbgeH!bbZV+PPUFQhy3ELDH8X6~FTo{HI4>&=W#H2}QPM!M1`G$7a%UDrk1Eg?B zwHMBxKWw!034qds9bG4hu0uoMxozpdhEv4`(GMrSc~y54Z#ZT(cnCJZ)TdsJpd5k5 z=!_oNKaywG57u6AY}bkp(6>mm@oAt-zkmLWx9-#W&=N$o0hrI{c%}IG%-r0ataCaG zbbfx~S)Pp&A98=&h?yM?d4wby>nQotzKj3FuZQlCsy~7LGSqD@2&$8}xUw`mh*5$d z)q$Pa59pnk2msf_#uKyFpEz^o!Ry!cbl?yk(;+ABVMSYhvk;Hfd-@Ujq#b6@HiGnZ ztkgdiLM&=vF^G`$?hWjD;^@)VAYVhDhbdJl=NSP5f<&-J?;bV(y zkwQ#oegEOZCof*WdLGcP-|jtobd443Bnaq8uvYo_q=be}!gG@^i^tA!wfF}VI-^H< z4UCu&klfxjn~YObICOBReE(ilp%vq>cf!F8rB~<&hFWZ@ujw0O)!VpTxvG{{EP*w( zT-fgr@2KjC>5336xnP=xG1&n?lq%QKqUR@0L^Q+)v&^VjDKwh?KXZKeq73i|62lmSXGB$1rsTO|B?3WbaB>a@ zWjZkgVs6WVpE81WAiKw{BvAtcqcc-R3}#ng@dacnL|^dY#bZdq#>Vp@K8tT_rr{>z znA8A!5`jKU9;__UfYXe&}@S>eXit zANCtQT%77cOFu3kfQy?OKI&Jm(UH=rtIfMco>f?&ASMR=)2yt}>veJX4RJ2< zZbxSQa)FIa0sVy+9MT@&z3ch;NiSMQTmMu{Wna#7b|%zyX5lVgtO69q6t!N09K{QI z24SScs2nutp@A|KA|p3Do9c$2H*avJu-Icxa7TlZA^iU4dO0juKw*$*9!!P z3#U&VLng)XuGU=;>@QNz6r?8j(s7C=mQ2_y$L9s!l+crmV zg3F1CKFy6c$mcCA#K2p$F#hc`d}OAs1Og=gIq~!}vioE>7|Tc|B(aFJh|^t&+^eK` zrex%eq+CF8Pn~Mp^!@{EW@At#Tw{GsDJcXBm zpbh8*O!L^@ys4=^@yHQ-cS`4uuB-0>%;lf!C8A0mosb#WZC0 zZ1RzDUArg@=0>gLU{VIeTHk4bnmz`@yr`$oa{>rakN|sA)P;`!{}V;nE-P%_T>Ty_ z=?*55(o>rEeum?qRZ3-HusI4;TbycLq3DM7;vbI62+1!G`P^Y zNWUb5XtwXz;j)5O`4Yftd4<|JTxYU!tRLV?_;W3s&i@HitgsYbPRDT4P?H-oYJX(p z7I)%ik=@Ac-~}3jaSsfI2LR=qjl9H^ z0GIU6aA+ z8+2mPJ#lfNep~;sXsXg>l|}?Yji6^BB#o2PV=o~5yym?HJl9wg{a_~`NfJ-29eBT- z_K*WBu%~a_)1b??x7}oB05PO_a3p)8lSf#bbt&=_X`obU&>HF0HLyKjgq@s@p&jln*4*hL0RHs1lD3 zanY!Adu=1m7$zQGo~L83q@2Vf|GR|kBK4L{a`4%|b7um&R8w7!ZJR;r7#U^QQD*`XURTeYk=Lf# zZZ$)ElBiC`X(j@2?%d|wo*wJh&ph)CmGXXjUjxTtuZoIxm|nbt z6eL{ed-sOZ3(LtT4{mO}cF8UO7~LdUT9b5Df<;v=UaPkm3Q}9GPLaT}5LeEh54X@c z5FM@Wkh;LiYSn$otJkjKCWjjsz@3aZbZ9e{OytEJX?O36teedFwwb6w8Q?R3(2L$6 zIl;M1dmC$YiqRR=*Wqvg%m4P7uRG)bScgdY0__Bdq%Qq?7c2sn3G5(cH~^0QO^-9C zokmFr3I`4xK$92yJWh_fFV$a9i^5#0b(^8Tkl5#c_UPO93@8ZGwL*63#>KKY!;E8~ zlntPG(r9jCUQSk!(z_kaG$FiN!^z__&xC)&tZ?1A^eB8|wYZb}_jmFOn-DMN=);E1 zojsddP!ww}M^5zy#toVTwziF*^!p(E@CG1Z|C@>78kfBP{FrlYE`Vn9+fIr?T)rC} zas*=p6-0-i9HpFk~VXZO;~<9O zW}xEr$;DnF^EMiJ)YG3lp`!8m)2HieKTbY2Zi|-i$lr(RqDW)siB4I?yyoU{(|IK5 zpRZq2J|n2s7`|#jOYZJgG96r**|xSJO7A~@T$r-y7f>2KMy78JTSJ=nqqgZpS^}+u zm4>Mgpd$3mZ3qrWR@4$yix8w{nUi1_b((%4rNW65x0S1n`((F2D_T8u*I0z3V8c_E<|IW$sS?r8*m%U$ z?|Wrs%eze3z+K3oQ_-9rV|;gZ?u>v`f0uMcW-F!9TIRi>7@+jtJy%8+j9a%1n4dg> z(g;MF-q1j31VzkEY$8Jrn&^=v2XvPgPPg$ZMVOvZ4*+rp8ybp?Z-lYng>Xgaejc;( z^;PZEj)1t&ii=xVe7U2rr2#i+Cck(0Zu=!N2G-nas4$mVwBT*qdIl2aBQfK=Xwi_G z!N})QRuJtKBO1v0=;VI%>J|1?W1zZV&;}R+f!iv|6NG2LukP;ds9W+WNHZ#oHAOl( z1?jN`3%bTwby8FFShtQ@3gSGubt?h z@#+gD2_FD|fuT$oOd`*Z-@iB00swDdtg-Xlxi9!v z#$8cjW@{mA(T<2jtwN&z^9(=Jxx^)js|t++^UzNPu|t6@#41q9oWq2T=8DWuTsCLL ziVE&5*B_O@Nge}*U}@Z2`d=AG>C$Nv&LonLtmFhFstf@wBh&gdi8nn?`cytwlJ3;Ls z3MTA>*G~FLzzf6&KrbP&g@PQkiTCFWsFnVz_Q#ZnGE2a~WUeG$$>koMqE}rv5LWX2VRkGwH-Q8ReURVv9anVI7Ep?tc0{#h+7PT$0S#)|V;mghB zWX*}{Dk_*9D28Cmy}TceH_#Bz+MYdXAWv|!2?BTl6#xjSbS%Tbz;nuUw;Bd{GjaKT zni?B3C4@^9h7y;7E1jE*#X12L#g>2iMD>$*<@GMtsEI~`Gmvc2te}W;?#!8t_z4y5 z4@xXQ#A$&o1ciD!kPMGaI0i8j+V~VRGsiy8-eguZv{R5i`t&n(3Y;F8%jeRx5&l7V zReFyNdi7#k$B!NB1YpnVL1))WpM|gOqN(|A+#*aQT!lM>4mb6oLWQ`3KIye^Qz8q(;(|GS>F|uI{;gtA%U|>-%nBwA{lr{ ziXHhn$vNsR94=IjPMkiS#2kXG6mu!j)#jeWz1ZJBi9rF{e(?M$_Zlxfr89m;fE=48kv%%HG=1h&xbNC08ad zcY3h9m(TPc!X$AHXRvdKkco?Yw+JBH&;9LJ7QhsG};EHuj4c*6Mc zxWW$i`$8`u+hiSRIA9~8(!roEzO_+RP0grB|6vkkjA9j8kpz9Y*P<*T6cD2^vUdji z&F0$LCZXpPn0NhJDKwAD;GeW{J|=?;L-cAC&9JOJ+Sgb=GKT}u^{ z%&CFxJb9v`s=DsimpP5fujoaZ8g1|n>NE9qQIkt6s>a7ysdL2ox+(e(8cVTuxIyP+F2m!(m zaXEDDAy~Vwyl0vSv$ApN8@?2IYR`!~z(ONP1_<baI4^SA zG|5mi_5Ic9yNTZCFbo>ktY6>0OpSO-v;Meo@jJCD;sLyplalb$xAE-A3-gVZENGB* zyr1qPvtmkXF^onxXNrH`RV8DIMF}wxT{jQ0&>`xi>_db~PKOcy$(8x>h8S{pK|L)zOS7kGV0NFIS*fZ0-*P^jDlZyW(b-1lto?M4Z9*&_9p2+J(2IvFvC^lnn1fDVX%;3t_cd+Y^v*=xxgGP&@d+ zZ{T9_$`h-GrzsNleb1Kl+XGFFGsK&3+H@0Gk?@Mt_R1B*(TYN_0$~k#$9*c7NM=wu zABYKKlc+SKLWl$5wNn;Sc|KJ|S_6j-J3_RUUKFNiyOlROe0Tw{^3I*pE5B(3Pnt3X zs_FBBf>P5>6svd_b}}uo=}J%jADyNpUxRxFa_1V3oc&w)!#}_q)KytZ`T#NOZt<6< zq!n6G-ctw>u^fusN8^(xW@RBIf;*@kv#c23$dgtuH@Hp<<)Kdcwv2sXuJ3oEl_4j) z3XWA~h8hE@?{ZLhDVgKsF4lzP1nz1Q~eErl< zjWc*GtPsgp_<)TYH}Zt+VbRs4QIN-+13UO<2#*{`ye}!C5s_CfV>!oOkPx_BX;7Pw zj@#yDbdWJ6SklC+S1omCZrD&qP>U_>tF|4s8_TF0K(IY%Ur?Ue*4F7Zk2LiFL(qew%D163t9@3Gyq=Ng z7Y4)Gk!sUF*a+wl{teg|M^08Fc=hBAiMfgyVa^EsgI1v(Il>)YI zt>4(kV2@)CAY}6rLVHe96Z%2bv6mfY&Y2Tq;$vL8lPEa$k!15n^{l3yK5s7*BVd~c zO=puJLD=KD7`~q1V#icWS_g<(_%bQCZjp~P7XJ_LurO8Mcw$(33FpqC<%!j0 zbneKah3pW5n6qZiD8`fl!9(76SXTDw6FDF?L?!L3 zF!NCyBL<=(KoO7M(L6cK$rHANQ1X?64o<)7!DxJUzNz6TjE*=`fRh>EQAGCht2v%1 z36dQbp}x69$Haw+oEgz;#!i@!h14gdU;GLNMRUxitF+RXBXu;z!s0_hS~DUCNTz*D zFTJWUevLQl92CK>*=FIadjN zhQMvNZV{E|PoEy)bUToDd;gL7)_`2scLsnfs?bw_+(ac-5*@pbqM5?ys-PYafq`yGUJ{F&nfRzau(8_+wFpA7cUF zQ&PplZIaskKC&Uw{HSP=@S4pW0EuKGI$au$gJUt*jt0cgh=?&T@g2(c zx5-gBGR<+iu1cu+QP8keuP%SYMBqzf|Jm(@g`%Au(=RV4ci#5WqL$_+U6s$A3=UIW zg0$RGqEoCqvWkQxAjMpFmL3=JIC^lY=rkqxTjCSW3ONp5_swt56%v9J)sWwI?gPZ8 z?jIi=R&`QV{bL6kYk#8dnW|81=`SQ3MA-^jjL4-yM(QJv0XtOBt2 z5fbvhpqNgdJ{Y;XY@6S;Ofco@PT_OD5l-`tFn!?xuSGYfbA)==u2>Q0Kx=R)0tA+& zdUG^a17|&Z;lhXxT^jR#)Cx7S!A?94*OnFshNYLM)V=fLyaVBhdIuLTl8(#dWJ#r8 zH#2k;Wfu`t7)5q@eU(b{i?g--17lE(Aw9wqAQvSA-KJCzxh>S<;E*M4OG{xd0I+T_ zEHCB58n1%;6`-q3v5BvQOQ6;SSb@<_~xKvZ*WN5ILdgu zh!}JNp)#>x5R^H%y?XW>_iTTbjK==%!W#giBUMB9r2YEtH8(MK*h(aTUQ+iEY0=T| z0PlhW0(y=b)kVfR!}?)vZW^jO%#0+mc8=#6xG`v=fj_}+uJ`TW2g+b?Uqn_}b+3tV z7`i;pu|4Q92{vX0wVe?TvVy+M!Hm^4F>}5tn~MuWckrrJ14}b>X_Z6DhsL+p1qC+d z=17g2XlrM{Qje~2lp~PMbGxc-Up1Vh(8#EUbTK?piZUpApfu9DEL$elwqr->Be+IX zLK6qIVP*5WIiUo9Vz|NBNg!IB(3V4AB+T*@f=^YRU$#?e{^i9Fu(c~zuB^T>dkvKq z><4%p{4qG%*Dqb#;$qNs_T0HUKrhj~f-lAu4e%N#AM8YG2>XOr_>yF*MdWW>Br-Zu zXPMe?jv+5@j5`Cz$f8hSV_8iOrOW!ilP7iBzH?{Gm)fGJ14KA}Tw902X_QiMidP;y z;Y1FyzjZ%)>0T&-2@dlluCV_!=Hzi$=ChV+e{E5!<(eIjM(t^>?CxU-uTrCf%k@{RjtR zM;k%~hzeLTS>J4Xwwo_9d$yX%2|eG2BWyT)J9^SOOsgOgZlS}L^ck=n$7P^*zw_Wl zci^p3RCCRVc0yIQfB#W;zW#z)%WdJ+{^O*E&`Y;f*Dd<7K_vM5`%$?Dd`Y3yQ(UlF zx?&p0IDj-3a^Rpr_dZ>~i8{Yc-KGSVGz0NfQ{P*JHdr8Vskl7&O3Ypm4KWK4AKi^jD`%k-DLs@I5j5daGacpFZVyvA^mM?Y7&Ro=N?d% z?HcSv*qq`zK~g`kP0Wt*Gx{Jhe1uZGR=wxSJ}Iasupk6p;n`XKD-Bi^lag&>+d51O zA3!tZg$pL&(1e^w_BCb8+EWrc5*=-+6G>PmZ&>9wW!9{xTuTZBRNuuigl|(l;g)i@ zFMhQDiCgA<)D==PrGC~MeoLbu)@Ke%II3`{@YqyU0BA{{AnS6E>&E=UCe>L4Qt|_d zuS+to9A%eABcQ8DLYMka09B5J~y?xePt z^Yfg+I{Yhqyc(93vN~A>S$pJZBV)5A9=Yuc_Sy>5FauemRZK zoF+~!<@oSn{<+(#dtp8Jz(J?pe@~`-V`zA#$c`wjs_)H=-+YRg7QzJo^7*r}y802E zCMS)<7hLj8BbfQe5U;zn91=zAzJ7hP`QhyJwLmfb;260u z(MH%wei&tWe5`R#jm}_f9ic4kY1^(H(cR-{^`BD!2*6&bD%O9VMa{A1+_?=@oQJ5_ zw(${lqzMbi0eS`|-MAs%7H4Ns2wS3Y%R+|5ifKTH?qG@X+PeMwGko$I3Gk3NJyl9R z;Zf#nFoe7VH%-SlyMX0`Ld?JR=7<2HRitc}$RvJ)!tp#d0NnkjT_;5>2wF%D>#Ce+ z%6trNj}juzPfnY$I#^x0o=98Yg`I3Zjg2FW!Y!L_u7#G{rucMx{1xIt0Im+zA53xLj1c*V8DtVgfsIyj{9m_Vb>8pEi&vw_rfB>bIh*%3-eTpp9nOe-5O zW=xDZM|uXy1m*CwUl$k>z}&FuTHYhjQM!fDB_E|ZYpPBlFgEhw0n>L3B+H~(=BPE> zts%9G2*ATQ1=CB7?&Qf}j;p%*zWw{3e)jN|r9jN0(!Z1x>pwtzR03F30Y;G+lA~hO z$Tx>>u3d3#oHk`gObyRW5LEr+2Pob3#6(E2CQ!-Lw1rTZhouZgU(k?01s0KTUuIgvm zG=K;^6!{vcJn1bbnpLRssp_jwGy;{C`Uha4-qdK+X{1*=CZ!8u41^U&ey7THCmkSs zgbuiEgw)>23lV`bi46@8pK4|%#8|oB0^Dwhy>0^4nuea`AAIW*V_<0N+!^ZKq5aesQFbOOm<>o@8M zW)9pERd$;MD6>U*|E^t3esE+9ln!5~ddI(V^5tOfT;NdnB<|m^X_N0cRXI61YNx4Q zQ9|J6pJfpMW%j>-d%(vy!B02KW_e5i$ZQ&ILso>9r0}6(hjURjC)7^ynlfq9$kiog zrn%BWc{?|m6(2Df9M?M2SHx!I`vV3I(mKA5#GBas{j4*)9(>>z@Q6Ok!JAzuEDu_~ zg=`O7A=_8GP99{52xP-u8nG=d`;(!nE4X`dRHTk*L%YykO!>KFqKr@@O)L)9 z>rN+eOZf@wKFHb8+;gc4IOoE?uyv5Hbx zxZhWrG{w;qWXV9~TE?@9{{QN5V%9Ze)s&QgLScMw>oW9?f^73LoCZh7*Q^5M55J7KLs|0vh3#bvNZXfdOk)3+aAaT~%K$ptqa| zf=bJ-J$vpXRY(8d&{+e$LGk~E%>vSfOZ@eY;c%dO~BmW^P}~Twl;& z{^!h@kvswWbY^xxb4%LY;Z6XpzgVQX0(*~lc}uaP%2S!rPYUNyymi@2BGb5eHewDO z?pPP!mM{hrs}){KvvvmpVw$TvX=)z8q_Ra+(c|;$o9BVEa^87?qm#!C@y%`#PXH6> zGeljuj}=VX*YN*pUT&hFA8{DQRpJL8MoQ7D+yb-Iu}xBM!|&wmAJ zpIT+~V!cq>hk#P84h)g@lcfB5Cr(pg;{O#RWh?5EF=_;q1RxkJaCfA4NG-dkU!k7# zqPSQ~n@-91<>hs+l5y+^B;DiGR@Z_iTqKV~y|~6z+SEV$(IYqo%goFW3+`whvTd6y z^#IDC`PB1_U#E#&_#>m|O`Is35K2p$%p<{@Ho~9i#CS2Wrevbaf>|3F?piu&doG+` z)E<5j=+~W)g*LJBwGo*-T+i4;KYT_oijUNvVzG=#fVR0MW4S8rSerX84QHu3BW#Km z@8@&vjG!CRp<2~ZBbYo63JK;IL|Xv|Tv`f)09G?_SL&56F;+V%kyCrdJ0NT*KKZ?u zFE>zMAO+vMXHVBE$BH(CM2X}{bm_=C63na93di&xmoB<>Q#Wm@2lS;|nJUjXS}}ur zy2+IE7du1e%uzPS?hxFFWss^_E3n|O;Fust=3ZD3 znugExBPI54*;>T!Jbl`;PoKJRvBzefq5A=kOVmz5xNZWySfoz52Zv@OnLp|K(JqTP zkyL6T=m?95SfcM?anu^kT)=k&r~)r;wuz#q$_Y4nH1fcKN&oX*nW3Tiv{)yQNE}?L z>a*ej3r-RfSUDx22(~*cXc(A4BmH93L@&*OptUh(}q;9u4oGjnsv()?L%gO1ULfYasW=63&!!wN{5 z2M@l6kx6aoe?E^^*bnEHckMcQ!)ol_xY$#beEN~mWCjnS05rUdbPsbENGpgaO!^1F zCH6bHSYt9_0^$AV&!2&psIpE2ob77nc^q~|Xj@h>73wuR^CohgWE+I(CCXhh@)NWzQ%L1zzyqkR~>efwOd zb{^voxd&^sy?KV%6-ItnS5euMA~H-NFhm+Mj#I8e^6uW5uz4bh38l+Zu!dt}r~l`W zt>XzReKML2S$PgiCo};bT1uVcF(~6QhJ8?5E)F3|aeY`19i1Wcf&4vKw2JUQDE|;X z0?m=qRUVekya?YIJIyQC-kUrdOp8iLgr?yHWTGiEfOpKAwa(zId=#V9fxIFzW$Sv!X@Ta#eKkb zvrm`?JQCn;Y{WnXIn;rmT=nifyiAL=Bf>_xPwU9^g}x_Iq69IWH0d*cY2hm2ID&SA zW;oe*UcJ)PMo?facpTw6?*&53&=D#u++;WtT3QK5k6wc8c`Q>=nr7lxgPMpAxRs#1 zzy`%F=V@Ir$;sP%e=NNRG2hj@DiHcnD@TqSIa^8k zL+bk9zwdb$RtAT(yZ!j~r>6Sl(J_S^_uclXJ@7k6=rb|<&uiI;_n?&)A1W%u2$~7< zI$!dRj$;lHWxo2~l>|6OfUjh2)eBGlh(2)O-H@EgS%nK{=|om7loR4t``Oj)|M@Am zgXWMAL=_9{%q-Yy3nrOJ*ngD_UcLWO`UqA3LFEc1esKD+#fph{N4}do*+!6@h_ZpD5+sQ>p zALJop-67VeR#SN;bz>&pR?d&R%X*2A64!kb`2;ahMa7D@j`9Z;#b>|0F#4$P$*Bj9 zojT>ZVnvRZcHW}a_t907FiWJ9_j7qU$}ju(?Q31g)kYG+>~{ZtXW^{$NGZYhD7{6` zw;qrX((*LX(8v(KNx6bxmgxBRd4#z6|1O*UPbZ3h`ceGTo*ptn+*YmA#YhOJyXGkT=S_H$(X6D-oc3WIJi2p2~w|AT~<5ZwA?zPk<>fo4sO77~G#i-*LIINV8&(7(ex?IAM z70GjZecfG)DY)ukBvw0is1~)^q1XDsMkhJu(C|e~8PMHQ&O{dLAwF^3;Ll&bV(4N+ z#33sb-MmKTEfANH?~r#NVDtq%D6k4B4yntxl(qfO!=6OEo}w$H2vm^Y-r5+&ZqK{@ zcNOBQ8Fykwj7bC~4h_1yXmIgIv!4MhG^=G6C8}D|X8;~C?C<_J{<~;-x^Vkm!059e ztp*@_&sTN%cNyLK!M3UW^^0hR@x1T(3jg`Z5~NW&JBYBX&#$##6VldZlR%K; zSueU2(N{<3HZ$nJD=@Al{GHXm@3=%M)MES~009hZnB9)Bu+rqKH!V**!MYCLh{8@X zrc0-uskxvqozD#XdyUx8Uiq7uDLoBw1v}bgS9^FM3rE2Yj@8)07DcG9HD3z`_2|L4 z=VcV?xDjM7L?h^^`fPNjG(n*U$Y>(6%9P@{r3&rZi5}X>hzdfl>(j`hFhnc_d)&mB zJ~(CBN0KQJ0r`1Wyd>NT1N@*qgDnSzBZ|&J&aR+~NQVWTpaC8g=J20tW@G<7cCpCS zkiR1TM97tb?*#=;U6u`^M?%I688p&dnqov)i=2e~0OOWu(rd_&AE#n{=^$JRS)t+A zSFsC(iV9sLgyN6@CY^Xfn?UrzgJmB+P>eox@}$U*s(s5wfeA9q>Jo?=|A(HWY1CHh zYtFzKzyy757)CyUA6rM8+Q2Bes`=uRPHOvb=;Hgk5||+O@fZ8wP#(WCX$g=E1h&;g zYLCG-MLs$O)$4j_dB6y#V23wJcunXbLcTXXLIFDjY^tmBeIjf=IBG=xvsy>WtmzMS z8h7+49h+HWY_26R-*k&v)rSYF-|wN9d(=7_x>T_j<0a*{m;pP0-P;s@k_;f53JF>6 zBw_Zzz_8@$kujS$)mG30xzgQTOIcau5qxz4X@;o^!c*eAqToUyC@uGt@>~(yOZ}&y zULTBR)mU8>%`RQmIowXtqWuk7m=$2#$#?PDG|WFII8M?cS4av%OK6K(9(}vw&TQUH zIzmeV*ZIZo7?Hh#fGyR_Xe6;F-1)m~*cEr^4!x%x6ldM}1>i|U4q zdVuu$@r8F)hAg0uA9W0}e)g!)KX-n+c44huAKvo@g9B$}Wept$eRTG$S;-uffKH?r zgwJ1-N9okR+onb4oZ3`t_g!g-SvSmHm0Zh&pTScaq28`8t!K4UmQ7)l4-`zE8SQ6i z%V-UM=D-qx=tSNJ+;P&n3M5X+nx2ZjuxYci?Jhcs3S{GTW<)$9`QRfkI$4k8`DADr zFZ~OZBcUh*0?W4V{OsZ>sad=>=GM3w|#6Vw_f{YMvoOHXI?r56LJ*B$@o zA7*Bu5?V~QL)QJm%R%@RB-*exb#J7EIZsL3Fdo3XT;6|8@c(A@@Bja>`l1v0YZm`M zoe19LU;p#3RX^SJlI<;Y8mOXHFO;j2`D>bmy+0Y-r$6uVheEcXxp5?3*YsbDXFZbW z6sJyrzz8!hlAyYQvK##WK7jv2O02x!?y#_I8py`D<;Br{nA%@*iRj^R6=ogj0Yk*^ zGCNJ(GPw!o*0gVCe5!Wd7e zYB$mS#)riEHKPt(j0#O^|E&|SwJ%_ha#*sToE+*R!$m}Xu^f}bjLCGny+V$etMJGS zmNa=a)x-^45WJYnk|os(m5ucL{QMw$;wnjLDES(hnmPT9L1swLAO3{yn z`exa^(<4W_4J1L~!gU2Bb9eWn48wsEpX3TDJ>0{!+1P$^J{pC{+IXB#b4jGRliMwH znwPb4ls1-fvmyfwR?rkfY>pqrUleP9@;Hi@Y%9vj_C-h6oo$cY&u?U_`&`i#T;91! z8ucc@6`A7LH3PjC*meikUX2SNw5umEF3%lmXACE7z=|T z-5J2gb?~-n6X6U{MY@t`VnnYicCA-|RJuN%zcIw(n1f%FCy?}_OUQE`z`d`L3%bqH zrrj!{8VIcSFhSOT-hE9o!}Yu$?NS7_oI|67Fh-Fdc$n~q6q$#7WHUxkXpM9}un_?6 zm$d*|(T@n8r6TN+pQtLB1&I@ku-*HcMl64!e^pwT9L$+Ky$`|3_MMGFLa=I(9+>d( z=YpL70Gx$CV-Kr8KR?$=nI@QaD<%AY5V8pUdh6-Aut^YJCb|l7-eNq~i^LUTG_&K@ zm;zPjBjavIV$69YHEWzBo37-UN^7<{0xRMe9{4HZ+}qYBp}Ba$!s&x)$GUWBDXs?W z{3Zm*&!1o2^j!XNcDsjE9+@|B71CyEyQL#8)KL+E=5nNRerH9_we=D3f$oeE=dA1L zp?NdES)06>S{9_S{jqas>!)skMAnGLoLiL2w3dx?GaO3C4e>8LCa@x51dZ8!N}J4_qY|YFBw%`K7k@OeaB(Ta@z>)Wbvh4OY>C8S zamN&izJgiQne*r0US1MbF)D=uIc6J3jhP0&gA*EIzd;J~t$VkP9Q}A#7*E>SXJVe({F!zJt4q>xHw4~~Cc*r< zdDB?ghi7qbj_LSibymEzpX(><14qp9IML9rh#e23naQL&^ueVa= zB49aYD7abOStK^wqCHp}V?rrl-lEj}yTcec=!~!2cIqdG_H^~+{aO~pft+7dG zI55Ed-fLbTaeS~>r&wBw_JhO)z=|VG;#+s&T+w`cyB>Qd=W7Z^fcul)_NooJPeF|< z#Ald?+=^H|@yzjK#};wa-=5k5yN(Jkl&L{`jkaTz=p-3T6EU)S zFV+noLB#;)N^nRSkEWmZ$zKZGB3Euvi;*zcBue$kZ2i&Ed<#bkNv z_f+{`ygbj9r8S$hucX1}*|8JXq-Tm-LWM6EbM(+>EnQs`CQkghaK<`M!r6i8@G1Qu z%co}l5h*)jVy@CQ2ruQmKYkZmMLB#SstXO_aF1F_0y>E23s}g-)iv$QJdhX&{I)Re zIf)-*M}a9&^IG!4;kx=;bxXU+uKr&&g|DRIghR2XPMnZ$v(?|1`b6a;*_$sdb}6T$NW6Lx<=E#8oTkEkLh7MK(X^#;-N1E@E-t*q+>aAS-Cb0TQ-s_TV%bNH^2A3r zXu-HR@V^g>?5F6fXWza^0!967{tp9U^9*|Ja?%xiV=<(g8Z>;(mA)+I~6G z_G!z-4S-Ip<&4mNdqx6TpqDq+ z_4Y~#JgK*LGES+O=z&%e!cy3`#UkaCPvb7_z4$vA9tB6NpT2%qrgG5tisOCi(a_n@ zC5QimT0Pmj2CW@%cuv0QWV9UDwv3B{p>U#l1WlM0v7vD2Qu{A+fyboLts7le%FJcM z{Sk+VefJavKm?~)ySIOn3-E+$aB8a)3))Ov*Qqc(lK(s@{!jje(c$<4HHMDp2YXtY=(d8yOi2 z(<0mS?%kp9?J2F#~5bNJFH$1zcGZOgW4`6fYoj`IDp$^w3h#q4?WG?7~8pm92e z6{d=OE(|CI1d!vQh4yjM1aa1#zR!G^XF$pVnFwg8fg8@g{DGpy{l?f6O2MY-iuNZ} zYl%UJX!Qk>R8#vQ`vSp@gGhd{k>)5Ml@RPn9*90p}T4rXzhz5jd>tLjB; zP@J?zobXBv$1R}Qhoaj)!crt65()@&5S3(^3h-foZT~R* z%Qb0OLFcD~clCHG?p|f)KH{t$1ah0n4>=_v_cJp~O(`-g$f5R2rvMw4{J*@&>}uIeDsO&J(R=)ZyKMd;LORX*N0=|PD z#sYGw;cuNq?jwoRGBn@%`AW!JtK}9rwsAX3$+1tn9URa!o|wW4*x;w+3wqkg#zTsO zZtdQkutSWKRU@tYbRD&Rg}M3dbHhqa3Z*5ttUbHzW)mW|Y%GozV2J5UDLV#qyk)$W z;5pQ?d4B%eIol`=cR96)viDvBhwm>h#i!=pejX_iw*_E9WSz2^^?&|w3C2^vZPSKQ zDMWi0N}Dv@cz2SU=0-Czd#4h*n35%5oqXw*S7rC&@k6yEEo;bp0r2pmxRI3v)8d$# zE~zKUXh{nfn-ah$@A)oQZ&7?AWK|bTR<#v>#!lf3$Rg# z>Evc|5oVcIRjJhMz^qfS_57N>SIyIjtRUP*9gRiam!>kVogqvZP#c~1^-}NMCh~Mnz$xNVwqo~Co&QGm-o0QH@)N32I92lT z^}YAdbGq=x+8{fM^@&_$?r%`gU8?cNSH!*yeJsR1pknKT{T9{A9zH}x`*&^aK1*Ht z_UYZ3iyIg-dNjLCB0he>m216dUM5V4s+f4mwyUP*=MNu@aIQ3!bZ@s@9M{I2yuFPF z@$~Jxj<}fdQ!3K(1FhqXN>`o%5rYEhvIPa=9Rh6?`xS;PdFUGJll2dl*8^rA-E3fB zG(2bR)S7M~ww$zYkEeM{R6~;qg%bNBYL4S*IKakIKj1gS`D!xH-Y)8~MJ{eMxT&}{ zqrBMa??h1GGBp^RB91V=6RKFj)2CnGT(1ODfG?Epb)to0o*!rs@mZq(^6}zy-1S`` zCBcm>Se3PK`OzKivAN5-TF^hkb#I_JV*(Ek*pqTx!3Ojd-ZJ*e6V^Ho87D%yPJ~J< zKD>LUtfHdRa^l9^wyX5k5xYuXpB)IRh10?AFJ7MXCxZZ3%BF4^j7hjonQ zU_y})xpyRYof{awkW13XUx)=wBn(PRpXObEqk`ovp~ICtl2@-|m~T;n;ra8umB*G{ z0u$wajwdggFoDi@jOQvWJs4zLlZCn}6g1alljai-Er3a;+_&YdH`IlMLI!|sPnKR( zn6%mW*`={iFV21UpcmDUqssu1xtFy)=-Ne;R2i=cAGLbOc45z;0)_2$=Mg_BPYo!!{o%;P^_#{ zM@uDr0n=fr;MIs`B)2%?ci?#bI(y~ByPtRD1UHkUr?77e9iVPYoFvvjVR6tUId3X5@1+T}mXZwbuSe%oy zXYvV5fjDWj$!ggONu-=jv!}DLUKnD_wK3-;-TS-rQpVS{tOrnT( zX7>CA3%tSOzIzno@g6>&k5*1I*;~>_8hKPi^B-~K$!r;PU zSy?kWp7Aya*fkymdO?|lVGZA19&Y!}y>N8L%L48-r|3XzY$ek8Ak?p7)D|y$bnwg$ zJd^l2zQ`D7@=L^;BmuL&UbI-aun7#Ejx;;g9*a-S0Dj~@gT8?C?7C9537N!hBZJ+r?I4`PGpTDqS=d)w=aPUGl=BP;B@zSt5}AGw^nm3;}2vIq|Hg`%AR%lQ{le@=yt? zmwtm?Am`D&2>!=B(a{D5VwA(Yy-aa{JS-$0SK;m zxVJ++n61J~&HFo!fCKQg=p-&0L(_HeB8z`^!jVE}SxG+@hsZQh3=_a6=mVBo`Ao7bPz8Q#F$XAyaZr9#b$ z^VIlf9WaHX#znuDW?G70d?-Z9BDJ}G`Ca#~HeMA|UOXj^q87#A?LVLT{c%pP*HuBZ zU<&-jtBx64ZMuy(J!k#;TEFI>v1C)mqefv8+$r0W?~n3HNAz&LimcbOEV|PV9jthr zc#int?YJL@ur$QSh+WVD>`D5Kk)k4{g`Q5&G&>y~QIL*09{A-rcvDhR#m9S#9j!R$ zE|;zaQ*+peEBu{p@`FfF-&p3z}k>TI7k*sO?cugEt%OG78mhHV7{wY=65kd+^ zcN9_Gb)ZFX($21teSbP9q{8Fdr$289A6S26aVUzxSVG&R8sZ)SnB@2E@BS&NLMbn590 zxEIj{NX!jKOmw)Cb zGM%!Wms{E-pX$4vB0MGOtmWkue@o3sLnI{3wzAsMC|{2WqbDJ_ye60u z;IJ3q^mPNp9Tb!H9+@ZH=rA{8E=2dfDhbcq7e!!so4_N9SP$}V1aI~ zARGvoKz>tqp*#YQE(F2j?4_rN-m$37=UpHfXFeZUP!ZD~i+ch8*XStRU%qjrgqUGU zCx-j|m>o5{-#-QNvF@p(PJBDJWO?LD3GFQm zYjq{oLP(Wsvz1dc&(>DlY=TWt2QjO)s`6rlN;QX%`%KY@(xw}!5PYg&L z(1WWcjNZf=Lb5}O0}>!X-BVx-u+Wn)^U1P_vr(VtyYl0|(eA-T6T_L8<9>!G;|xTc zh>K%DYH(%0Wi~XVd&wujPZNbliFc;6rkriuHfSz5#JlfT8q0+~SzY39^m%M1*rHg!!G84W77q2oPytEcBAo@9Qk3T z48*JjspB&^KA}*JMGG(;L>+K%IccOzpza0Y4R=>&IHj#x0SSQ>TI;Hn15N&qf~*Gy zVvc}20ZIwwlYmblrw*JGR3?L9CxHui6SOv5om%|uBN!WcZ?0lN;0V1jl7fxEL4_G! zSDG9uM?rut7%N{PaaNcqyn=~&!Yy&|RKPyq60iYPt}g}tC9oMxN?pJemI7HwU=Tr4 zAiTi{cj*;Ef(2l02iYwM*iQmT2X`3wj6e%Q6R=T&%~b#mU?>6Ph>zcdQXuHA9bFoj zuO<+C^zV;w1!-0PTV@4CAkZW%^i>suU<%v^2~ZW{f8exa*s}*ZX4oXEgI9<#L)1Ih-0M{1)3S2}FYH|3Zp3$QGWVNF3Y0*-~QMfPoU$;zZ~ zTG$lm{GVr|4<7YekRYLOT_SDaFwiHkDR{{>)YNz}0G~ZT2?AoVo7fUn1SbaA>^og_ zc%bSQVmwg9?V%&W3QZfJ)B%hEXqW;$p+t*0{SQz>(vox#XhU#^1LrVBKsO4QJwR-@ zfwiA?13FcHg%||*=b%(mkrY(}?t%OLE?t?TPpUo-vqVD+R#C`W1nC3>g@PMe4*m7l zN$<^7n7nM41ULjq5D>Cfp{Fm>racubcu$fQ4S57Ly;KNWFwYg*NyCsL2Od<5$lJvI15Q(bw~$W>2M- zqAIEt;Azn0@e~YHIN*Ms44D;w1<04;Tv8-z2_uuNLCD|32mH*tLuiVF{sn6k zE_E31&f$rrK#W3YAEDC-As$E@3KW5aqJ&?uR8m3@5Di2iaF5|0dj zOu`=c0e%GLRhX^tNrHRmNQIT#bd)#tKt5e%1<ID{+SObEr`?|BEx}ZhE~4_qSq3)CazWU#QH3 zY8mL;hAg?xj7B9I5^fl9wz zb?MxxmFmKbhU(?B=yzW><^xQI=yNZWdfv#HjC)PDbfc&I^?0?d<$DQv@HKtk$T<*u z$bz~u52_!(Hhe0-cy?8Sa(h(%oKLEWo7`~6jncwPtJzfBw%Jt@?st=D3{T)>$zs6S zv23g*gx6I-<6iG04-`$oPlaEP{j`=%{+x^!b;A%~&zIiQp88}m>Vn!xmOWUGG$wos zH`wd&y9VE8L=3ccbGS8!F3T=%Fv*^l zWEx`cAUv-S@+h9{DB~%LPJu`!X4=^%I`)xAM&H!ejPdo>ZwW-ZqoPI0@@Gg?t|9~F#f}MKO3cH1uDMZk3gT4Rs8uHrXW4S zpu>WlF+k<$r(@%C^Gb!jO*0H~(IKDF??Qx2qZ-bm5O$b;g zjdz6MtKaTmAHVDjHp1X*UB{j#5+9f3PMR-lK54N1*_KK7|Cm2*_wLhu+=8T3hxN37xS!3_Em@76BiqV|%3+QyI!r6JYN+wtq&sjq^EY@Edhah&|2 zZ=6>pqO2VkUFVI-MJPyz?kb+38!)^k@xb{9kuVeCM!eH#Goi%tr04=B{h#XwhD}*h zGM&~P6Sp_n_OQNRZtgSOhW6dy{YUSGO@kia0tNGL3EKP0>Hju1w|0){OCG|_8}jIO zYtsjD{@to#RIlq-R!m(wRy}$++5G&@u?DwxX!&e7M(ZaCw+)-B=24ZMheH9WNg@F* zUGvW51RHivtMT+lpC5O~bPc75K7pn4-|0dgW$cDeaP&@iSrkF8o@LVhUUFTCg8!l? z(UjagxxDtOr?1&^WenXX@Hp=Dc8&xxB8f;Gc8Df8HN0d+`p5ppVKZBIuZhqC1!WRT zeAywf*xdUKk=Zmyf-?fuuIO*YtwxjxjWOs@IZ%i0azF<5MB8HG_s`-hu@esp6rBI~ za#CAaFnpPc{NrI-QOLmlMLAUCd0i97`wfzW6pWIze-kiAYQ`l`Yg6s^58meLGPG(} zUei{TjKx|x6I+wVuU9Aotul|nyo&6VD0Cu&phwo(jVo_6-ZnI*2{19M*QS9(h49~P=v%vJ7NKm^pnYVxDxSG zeC%xhpC4+yw~ge`FuU|h(d?r13z72rWtrzz4HeyLL5G66SeUiskz`nc!((oK7A9xg zT=y7X;Eo+JVkJNmM9s3qyZ$IGaO{khD+V8X%k?GGw4i8|kzDO8Uz^Ybdhv-!XkC2W6RXh>yZIpUz)OJ)fhsJcOw8D$NH0vkgUl_#dH!SGbHg5} z?!Y2S^}SdFBr(;47&<0f%76RyXOi#+Va9R(jMf1yF4tTa-e5jaAvttjg4Ju>`3RIe z^I1U~bjRbgry~AiB3Kp-)T?lybuK(tT6|tNQ+>T7=p3?leMoseXq$H(HDj)f+LpW> z$Eq$JT$glr;K--n@-b}iFf;Ru536^%B7D^pMpkcz@kGclGZ(XeGIf)xwa8fg#2poBpMnDjhV3mZETaoz5*hTwYWm=}f;Q=f0gq$cfe75TB$zvLSb zaOD>g{VSR>v25{Z{e>09sG@GdUwsqLpdZb=clcPC&hqu@zSMW&pGU?n-_&?=*-3K- z8-Y^7sG~jwiP?Cp3t;4fQcsMWt-AQf?wSc;4`b+2w^2yU3`!a05g1q(DH2l`k|v4O z!H_L^j-E&LqOwuzDC0nlhO@8KSrwd!ol@k+NFK9&ob;e~n82^lZBNyz6ae`IdfYWZ zAxqlxZ*E%mZJ~rv#h%@5NAIF$esTVV*k>SD1NZQ-i|q&|GT)!75Rzv>j3P9DE3#dd zBq_OW(i_>Zkvj@?huxq!;Wy*%sKOnd+#yT^>u>$N%eXH{`qE!kQ+Y9l0Bx@Q3FNVY z|I*r3ocA=$)JK%0!>kG$Txnecy#>~N>+bI{@#G{23Gl6)wo)1=n@pB*M8L;RH_?JVvxw^;+OM%M$;@#g2zL^CJQ*)lAh)3H%KaSu%MYcgIY-290f3umxq2T?~We zv?L|{W+U5*94{zs>b5WVS&Idpcv^PJvw1-^#o=)t-@MQ~-voLj?U+MGp6wSMPwo|Y3rO@Rv_{_atmckSY!xYz z;5#LBddX9x{ykl>s+sZqeOje816dEosIlp>{fLNS`Vv2t6RJMKctPJ|B;iI&Nscts zJ();QGK>|PVHqj)yNW^fP>fN>Y5=&iw_T&5p;>?|(o;K|`#dS4gwl!P3`qfkoOG^Z z7kNf*{E-(^AgPDp)Z`<{(w!qISIbB-kX>k#7{qP{7fuXwkhd>W zpE*GLdlX&%^eBt|dr>aqL3Il4$@@yk*zWHz^(2X?DF20y5DIte*pHI`Pvp|ECINW} z0A2BH<^V|*j<*8JmPF%HpVIE=d4%R6l1lwkXZ-oB|3shv>wr7>@=yAtKvaXs*p;q3 zM7*;ZyS(vJ3GOn@4xU7?l3>Qaedy2mo%#t`cXZnSwg_~m1NCeD{&Vlngd26W>b)Pc z>L50TCp_$9!oI7P9o}a~iRaLo+<)-u6jyGV2iBL+cJI@chUmrW%U9^^r@Zb=cXzlR@K_|yM?Ufkm;B)D zg1+C#+Zcg&%dkyPiElh5M^tHh`B;AaLr#Vajk++8V1m0Co;~fmkL@q*%FXRvJ`|oY z$`DUu;9wGcy3Dlr<60%&=xG9V-uUtU6s#)wsIqRPU?=r~-u!chF~+IsnG$W?R=9){ zp;N9(s4WXu-0>yC@WtD`F0w9TrrYy1>aV$98b52bENPs5n~mdGS(!RCa00(Hm-60r zX7z!S4X*cdB#TT_&D4q5p^Bxr1>*@RRryeYr~*6bl%bY7P_0vrg5B;s8a9r~Kyb0` z!P-Q4M|&m~oQNJzc9Or8OWcqAhaeV+`Yc{GlWYD&d=S<7==iDOP^N)HbO3p{S-sQ4EqiD*@ zm%G1vEZ)>3NWVpY}wT z0sNMg;)KGRg+A8I~=w<1CutnWNdAuk|>qiwR8wy(D%Tl#%^g~ zOk9Qqwtj;vRkf*=lGz*`JS4rtRR z(1qZo7Z;Z}^oIq#AY?}6$1^Wv))G663ZlF1O|GB4Z6rBU+0<%o zeA7om{mfiiZEd(*mbCIZhYiO^x$?1!iDHzKQx#)KxXQDYGPqxEs)RGg>FhnPm90d- z=}B*Y#$V_fR{r+mD55Yam2YwTOK~l$>Y8dJeP%9!wT`9>r_$4bWfyqawB182(?qxS zv@9nC%-DIv(O#Dm<7K{>*;tLsRZ!#TC9X$Tfel!vv{FTnYnS+b4ew0+hMNS6J?GZa zH@#t0R#ob0>TEG$;{7-`pJi^ceF@CM*B_zb&hxd+yDwfDA|t^@)rK?Z(|p!fS*N03 zzIJbV8K}zKZ7-vpjMs53EsYoC_PNH;kbv1-=oldoL`F1O^tR(=%_c)iNcP2)&<&b(l?)ZU_%~M^gWqTJzs~H z*DqEff|2$4O9PC(kb5yjt4x>n!SvCT=#Kg4i#L(Sa=o|yUd3B}PK|GIvrH~c@i>C! zTIz5-<>Tp`Uvf?9A+cX!afsifYT9;_hGh>WOZ8qv=N#^78C^Qc-E*#KEJfD*ad76V zW{N(M)rO^A%}t`#*6e5luG*mdFzKMQvbPrsQcJFhWiwUGce=-ktId~s3}N#VtSdB1 z(o%8;=gJd)6cwCEB$jgfMtV$+3sc{1+1`CQl+&-kJQ|=o{_b)DP3Jtbh|a;hX=``F;&Ak3 z_9DlrWVHwSaM`!n+@BL`@73(!ne(C-bnV69DFy04b5zM#bRK|8=-S? zq#|ATP*cYH#C1Cp|JYQ`Yw2T~3W;hap9)IVdsBod%3bU#+b8LF&E|BA=5P7b&3F5^ z>P@CMUU-z*69vZC=Bi}_f|~}N(RoFVqdWr*73IgLZ+`CAD=5j4vy~cO91f8ea%MM` z_x3n_WJQmz3sCeCa8E8bg*Krj@|(%354unVFmt;8b@_coAHAfEmVFM?3uk&zgdtYthj9&Io^m zny!-)fR2xY`DVUJd!oEVXIrOLU!&91Ju9v&`8&1bKMFdJacQ9r-O?kwG_kaCo zCX;`kaaVOgTzyKIx|YecERk%m@p$CQ3b)036qx{a^Xs`K8a%smZ$Mrz!6@w7Xfbx> z`PBHfk^9WXnG+q;Nl}Rp8*el+4;uT#xfF-@ce;AGaTEH4Up9r)m1tkTT5a5-P$kR~ zVdwgcU6>}}8ar_#^lR`_Q40D5pgubstKIMf3Az0=o^(s?$)y7_j?FzL#Ead#DtF{N z7r!l6d82jq9Xut;!_wuYFYQNQNvdZ%C(+kRe2^W~75dEICjJ>Mom|0cYV`Nnw?_|Y zTCI^b5&S(Z`cu{}P^NZI>Oa~s2p!`c%VifBfUjZ)P2VYFjOjX*V~MDwzt-~0fA{|w z*Mm2F$1eUq8z->QlMlW70s@OD=%j23H`p7mW;++>CAD32ya#m;iWi~q?P@KT=1E;{ sb<{ZwLd=xCF~^WQO(w{fjJPj^;pW$`E(uG}avh Date: Tue, 22 Mar 2011 20:07:40 +0100 Subject: [PATCH 107/192] Changed styles some --- doc/report/#report.lyx# | 398 ++++++++++++++++++++++++---------------- doc/report/report.lyx | 154 ++-------------- doc/report/report.lyx~ | 394 +++++++++++++++++++++++---------------- 3 files changed, 488 insertions(+), 458 deletions(-) diff --git a/doc/report/#report.lyx# b/doc/report/#report.lyx# index 64e2c8a..9326976 100644 --- a/doc/report/#report.lyx# +++ b/doc/report/#report.lyx# @@ -32,12 +32,16 @@ \renewcommand{\cftchappagefont}{\bfseries} \renewcommand{\cftchappresnum}{Chapter } \renewcommand{\cftchapnumwidth}{6em} + \oddsidemargin 0.5in \textwidth 6in \topmargin 0.0in \textheight 8.0in \setlength\topskip{24pt} \footskip 0.75in + +\usepackage[compact]{titlesec} +\titleformat{\chapter}[display]{\bfseries\vskip-8em}{}{8ex}{\huge\thechapter. }[\titlerule] \end_preamble \use_default_options true \language english @@ -53,10 +57,10 @@ \graphics default \paperfontsize default -\spacing double +\spacing onehalf \use_hyperref false -\papersize default -\use_geometry true +\papersize a4paper +\use_geometry false \use_amsmath 1 \use_esint 1 \cite_engine natbib_authoryear @@ -65,17 +69,17 @@ \paperwidth 11in \paperheight 8.5in \leftmargin 1.25in -\topmargin 1in +\topmargin 0in \rightmargin 1in \bottommargin 1.7in -\secnumdepth 3 -\tocdepth 3 +\secnumdepth 2 +\tocdepth 2 \paragraph_separation indent -\defskip medskip +\defskip smallskip \quotes_language english \papercolumns 1 \papersides 1 -\paperpagestyle default +\paperpagestyle empty \tracking_changes false \output_changes false \author "" @@ -104,6 +108,10 @@ Richard Pannek Matias Petterson \end_layout +\begin_layout Abstract +This is the abstract! +\end_layout + \begin_layout Standard \begin_inset ERT status open @@ -193,122 +201,6 @@ status open \begin_layout Plain Layout -\backslash -addcontentsline{toc}{chapter}{List of Tables} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftlottitlefont}{ -\backslash -hfill -\backslash -Large} -\backslash -renewcommand{ -\backslash -cftafterlottitle}{ -\backslash -hfill} -\backslash -renewcommand{ -\backslash -cfttabpresnum}{Table~} -\backslash -setlength -\backslash -cfttabnumwidth{60pt} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset FloatList table - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -addcontentsline{toc}{chapter}{List of Figures} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftloftitlefont}{ -\backslash -hfill -\backslash -Large} -\backslash -renewcommand{ -\backslash -cftafterloftitle}{ -\backslash -hfill} -\backslash -renewcommand{ -\backslash -cftfigpresnum}{Figure~} -\backslash -setlength -\backslash -cftfignumwidth{60pt} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset FloatList figure - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - \backslash pagenumbering{arabic} \end_layout @@ -680,7 +572,43 @@ In GGS, we have separated the system in to two large supervised parts. \end_layout \begin_layout Standard +\begin_inset Graphics + filename supervisors.png + scale 40 +\end_inset + + +\end_layout + +\begin_layout Standard +The graphic above shows our two subsystems, the coordinator subsystem and + the dispatcher subsystem. + Since these two systems perform very different tasks they have been separated. + Each subsystem has one worker process, the coordinator or the dispatcher. + The worker process keeps a state which should not be lost upon a crash. +\end_layout + +\begin_layout Standard +We have chosen to let faulty processes crash very easily when they receive + bad data, or something unexpected happens. + The alternative to crashing would have been to try and fix this faulty + data, or to foresee the unexpected events. + We chose not to do this because it is so simple to monitor and restart + processes, and so difficult to try and mend broken states. + This approach is something widely deployed in the Erlang world, and developers + are often encouraged to “Let it crash”. +\end_layout + +\begin_layout Standard +To prevent any data loss, the good state of the worker processes is stored + in their respective backup processes. + When a worker process (re)starts, it asks the backup process for any previous + state, if there is any that state is loaded in to the worker and it proceeds + where it left off. + If on the other hand no state is available, a special message is delivered + instead, making the worker create a new state, this is what happens when + the workers are first created. \end_layout \begin_layout Subsubsection @@ -703,14 +631,128 @@ Problems Erlang JS \end_layout +\begin_layout Standard +To be able to run JavaScript on our server we needed to embed a JavaScript + engine within the server. + After a thorough investigation erlang_js became our choice. + erlang_js provides direct communication with a JavaScript VM (Virtual Machine). + This was exactly what we wanted, but we also needed the possibility to + communicate from erlang_js to Erlang. + This functionality was not yet implemented in erlang_js, due to lack of + time. +\end_layout + +\begin_layout Standard +There were two possible solutions to the problem. + We could rewrite some part of erlang_js, or we could switch erlang_js for + some other JavaScript engine. + Searching for other engines we found erlv8 and beam.js which provided the + functionality that we wanted. + As we tested beam.js it occurred random crashes of the whole Erlang environment. + These crashes were related to the use of erlv8 in beam.js and we decided + that the use of erlv8 was not an alternative due to the stability issues. +\end_layout + +\begin_layout Standard +To get the functionality needed we decided to implement this in erlang_js. +\end_layout + \begin_layout Subsubsection UUID \end_layout +\begin_layout Standard +Erlang identifies processes uniquely throughout the entire Erlang network + using process IDs (PID). + When we wish to refer to erlang processes from outside our erlang system, + for example in a virtual machine for a different language, possibly on + a different machine, these PIDs are no longer useful. + +\end_layout + +\begin_layout Standard +This problem is not new, and a common solution is to use a Universally Unique + Identifier, a UUID. + These identifiers are generated both using randomization and using time. + A reasonably large number of UUIDs can be generated before a collision + should occur. + There are standard tools in many UNIX systems to generate UUIDs, we chose + to use the uuidgen command, which employs an equidistributed combined Tausworth +e generator. +\end_layout + \begin_layout Section Design choices \end_layout +\begin_layout Standard +When designing concurrent applications, it is useful to picture them as + real world scenarios, and to model each actor# as a real world process. + A real world process is a process which performs some action in the real + world, such as a mailbox receiving a letter, a door being opened, a person + translating a text, a soccer player kicking the ball, just to name a few + examples. + Since we focus on games in this project, it is suitable to model our system + as a place where games take place. + We imagined a chess club. + +\end_layout + +\begin_layout Standard +The clients pictured as green circles can be thought of as the physical + chess players. +\end_layout + +\begin_layout Standard +When a player wants to enter the our particular chess club, he must first + be let in by the doorman, called the Dispatcher in GGS. +\end_layout + +\begin_layout Standard +He then gets a name badge, and thus becomes a Player process in the system. + He is also guided in to the lobby by the Coordinator, which has the role + of the host of the chess club. +\end_layout + +\begin_layout Standard +When players wish to play against each other, they talk to the Coordinator + who pairs them up, and places them at a table. + Once they have sat down at the table, they no longer need the assistance + of the Coordinator, all further communication takes place via the table. + This can be thought of as the actual chess game commencing. + +\end_layout + +\begin_layout Standard +All the moves made in the game are recorded by the table, such that the + table can restore the game in case something would happen, such as the + table tipping over, which would represent the table process crashing. +\end_layout + +\begin_layout Standard +Once a player wishes to leave a game, or the entire facility, he should + contact the Coordinator, who revokes his name badge and the Dispatcher + will let the player out. +\end_layout + +\begin_layout Standard +With the information kept in the tables and the Coordinator combined, we + can rebuild the entire state of the server at a different location. + This can be thought of the chess club catching fire, and the Coordinator + rounding up all the tables, running to a new location and building the + club up in the exact state it was prior to the fire. +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename system_structure.png + scale 40 + +\end_inset + + +\end_layout + \begin_layout Section Understanding OTP \end_layout @@ -732,54 +774,90 @@ Statistics \end_layout \begin_layout Chapter -Conclusion +Conclusion \end_layout -\begin_layout Chapter -References -\end_layout +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-1" -\begin_layout Chapter -Appendix -\end_layout - -\begin_layout Standard -Text goes here... -\end_layout - -\begin_layout Section -Objectives -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage \end_inset - +Savor, T.; Seviora, R.E.; , "Hierarchical supervisors for automatic detection + of software failures," PROCEEDINGS The Eighth International Symposium On + Software Reliability Engineering , vol., no., pp.48-59, 2-5 Nov1997 doi: 10.1109/IS +SRE.1997.630847 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=630847&i +snumber=13710 \end_layout -\begin_layout Standard -Figures go here... -\end_layout +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-6" -\begin_layout Chapter -Methodology -\end_layout - -\begin_layout Section -Overview -\end_layout - -\begin_layout Standard -Text goes here... -\begin_inset Newpage newpage \end_inset - +Vinoski, S.; , "Reliability with Erlang," Internet Computing, IEEE , vol.11, + no.6, pp.79-81, Nov.-Dec. + 2007 doi: 10.1109/MIC.2007.132 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&ar +number=4376232&isnumber=4376216 \end_layout -\begin_layout Standard -Figures go here... +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-5" + +\end_inset + +CESARINI, F., & THOMPSON, S. + (2009). + Erlang programming. + Beijing, O'Reilly. + pp.139 +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-4" + +\end_inset + +"Erlang/OTP Product Information: Technical Description of Erlang." Home of + Erlang/OTP. + Web. + 01 Mar. + 2011. + . +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-3" + +\end_inset + +Joe Armstrong – Armstrong, J. + [2011]. + If Erlang is the answer, then what is the question?. + [1]. + IT University. + Computer Science and Engineering, 15/2/2011 +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-2" + +\end_inset + +Gul Abdulnabi Agha (1985). + ACTORS: A MODEL OF CONCURRENT COMPUTATION IN DISTRIBUTED SYSTEMS. + Ph.D thesis, Artificial Intelligence Laboratory, MIT. \end_layout \end_body diff --git a/doc/report/report.lyx b/doc/report/report.lyx index d216beb..9326976 100644 --- a/doc/report/report.lyx +++ b/doc/report/report.lyx @@ -32,12 +32,16 @@ \renewcommand{\cftchappagefont}{\bfseries} \renewcommand{\cftchappresnum}{Chapter } \renewcommand{\cftchapnumwidth}{6em} + \oddsidemargin 0.5in \textwidth 6in \topmargin 0.0in \textheight 8.0in \setlength\topskip{24pt} \footskip 0.75in + +\usepackage[compact]{titlesec} +\titleformat{\chapter}[display]{\bfseries\vskip-8em}{}{8ex}{\huge\thechapter. }[\titlerule] \end_preamble \use_default_options true \language english @@ -53,10 +57,10 @@ \graphics default \paperfontsize default -\spacing double +\spacing onehalf \use_hyperref false -\papersize default -\use_geometry true +\papersize a4paper +\use_geometry false \use_amsmath 1 \use_esint 1 \cite_engine natbib_authoryear @@ -65,17 +69,17 @@ \paperwidth 11in \paperheight 8.5in \leftmargin 1.25in -\topmargin 1in +\topmargin 0in \rightmargin 1in \bottommargin 1.7in -\secnumdepth 3 -\tocdepth 3 +\secnumdepth 2 +\tocdepth 2 \paragraph_separation indent -\defskip medskip +\defskip smallskip \quotes_language english \papercolumns 1 \papersides 1 -\paperpagestyle default +\paperpagestyle empty \tracking_changes false \output_changes false \author "" @@ -104,6 +108,10 @@ Richard Pannek Matias Petterson \end_layout +\begin_layout Abstract +This is the abstract! +\end_layout + \begin_layout Standard \begin_inset ERT status open @@ -193,122 +201,6 @@ status open \begin_layout Plain Layout -\backslash -addcontentsline{toc}{chapter}{List of Tables} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftlottitlefont}{ -\backslash -hfill -\backslash -Large} -\backslash -renewcommand{ -\backslash -cftafterlottitle}{ -\backslash -hfill} -\backslash -renewcommand{ -\backslash -cfttabpresnum}{Table~} -\backslash -setlength -\backslash -cfttabnumwidth{60pt} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset FloatList table - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -addcontentsline{toc}{chapter}{List of Figures} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftloftitlefont}{ -\backslash -hfill -\backslash -Large} -\backslash -renewcommand{ -\backslash -cftafterloftitle}{ -\backslash -hfill} -\backslash -renewcommand{ -\backslash -cftfigpresnum}{Figure~} -\backslash -setlength -\backslash -cftfignumwidth{60pt} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset FloatList figure - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - \backslash pagenumbering{arabic} \end_layout @@ -882,19 +774,7 @@ Statistics \end_layout \begin_layout Chapter -Conclusion -\end_layout - -\begin_layout Chapter -References -\end_layout - -\begin_layout Chapter -Appendix -\end_layout - -\begin_layout Standard -Text goes here.. +Conclusion \end_layout \begin_layout Bibliography diff --git a/doc/report/report.lyx~ b/doc/report/report.lyx~ index 65806e0..e0f3607 100644 --- a/doc/report/report.lyx~ +++ b/doc/report/report.lyx~ @@ -32,12 +32,16 @@ \renewcommand{\cftchappagefont}{\bfseries} \renewcommand{\cftchappresnum}{Chapter } \renewcommand{\cftchapnumwidth}{6em} + \oddsidemargin 0.5in \textwidth 6in \topmargin 0.0in \textheight 8.0in \setlength\topskip{24pt} \footskip 0.75in + +\usepackage[compact]{titlesec} +\titleformat{\chapter}[display]{\bfseries}{ }{0ex}{\huge}[\titlerule] \end_preamble \use_default_options true \language english @@ -53,10 +57,10 @@ \graphics default \paperfontsize default -\spacing double +\spacing onehalf \use_hyperref false -\papersize default -\use_geometry true +\papersize a4paper +\use_geometry false \use_amsmath 1 \use_esint 1 \cite_engine natbib_authoryear @@ -65,17 +69,17 @@ \paperwidth 11in \paperheight 8.5in \leftmargin 1.25in -\topmargin 1in +\topmargin 0in \rightmargin 1in \bottommargin 1.7in -\secnumdepth 3 -\tocdepth 3 +\secnumdepth 2 +\tocdepth 2 \paragraph_separation indent -\defskip medskip +\defskip smallskip \quotes_language english \papercolumns 1 \papersides 1 -\paperpagestyle default +\paperpagestyle empty \tracking_changes false \output_changes false \author "" @@ -104,6 +108,10 @@ Richard Pannek Matias Petterson \end_layout +\begin_layout Abstract +This is the abstract! +\end_layout + \begin_layout Standard \begin_inset ERT status open @@ -193,122 +201,6 @@ status open \begin_layout Plain Layout -\backslash -addcontentsline{toc}{chapter}{List of Tables} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftlottitlefont}{ -\backslash -hfill -\backslash -Large} -\backslash -renewcommand{ -\backslash -cftafterlottitle}{ -\backslash -hfill} -\backslash -renewcommand{ -\backslash -cfttabpresnum}{Table~} -\backslash -setlength -\backslash -cfttabnumwidth{60pt} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset FloatList table - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -addcontentsline{toc}{chapter}{List of Figures} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftloftitlefont}{ -\backslash -hfill -\backslash -Large} -\backslash -renewcommand{ -\backslash -cftafterloftitle}{ -\backslash -hfill} -\backslash -renewcommand{ -\backslash -cftfigpresnum}{Figure~} -\backslash -setlength -\backslash -cftfignumwidth{60pt} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset FloatList figure - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - \backslash pagenumbering{arabic} \end_layout @@ -682,13 +574,43 @@ In GGS, we have separated the system in to two large supervised parts. \begin_layout Standard \begin_inset Graphics filename supervisors.png - scale 50 + scale 40 \end_inset \end_layout +\begin_layout Standard +The graphic above shows our two subsystems, the coordinator subsystem and + the dispatcher subsystem. + Since these two systems perform very different tasks they have been separated. + Each subsystem has one worker process, the coordinator or the dispatcher. + The worker process keeps a state which should not be lost upon a crash. +\end_layout + +\begin_layout Standard +We have chosen to let faulty processes crash very easily when they receive + bad data, or something unexpected happens. + The alternative to crashing would have been to try and fix this faulty + data, or to foresee the unexpected events. + We chose not to do this because it is so simple to monitor and restart + processes, and so difficult to try and mend broken states. + This approach is something widely deployed in the Erlang world, and developers + are often encouraged to “Let it crash”. +\end_layout + +\begin_layout Standard +To prevent any data loss, the good state of the worker processes is stored + in their respective backup processes. + When a worker process (re)starts, it asks the backup process for any previous + state, if there is any that state is loaded in to the worker and it proceeds + where it left off. + If on the other hand no state is available, a special message is delivered + instead, making the worker create a new state, this is what happens when + the workers are first created. +\end_layout + \begin_layout Subsubsection Hot code replacement \end_layout @@ -709,14 +631,128 @@ Problems Erlang JS \end_layout +\begin_layout Standard +To be able to run JavaScript on our server we needed to embed a JavaScript + engine within the server. + After a thorough investigation erlang_js became our choice. + erlang_js provides direct communication with a JavaScript VM (Virtual Machine). + This was exactly what we wanted, but we also needed the possibility to + communicate from erlang_js to Erlang. + This functionality was not yet implemented in erlang_js, due to lack of + time. +\end_layout + +\begin_layout Standard +There were two possible solutions to the problem. + We could rewrite some part of erlang_js, or we could switch erlang_js for + some other JavaScript engine. + Searching for other engines we found erlv8 and beam.js which provided the + functionality that we wanted. + As we tested beam.js it occurred random crashes of the whole Erlang environment. + These crashes were related to the use of erlv8 in beam.js and we decided + that the use of erlv8 was not an alternative due to the stability issues. +\end_layout + +\begin_layout Standard +To get the functionality needed we decided to implement this in erlang_js. +\end_layout + \begin_layout Subsubsection UUID \end_layout +\begin_layout Standard +Erlang identifies processes uniquely throughout the entire Erlang network + using process IDs (PID). + When we wish to refer to erlang processes from outside our erlang system, + for example in a virtual machine for a different language, possibly on + a different machine, these PIDs are no longer useful. + +\end_layout + +\begin_layout Standard +This problem is not new, and a common solution is to use a Universally Unique + Identifier, a UUID. + These identifiers are generated both using randomization and using time. + A reasonably large number of UUIDs can be generated before a collision + should occur. + There are standard tools in many UNIX systems to generate UUIDs, we chose + to use the uuidgen command, which employs an equidistributed combined Tausworth +e generator. +\end_layout + \begin_layout Section Design choices \end_layout +\begin_layout Standard +When designing concurrent applications, it is useful to picture them as + real world scenarios, and to model each actor# as a real world process. + A real world process is a process which performs some action in the real + world, such as a mailbox receiving a letter, a door being opened, a person + translating a text, a soccer player kicking the ball, just to name a few + examples. + Since we focus on games in this project, it is suitable to model our system + as a place where games take place. + We imagined a chess club. + +\end_layout + +\begin_layout Standard +The clients pictured as green circles can be thought of as the physical + chess players. +\end_layout + +\begin_layout Standard +When a player wants to enter the our particular chess club, he must first + be let in by the doorman, called the Dispatcher in GGS. +\end_layout + +\begin_layout Standard +He then gets a name badge, and thus becomes a Player process in the system. + He is also guided in to the lobby by the Coordinator, which has the role + of the host of the chess club. +\end_layout + +\begin_layout Standard +When players wish to play against each other, they talk to the Coordinator + who pairs them up, and places them at a table. + Once they have sat down at the table, they no longer need the assistance + of the Coordinator, all further communication takes place via the table. + This can be thought of as the actual chess game commencing. + +\end_layout + +\begin_layout Standard +All the moves made in the game are recorded by the table, such that the + table can restore the game in case something would happen, such as the + table tipping over, which would represent the table process crashing. +\end_layout + +\begin_layout Standard +Once a player wishes to leave a game, or the entire facility, he should + contact the Coordinator, who revokes his name badge and the Dispatcher + will let the player out. +\end_layout + +\begin_layout Standard +With the information kept in the tables and the Coordinator combined, we + can rebuild the entire state of the server at a different location. + This can be thought of the chess club catching fire, and the Coordinator + rounding up all the tables, running to a new location and building the + club up in the exact state it was prior to the fire. +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename system_structure.png + scale 40 + +\end_inset + + +\end_layout + \begin_layout Section Understanding OTP \end_layout @@ -738,54 +774,90 @@ Statistics \end_layout \begin_layout Chapter -Conclusion +Conclusion \end_layout -\begin_layout Chapter -References -\end_layout +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-1" -\begin_layout Chapter -Appendix -\end_layout - -\begin_layout Standard -Text goes here... -\end_layout - -\begin_layout Section -Objectives -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage \end_inset - +Savor, T.; Seviora, R.E.; , "Hierarchical supervisors for automatic detection + of software failures," PROCEEDINGS The Eighth International Symposium On + Software Reliability Engineering , vol., no., pp.48-59, 2-5 Nov1997 doi: 10.1109/IS +SRE.1997.630847 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=630847&i +snumber=13710 \end_layout -\begin_layout Standard -Figures go here... -\end_layout +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-6" -\begin_layout Chapter -Methodology -\end_layout - -\begin_layout Section -Overview -\end_layout - -\begin_layout Standard -Text goes here... -\begin_inset Newpage newpage \end_inset - +Vinoski, S.; , "Reliability with Erlang," Internet Computing, IEEE , vol.11, + no.6, pp.79-81, Nov.-Dec. + 2007 doi: 10.1109/MIC.2007.132 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&ar +number=4376232&isnumber=4376216 \end_layout -\begin_layout Standard -Figures go here... +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-5" + +\end_inset + +CESARINI, F., & THOMPSON, S. + (2009). + Erlang programming. + Beijing, O'Reilly. + pp.139 +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-4" + +\end_inset + +"Erlang/OTP Product Information: Technical Description of Erlang." Home of + Erlang/OTP. + Web. + 01 Mar. + 2011. + . +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-3" + +\end_inset + +Joe Armstrong – Armstrong, J. + [2011]. + If Erlang is the answer, then what is the question?. + [1]. + IT University. + Computer Science and Engineering, 15/2/2011 +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "key-2" + +\end_inset + +Gul Abdulnabi Agha (1985). + ACTORS: A MODEL OF CONCURRENT COMPUTATION IN DISTRIBUTED SYSTEMS. + Ph.D thesis, Artificial Intelligence Laboratory, MIT. \end_layout \end_body From febda963e32485d42fe9f9186d79c62a8a282d7d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Tue, 22 Mar 2011 23:42:51 +0100 Subject: [PATCH 108/192] Finally got the sections the way I wanted them. --- doc/report/#report.lyx# | 11 ++++++++++- doc/report/report.lyx | 11 ++++++++++- doc/report/report.lyx~ | 2 +- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/doc/report/#report.lyx# b/doc/report/#report.lyx# index 9326976..c0843e3 100644 --- a/doc/report/#report.lyx# +++ b/doc/report/#report.lyx# @@ -41,7 +41,16 @@ \footskip 0.75in \usepackage[compact]{titlesec} -\titleformat{\chapter}[display]{\bfseries\vskip-8em}{}{8ex}{\huge\thechapter. }[\titlerule] + + +\titleformat{\chapter}[display] +{\vskip-8em\normalfont\bfseries} +{\LARGE\raggedright\thechapter} +{14ex} +{\vspace{-20ex}% +\LARGE\raggedleft} +[\vspace{1ex}% +{\titlerule[3pt]}] \end_preamble \use_default_options true \language english diff --git a/doc/report/report.lyx b/doc/report/report.lyx index 9326976..eb2d9ea 100644 --- a/doc/report/report.lyx +++ b/doc/report/report.lyx @@ -41,7 +41,16 @@ \footskip 0.75in \usepackage[compact]{titlesec} -\titleformat{\chapter}[display]{\bfseries\vskip-8em}{}{8ex}{\huge\thechapter. }[\titlerule] + + +\titleformat{\chapter}[display] +{\vskip-8em\normalfont\bfseries} +{\LARGE\raggedright\thechapter} +{14ex} +{\vspace{-20ex}% +\LARGE\raggedleft} +[\vspace{1ex}% +{\titlerule[1pt]}] \end_preamble \use_default_options true \language english diff --git a/doc/report/report.lyx~ b/doc/report/report.lyx~ index e0f3607..9326976 100644 --- a/doc/report/report.lyx~ +++ b/doc/report/report.lyx~ @@ -41,7 +41,7 @@ \footskip 0.75in \usepackage[compact]{titlesec} -\titleformat{\chapter}[display]{\bfseries}{ }{0ex}{\huge}[\titlerule] +\titleformat{\chapter}[display]{\bfseries\vskip-8em}{}{8ex}{\huge\thechapter. }[\titlerule] \end_preamble \use_default_options true \language english From 8931b9f01ff59871d6324bf28e06f762f0f8b479 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 23 Mar 2011 00:17:26 +0100 Subject: [PATCH 109/192] Now the logo is in place, and the graphics look a bit nicer --- doc/report/ChaGUblasvarteng.eps | Bin 0 -> 194390 bytes doc/report/LO_CHGU_cen2rCMYK.pdf | Bin 0 -> 39650 bytes doc/report/report.lyx | 222 ++++++++++++++++++++++++++++++- doc/report/report.lyx~ | 220 +++++++++++++++++++++++++++++- 4 files changed, 437 insertions(+), 5 deletions(-) create mode 100644 doc/report/ChaGUblasvarteng.eps create mode 100644 doc/report/LO_CHGU_cen2rCMYK.pdf diff --git a/doc/report/ChaGUblasvarteng.eps b/doc/report/ChaGUblasvarteng.eps new file mode 100644 index 0000000000000000000000000000000000000000..bae175a2b07d03e7541ce4a85653d2e488e526b6 GIT binary patch literal 194390 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 kEnKvr*sgv)tsiA@TRk=HiT{twG z!2u4idmnxOPgM;MuV6jQC3;kqL{Yqx`oAC7XZpDKFaG`d`{%#?kNNSx{`1fO{d0Y! ztBudRKK}mUZ{L4Xs`Im_AOC-T^Zn<4|M{OE|FIuW`!)ahCw=_q*MIzJzQ_5q%XX=v&X8xROe#||&UdBh?>zr58GE&;(x-^-Y z+GqC@dG5cIkFh6}%lzoq^?B_#fSLX2cSL<{bk?=EW%Q4=KL!T=Zd{Cwt+^+*KG(Ie z)yn4@8#iVDvJ{QM>YiFmw6^p)TiX-M`(62CV{qele2g(Z%eC~~vX?rBakVFU?H#C9 zkhJHyAMCAb!}wI+Xdi8F*xtvz_dGCWd?J13jn2N(=h_=GH+A&2pWYap``4#~V-JVgGd#Of_Wx+x8Fh@Lr`&4sS^M`tz?pt*=d* zdy)I)X*CeH(F*a5{j#g1kD4|mw7q}(Wdkxyo0zXA#H|G0(%!(eX{hek*Zlw#vhlX| zV%w(Q+Pm<%r@@x+#NOD|m{@5XjJE$_uQrl4ZEVbsE{vyZ)5a1iHl4N-ko|E`8*j)g z4Kl1E+r1-TdL)j*o*u?OLHxc1Jp!{~Df6qchnD_j17REPTH}3Z9IiPj_+xBpi!Cd>Rdr_OB zH)bwg-$XK^+PP_NuXk(=&HXQ*<*R z8Qf#9^$oHYyWigS0bBduJ*}}flpn0U4WiPyKF28Dz?${Zr6aJ>zrUV8x}MMm?ww28 zKp2fV9@uGn!g-1Z?(?>ZVt>3Oh$2w&hC66;FKZvwjpL1;vZuE>;$~0g1XH{OhPF28 z&5cO0#0^gy&$C`a*GA~Z{6=R3Z9^wu?D@irHdkX3o6P3$dF9vXvo9d&bDy+2_QLnR z%(=0@&pEG$)6TgGc~w#Jo(MmfpY?)eY^uBVSsBb@e(+~jJ^My^5{up^p2ITtN>V(r zzXUV9AS>AJp2{ry3r&dIkd^l*Hm3LCY1b5=WrfYdy)$!DVeeuAmzm>iS@`7rFv+>u zVcCowhQFB5KAQus*RpxW+>~|A{=pdLz?9eiP)oqG#$_yhVro0)mOp#mngg^t_u*YE zX&*gg#@t6Wo=8=k;XvAEPuD)pjGOor_|*%_(4vtAta7hnrmk6+%r7=Y?)A28iLiMo zSYQ?WVUMdO&muIX+Qso$MBn=X)>}*Z!t@(99tU`3N_zul0bf(&k=d9_`^6L8M>AXe z@`efZGD#Og`g$;aDfLWoGFeRZDL zpR7!}!0k9y&?$iZslHdS$NTh(Sp12FV4C|}m(=xzc*Fi-6QYI)b?$%l!6E$2EJ@4n zhZxw*IuN{n6TgOipIT0J;jjB}i?g@QTSo1A!C*dnTZF~E06o9SdwIz)K0nX^tk28} z_YZ4bS}`+jdwVXQ7WVH;96-dkcb5HYb(5A)2g0dsM8FuNBbhR4&>kWe?V-jIXNG$U zJTW+;IR~ezu-5$pXl5Ukwv{)S^GtC-kV$OP#sRdopE!yGXz2b$vToXU z6EmOKvrWlpX!-$^6HKdZ%>-rz6p5@KlY~xB&z&ti9+(TZ>vdxVfY#X+b z;|ECHd6Q=w!3*IYRqF4k(%4v~<~#zk$s04wUDFcP^ZVcZ^-7YT<8QeQQ#^fU1(m1XiKq6 z6d(L{zW_y;y=Mdb37F%aWrz38VZ`m@4hirAbVL|KPAfhkQ3q#OanKkySdT0@Zt^x8unpe=T?ybwgiuN0G z@>a@@*-va`MN10pK3y`NfV91Yo(^B|)^#*!6HC&;?ufZmOrVnohWI>-;OH=3(1Mgv zKe6EaEE<)X7wE`rwqF@;bwiB7syn7s@j*w?-VZYNl$Oo4Y;_R4}Iv}jA{y}nlP8!!{ zbw$=iuOp7AZ7lc`%EjJIi2Pkgl-`IW-W(h)n??Tp17c93Fi~>jEm_2~HfKQ`b}a3U z$c5m&O6)%B^V-rNZ-K@b-in=z*yxve(-tx!Xr8cgxVqSOhec$K(w=?~H4Af;1JBk} z*}H4=>aCyZ0amuE&(!-WurN3Ve#<`U359r*Jv*&waSo^SrnQlVy#dW)__K;+h6ELR zp>Xx{`?5rEybffqhX-SWW3d!#v>aSCY{rr-sKhd>Ex292;Cc1OK)iyid)PA!Qx1vOLn5@Ry zWq9QLc>VhvcIs@QvQO8lKBpZuENMePl6*ek0+F6`c!6XhZkdgK*f+~#zN_08#S7W| z)$fD9nIQPy2VTArG?C^Z#~Q(cW9mAraZ^9CT9D278N(15=cZxa2bEzLVT&`$x0SV_ z9C-|Nj94)W#=P%2e_6`)LQ-8*yi_zJYga5mCu{hnCAj^0x zdgnrFG87W7Wg_m+dA8=q#^`X`>|x)oVvPs4N#9eH`Z7F$JubzL8TdV8w(U4-cpQC* zCz_^<+fmL6c<2n?F_sKO5H@YxZeEdc5~PP#uvx@5>E&`_cF@~G`g{7*hTVcuZQM!Y z+PdmcT*lY^-^2BU}h|90s?)j0%l% zkHNTRlPE!(?-Gq`F9sV&5+j>T=8%DLZQQV^WYwjtn8SV$tYS3Hm=ml9Va;h+woUm& zGM={vD>l$2V|EX#cWm<)ns{avKH(Isn_@vR?i7|i2haZab z3bSed>nDmGJ`jWCP_uGAyO?^+3M+ie3M7=g(%CK_;d#mJiZ2E3|0OMgEt8K(3+>|m zb8i)gNr-43CO?pbNE|elO4Ei^4QJ>+zFAtE4?5@cG1J8;_UZAsO3TM)v7VPd`wUJX z#{q(mK*S2Y6Pp)J^0I`QXg1yYdGVyG4JF2CW|~Bw8cQ3mQ_A(1{fWz7rAs=0*D1hj zWG!%ty`t;dJJD0MLXNxagAvN|#&ebm*sV)LW=BBaLRz6@?tS2J&SgCEXLR@FaE>)b z*yV;xIxN}ZYg-8@{fx0_RAt=Vo7WphE{9%QS7HCx7se{X$P zQZ$7wcIB`irY-OlM*@KC(G`=xJOTlDN}J`b+-CEZKsh#Mgw3Mqc6kSdr4$~@E|-=+ zA?HW!lIV=>?&#K()A4ZHCF)&(xkEf&ca|xS&k<0KbdZOT`1==bGDj`>!9c3m&%fptb5oY(rjRMrYqNP5x0;^#WLmyuMbbi zV%=vRRrwi*DU-v}S@yj8iJr~zaAfpiE$Om5ka&~!KOOI{)Gkz#m&uZM0Y7JwAAdD%dpnzp(!cO?Uc&T@h@?HQ@|W!w!iDgJ%DIaxMIo)M z4|7m#AMy^dgBb!d8?~?xDHd;Qa9FcTuadaf+woTrsYv+s(?`XeLxy6WZmH1r4?!{{ zvg|y(Y}jl7T1^Wpm5`HM@7IzZBq3_4c!iH^IUd`tLzcxt@3P9pxZPjK8l%QCLpfNN z_VaxSUY6aFu)6L**;!UHYpzH^w24jHNr9ehx=i7vtGE93 zsB~!J>I(hI?k7leiH9*Mc-Q+fWZe=Yyljaw(Z34mAqy5UOJWTchYLF9rP+a_m1Ix( z$cQr}`8&{p6&uZ#hthE&fqcUHDAokScmo?iFo1aEk{wk)-lwE#$^i1DmV7@qBt^&r z`2zb$4&rh2Wm2aT)^GA^7Hzb?n`bPvIwF8RDLwNL7yLxKe1(E^&my93Z?n=&Q!vtS ziNdprjoR>eCdC#d-LXSbI1BJ3HHX#0@W>H(BY3DoGpyI`lZxhmG;oST+j3t%r{l-H zoZi7k!xewd$lLCS%_>sV{=NXNh)E48ADkU7Gj_ zwjDaDQqMrPEFzSUEM#)<^@C>HIa%MsiGr-rc23X0oDZQS4*@pPu$Un=W}PtS+bXoO zX5~f>IPU-fD02+C`)g=@qzL4y6du$~#&Af7z^Y!+#Y`Ko%Hf7$XgvgU2mXtrf;TFP zRW^{N093U&Wb7;iKB2>2ZFe(k@n6E!>*IY9URbjSHQB$u7e)?|G~jBpq9u7T8QT(f zlz}If+)$uG+%q{#qiM6PTR5F*2`5WoPVtoHBp!$n6l2|&Ead|iBvV*6;KFEawh@$4 z)g4L02wllu+xJyyWmUmw*c7G%LEQ_LEF$B`5x;C$J)c1(W%&>Wi>eSOI^0U~<7!mh003EFc)(|ucn*0ojo7DpS+ zWiPDzv+Km0TM$Nb1OyR*QGk=6#Gz^SWnBiZ1dw^K5d^@ih$m4K4! z6brdRas(vi9jI@1c3`Jr4k$1wqh}g7Z_AJZiHzS9RX))&|Hx8^(q+fxw^9bsi8q9- zEg*!+S2JYq%eS~r;x!QD0ifOPpKLSb-xA;1NqDG{ z-%>XrVIbJF-_mBVD8}$<`F@`a^Q$AvoF2N$7$q9uDzEyd|m44NEqDN?l#bBb3<$xf^+xVFhT6Gq29iFf^ zs}7qFW7^_mbr_1u`9jNMI9H%_lO+!*(QWo{SJe?@HJcA%CCa#}-f23k(92v;_jk6Ok?EYAX~|fba=53k7h4UCC!NJF(TkE2k~3xZ zJ8C2dCOb!X>t**>lAdaS+}_EOm^5YQOLyVwjR;Mb;Y!%792)*>oD}B)m?PFUozhX9 zFkuK9vNABhL9=Ghm|#O~kq}Xif2vjoDo7uwl8CiBohv(KnW3{VBhT6Mqm!g^B8%iZoN>&h-Y*JSHS9_(@8&dPD&UOnYaB~g_3yh?W>ZDR2 zU7MmbKhjQ1B!O0Ejq*e~X@7F+Y=uWh4hZP`)?7r=%`u~I{YFVX?WFkvk$7XdCBg{d z(&wAvFwG)_t+6%A%!g6NZlYv@3(5&e8`m ziPY;}6pNw^?HiMmJEZK2cobcE=ydqLZBd%!#2(oVG!-s2@ z2lBEap|qeRAElgRIdWX5JqrAt<1?qTV7~MOls>2P;7w)trGWH)=uWgb?N9lBs9;)! zsU-x%bUp{Wp?t;JBOeEdPR*Q0p*iPhI=4GmhaIeW#4khyXZ9r7k<2ob&F4TWo4#Uf@+xrqm)QvdX7H;W0E`PfP#liVujx6Zj7 zv&q#}hR6q)LOX_6G<*1XmXn2uWN+X~U!n)Ots;}RD*fCsBh~kCuE1&PkqX6LDT5(7 z>8RG@mpM{Chfm~WnTRW1_S}kSl+JBmFe)Kq?OV2c->QUMA_QWtc2uK>sJ=trMl|4{ z%yzH0NQ@|PI|M=_AT-Sy+E$zw~XTtU;2ph zTJX~RS^AgzK58%?!503rjWnT_xR9V{u4`mCZ1?Ko;h%uIw=ufrq7&B*X4z7*aZ z#cS$DPQI?)03VkauwlQ%UEb%R_`v?a2Mo1H3F zm`M+0iw%(yM`D204Sd;CBrBdbot(15!zI@pFLl-=Unw%C*1Wf8L^j^M&B4(v8D~DO zsS&y3)5-*6NxjH)G}>n5vzn$OPO+?R*~_F*DG5ZFl_P}A3ijP2K(n84q=Hj`t)~6X zF)_Q|-ctv#-!1mvaDM?!%@ zT+5z19JR`vSto_KDF<-=M`JdvcNV(C0qo~n+lotxVZlFl4l>~(r@izJDRDT z8K7#FSgoAkBofaVb=z4XkABA8h3PH?=LzR*oN{O)OkFt}Z0#On7$`D)sW6dd4onq!?V%cM| zjXrRmU)t4to>-1dDq5n%1lJkuaaGnmny^PQq?q+op*R6}hYL>F2IX`HHW38-sl5l; zHMuqWnQoUo(o|2FM3?gf6~&oO(NL)}6`(`Y#Q*F61{Rd$A%EBzPRbRMWVM#{goO{G{pyi1En8$`>0!LA8(ZD%KjGX#-LNM&b2@S zbQkQYsvF0E>-BJfZal51JH$64sv*V(D!c0$6cZzO+7D*P_L|D*%~}SbHK*{p(pMWQ z+U|DMZ2)%kha!kIf@+GVcG+dxt<@u9J542?XFZflsa946s3(OD@ZkbZbv?kaDTT_OHH~xATPu$W{d)-o&%&DDjGdqR454f-m2C# zA&|s3Y#Qs!W`eZi2>NcMHD7VCv)fWkXBZz0IZJt(A2ks?b^nUf5+v?UjJ~u@DRS5& zF-?;o%Wpa}RdZBfEg}ZmEV#0@NSP4X zB14A#E6})#lBer=HFl=MI@rUX)s<-8a$u9f(`8FcYpbp$tAS9m>^@j(cc>ei^5cCO zD$R?EM(tx;QJR;;E6JFwF7WeCqtPkJd5B#T?N;GVDnUSqtW67D0jTT`slSd2XL7KN z>AD%6o+Pp)+t=zsT28poFSIQ%WZrV-O zK4KSVg1(xaj-y@hJl^)j2?us+Y@vdIpoD{ymVm!a83*CGm0XHsff{d8D-)HH`Q$1L zsPPhO+$eVVR9oxvNYnJB*VI2`DA8G1aS}o#Ut7ys zpHf{_U+E{PY70d9A#v1irO(e43JjGMD)5i-ST16-%0ng3hx4h68N`5zehcDbql9VA zEcmo&kBJAPUgqqq-b~fKZNP`yU+5hQ&62bcPm$>)h|AZ+idy=3_Q9<&7+24ueY%7% zhYn3brih@d$U{lf@!1}pK9lr^lS8anW-$pRZ(Cd!`a_ZIeTF7^a`MGR@*(i(_hk94 z&6UH&r%_>MYJQtfuM)&ZNLLjfDAPXrAT2BVd^OZx6=!}6Ql%82342~O+FDVn7fm3f zKDo^Jjo5VndNn=p4i#43%F89@O|^0;<`bf8PARsYuG5L*NG+OBr;F;NZT#3@Pa7ju zW-ix0xSfw&K=ghhA-_j$?6Oy`A2XX|WTk`jZnI6gA4P(U#q8ieyy3?xR542LD}BV_ z!@t@Bd{Zux1H+>{?UX3<9xc{cJblaVOmR*xO8%^L)AkPQ5dIO0=I~* zJ_LI2;k8>e%J5hyegKLGRVm&g9TTI1wqb8;kaU?*6^c+T_=h{r0DODXsid1SW@Ig6 zRC7+E-4&KH4zoVPJw8wMQ%C4`Th0joK3%1+0zqanrJ~8r;X0$~c-M*ymG55@!voQ= zX_wyGvp8F8HF@ipczyOlwR(DCr<*Hiw9a1Cp(XtU$`Nf<2ah;a+$1x zAFM>}2f734eYguBZa~obwgZs*xNJe-3q}dqyRuH!zf;XvYIfdlwF3@hs7jt+q#*U- zcg*6M7X|fHu&i_OT0lY?5KsKR~!_pG-W6$f{*xHCH%%_pOA<=);ZRt ziiYrUGp2vp@rpB6cI@3HV$gT-avK6UhsJdp88~kb$gnS(c^Ea}xWm!A&#B%~-Csd@ zl5eyldP;7CM6`&R{oN1;h$0)vuhnac&zm7iqDNoLIp(4hNc#{nFt6~cX1n1=ie05Aq7|tp|AK>c|6Qt_iLOOQ&J*;3N_51^h!i1y zqkQCuCK;koTQo}QQJ~9MWt@Chp}ZlI{xVfuZn~kVf@tXt)co`!#4Fm27h`%O{P(Pg zgF7b5xm!&oyrVm)QJl~Q#6G|keSY|b;_H#!$Zoj|D+dCYm^eswVgm#s4wCJ37E!r+ zq{ah5W!dG*IwHe?Vd#W?Qn6D$#Z0gU$>Z#b6gYvnWpa(G{!W=iz-`}!-QWqmsU5_c{rOBJ&F=w#SzG;A*4V$ zE@P72mTR+PvX}dUw%{U{vnH3iPQmINq9EyGIU$M$-|-h>^?r;B?PSQJ&z6b2X4$u5_hfm+=+V2`-fz$uU=zPcHSK zOctZ6SSUe#u+h1ky)&FruL=ed!lPFbv&gB%tohn0j~yx-&R+NGTBlP#PUaO%K?T)V z1-$c$;OXUP4Vxi}aQP5@Y5S6B!l@yQ(OaobKq+9Xn((`;EJUGnO(^VYhewJi+#7}Q zS{|!?EaON>alVisq!(PSaq#gLAB|QA-(uG$lSha;-Z+;9?e{N=mXSk&qFT_pEcLI% zF=v2uEsJ#Uf~1@Cq?ZA4j#Cc7m7@wH>l}-}Qehpn^6XA?wexfb32(5{9;Xv;#9W$x z0aqO+?EZn7BgdR@CCtFqz zDfji1k#LNihw5&IEcmpmKwACV2R)Kq>6J_Gx8&M=aQI)6>_thaMJlo9OISfIMKM^H z3(A|*=^3JSP6gBD=~y=3c)&@hJ$h%&enQHyVx?hs_c?mBWo5fcZyoU#XV8jy7iYh^ zD>OtRl4!0z_0d=HSEz&#ybfn`f(zpo-BI1oPXxdG#I?>D>29Xsj6^BroQXS?M=BMc zsaCS2$g4Z46Wac*UyNu+Doc4;vZyh`{`bF3&)K~$OX)$qs@-tGkuTNSUrzRghX2g6~6YU%&zEEj3j!z~~oB#qTH)x8IGe4{h0 zRWaU~)P>T@8sBtN)GQ+d--4(hU(p+iP1k`>$N$nS6Oz%*2C5TDvYBEBjH^nVP0ZL$ zOx2S2oiIhL-C1<14pLh{+$(B5OeL*pZA7IF;&Iuzlq?pKxx5^7!@GczAa|4ydO829 zt8KiBcdQ})pU;oDk>Fcr zksYH(%-#^2_G38>m?sF^jk|?~x=N}}$@R5%M@ed4VL|n%ZMlqhTw1EHIwhg+IF+i@ z?EGdT7=#DRL)7s9U-^ojyxlJ znRwc2qrWWez>dovohk%6k&61pvP;W0166t)0Jel#&p0`e$Tr4lkAeqT^@qcKWST3t zDRT5G9BEe3qYq<5xGAJ`_8h-aG2u*6Otg`!zlVqV^4~<=r?PCCn!n`jhu|oPWahme zthilkk7Nhx3=fSIn+eli^B%WBoa-OR3eY_jcE5dzTqNVBvm(11US?0CH(!M@{RPEj zal~_UMpSX&rguG@3!UC6Qh6U`+URO08=tlUda4~!4n&@zcFL|)r#uC483)}u(8foL zn+FhlROYs5IvoW^gVctk1cTysR3rM1eXF@QTLVPxNJ&QT9_vPp;>aZ9e!A+YmUCQ@ zbj2$W-9Xfhh74j=|5~ons(^pTI4y5mv=36bva$(^lgCCo$*VxbQ7BWV>c1#Ab)4?; z#d#0l%jW9oJOU)gynbR?83{dTz8htKl`qkwPw-mA-Erpv!>F8D}ounbG>NF%J zSP*d>`v9uhL%&>9{j}k;qCL8k*U92RdXH`=rMhrWf1*ZKPf^~-=%Yg1sh9`>*E71fT{r5^1*XMvIOS&H3!3mD3Gh&09CX^&h9N!iZKEN|@2#Pb7jg z8+nYH&0yxu$9aRAr*;Q`Mze3)E7OT>z9*(fh4Z1{w^ev$iYt$59|H@E>T=qItffSp z9gsxa7UrPC>1_cjkfTl6*?cD2oir!rk9K#+b2XZ-LezZPYtr<$yI^PZ8KrCL<_Nb{R87qrb(DJ#%(?KLFZ$vjnm39_Vl#Tw zU`LUj^1g5!w;9>o{KDKI`iAmK{HiUkwZIbO6YbnO;{K2uuMX#_K_#oKuEl!W2r)8x z2#S=OQ$^YgLD!>2_;l_VwB6K(Fj!Q-PV!B#$2Q{!?wzh#)B1-{&M*&)_7u~d;YQRJ zwsi>$YWzRlJZ<#j_X2`~%LLTlcZTlLqy5Ow6*#x2$%V*5nZjRX`{*Q8^Ke#y;VD!= z52uvBo)!W?*vE(WwCOxaAgHh`yu~lXX!u4S_ut*0UDw8hNvy@;glX!jLqm5nyl8K% zr3#f!iB}8xrK6TFuk>)x>&($-QJsZ`8_I}Xs1dR&T*b%Sv|~7RdUUrEAX!V&wmVSJ zLUCps=Z>3Ha5bG{fU_~ZFtXKRGcGBE?q#hu3C#v9tu>_?RYzam_r?iJQ|%|3clfVb z3!+GaxFyAq93E4ZteJ291Y7>_h;Man^Z~MOfU((Um;u+}e(gAIqu)4ZHo~C_oV%$7 zzfpS8v@p5!&T~2(5cBm^I+XnmHIN=Hh!3(lVqV6f+Xr_YXF6$=>4uP(c-4s1ywi(O zVt)ic`|RFA>PR08sbq8YAgdl;TIG9XQs~N3C**tmn1yJ1SI!7FE?iqYWK;eA=&0u*Z!3%UpE`(!}NFI zP+T8K6qmGd#oLfaL|wCLjr8n=IJuPKL}`jkyRcD)5@_ z)}u%tR5S(s5cUceZZ@MdlHz_F#P#|!reb4LoO6Z*AxlzrC9-F4>>0!HT~Br(N=u{> z^5#0I@`|8wRB?o@XZ-btxB~L!K)?s8$GsCW*QvqV=oS-r+dOtQHMamr*)HY1q0?^q z1Npuo3a~?Cx&40t&ogrWZ(W;JP6 zwa~-Ma4qrhu9x8yLuJV)k5zwx0wzPPP=GUtY@rlxOykidu!~;0~v~DLEnGMbUV!# z$lKz{BPq?k>}TuCjMVHKZR#KKifgV&W62MsEPI5NaV%eaAt`Mu8!wRPc>l7~1Y7ct z_qg1;L}~vGd09ui`8VYC`>0iDWY722!Tkqiozym! zoF*r`m8jPDIqTJuu&AeNQaTql03md@EjpKK5QEme9b8Ze-VxfkRM0pVl}B4ybBf)J zRLFZC+>ob4)nAZjjq(+y^$!qAo7$K!kfn+Sd%%_SL`pM#`IjyKrJE`pRF5ar1f$Av zNB)C41Z4T`yF z$(7HgMUH*`a5${!3H&iq8Lmj(CeEqtbnv1C=zy)tDREZAhgj&?Z*e&lsogKL~aS_uoT*3f*|DSIuAasy>(DXQv&s* z8xpct=tig}!(^+aU9ZCa`%tx@R0?9KCR+DEPf7j%w9cxeVdCA{>sGq+RDpO>p`f0) zhAJG=n1?2R95s%gQf9Ig&T3yG72xuA1myb< zS$p!s24uyRHB=KT<0!`T(sPdU4Z-9ee!^X8H$`U`t@>`IO*nEvxxAUQR9BS`_nl%3 z)w;KrQ&SMm+%xe5`Tn&OG!mN0l;AkFE>?epvQ<`Ptj>BvR+yDKS63u7Yc4Aa>Qw+) zd<>+L(;rMq+lZn-ja^FQy)tBkByrMo`{*HyTnbI~hxyG~Eu3!FcT^X=q_ZX^tW944 z(c}uO{({QNa5G-ACY7m+diOw@mCdFO;`s$-zah_42Zg^O4+_!xeUk@ON$mLF8`7hj zb&6hdDpuKZ&X+q}o$)r%B5C9PMYd|Ii+>7ZyTw$>0=LP@MgTHDLG$Bi>L#5_g6fSD;9_2cK;$8yRa|sGP@H|Gf5E4$BF9?rD5PvMz%^|5|i z#aH-BBD-}ev1wUPWrGDn%EbfG8@}fS&Q6ngQLzb z$yBx}FmzAe18H%|=W>N+Ra5hq@uBkj5w+F3+7C$ZIITV6i?ig_ZxCQ^)Iyc3z`|0 z>Lx8Qi-3H;%+v}Tkh7X}dh#rH4A*Vg^dX+^ zT&x@U<_p4-lP+#RtI@|<2uD{WMd|E_?s|7;x!5&m-w~UpG^!@m47cxtoDzpAwUB?o zfsaDk`nkK?7lIzZx2|NulhN{uJDHq=bWUo!mAw(y|J|qbKFjatR#{xG$3`GT(r20kpALU?{vJE~7UF8SCoqn^zGGCkNx<9@@Tah*Z|$ zBmRt?adpOVC-?RI;w+}k<{G-X;DL{NNB0gc(v$jc_8XU zpz8=dizDsMZNIcwaJ^QGIK#l8>Q2ZH}nsY#Y# z&TwhokQm-v|AqwDKhNumY0gZ1;o&_HVo7K#p0VDunjP?mo_*9K(bhLnSAkU&ICM_ZwpTm<>0? zc7>7@bG^+Dm0hRD3~_Wt_lyPPp0;1`z6#$!?S27|VR9hHFd_3%`Ojf@+$*~+6IHRM z$5t8HwOGe8IpfDNxglYhjH3XC-ElANwoH_7`SOD^Z5t-pf3~8r^Q zF-r9uN>o%@K|ajy9^TCFh6M9F&%^vq2GcRO%>2$Q9_Dvu`Y^u-63maZGYbd-lpWdg z&Dz)lm2}_CkHqBp0vU0U3FC9W3yIKiDcjediNmtad!nSxGlR=5(P9XK?QTDSX%`kL z;?R#SwAO_&E}_(w@d}>2LL59H`0t!VFuGJaUM2y0Jn;zt2*jW$YoU^kGP{_EIVJFMAkz~0* zmbOzHgIZ%ZbR)FxCUOBXh3!c?qe@#trCT;l4Geyx9m7~3nT^t_RpYwE*qCpiEj z$M%u0s7OCP^7Gf*MXqA!*=`rPO0XYq-8={DmXW&kyFT8#n=->i{!Xb#NnK{z*KNH0 z{iC~jOL;NpXgnYV+?O=a1v|-i7ro@^EI7tJ{!%Dzz5aq6Qt0k3bsg_I=2fqqfg4h8q`=#Hda^M`Jr@j3Vk+ zHy*({!fdaQ@#b1lo1paST3N>}5_N0#cm2%F~;zw5qx{qCI0Zm2lF40VPFG!+1eGEg~H# zQs;N2cBi-vo^IOq4-xRy&1$Vgq3Q#fab-y=_9p)mBd5o7A0{}ti$d^?%=U2TT;)dMFLfz&5jemgLPYtIazr1<$cl?EY zsk<-sY|k(`k()7uRIe*K5%3D?8p?>yeBBqZ6pCudvLYps6ucOd!{LJ9`xl2u$7ve( zlW5_q`7-+{!}rDf{gYEfUGVLxPCIkUS?+?kZ%tM+!VQ^bd-r%*c{*cKDegNGntm0Rj>T=u_a_Bc_XGEUMAV>)CHRK2K zEeOU_ReJ$FQoyo9*$lh*fvJo)xCz_~C0eo{VtoL;$F-a{J^zN>5B=*;Np1oCP(4vg zjG*URKvsDn`VvBeMA@@_~3_NeH<`ECklxnvZ7cpQtmAF`s>wYMazsJeNWM6*{1Ug#&fie%` zE`;-mXG704UXUD9eKzNY+#7gr)^Et`mPSm3CGziIC90=5gMo${a!^&H8s(oL_fyMB zBDJ|St0B5mtexltY+FIb;tMG@iEjqu`@gGth$a!bBtHNSegGT})wLOyi&=H67;WHP zG|CC`kB}8=sDC#IN-$p?CMByGfihG~zg*LYq4VWpIG1R)L zjoaNJlFLx|I_oMBR`~`|mm`j=pebEhy0TIz8pYXLcAU^72+lXaSRj9?m1r|IBZx3O zt!X`>rW|KdT_G3DXRg;+?Y07Tk_Id0jQeP&*k%8-CtCtbZ3`Ul*QKoA{Mot+@;|qP zPAb|m!B_C4!IKGoRsPK)xH&PU-#>;9Y;$DbO28!fuP8NnPW6!~<2TfCp8BgJN;)7l* z-s5kjl76s8efX0tEXXV;{AH-m57M)6ZlbTLIOA5I+`;$6zuXDzkBSs7sQ+W{yUbIc zF_+;=#AGWod!L0vQ{omN^(fZxy4uaWz`fc|z0^1CY$wyR z8H+@!!FV5@1U}>VGMlzn%I9|;ODg0c9+EJCsG~RGF?&X}?sq=EyJK$s8`w07CzbNRK~9-M&x^6LZS zCACaUZThoStC}bvBXP<8Io6E!bu!=0Mf|d{Z=O86AQ6j(WmJb4htY-f*`=dUhE@~A z16N1z`z6BQlC|Wm!qwNuZXLddH^f<0(yG}4IX~TzJLIKds-jPz?42E^9xS>arbyB4vt00_#~Bl5fB<{ToPg!^N&~5{h}y! zOJ=yEUIYiKju0+P^Bj4{;=)iR7+>8RD4LvYCY$qeH94(+@!V)J{TO@^|5WK4eh^VuvM#B~Tstg>DXnA!Qa`W;il1tZ=>cRRG)x%5gcLY|!daC%t`t z#N%_LKOtl*zJ#Dt9jf-6C6-I|w)=hOl3ghhXAD)0s(63dH0d(XS*n5>Jzg@p3H3ne zN_%b`-7TZFsSv0^O)N}Ri)T*4EMT06=`69_WkFkmA@CVXnja`0a#VmD=I`Bgef^f% z-*-DDK$`w3f-@EM%$9x*_j*gR^>7dz=FeLU zb+nvugo$d-JLlEws&H?L&b@C%`Dpe2vx5a^H+x@1P@k{w;KtA4RINa}037WGg`d)< z(X(@z()#WE1UX8ub7(>B)Ngm@I9Nx9^xgmT^6(jQH^qhQG{Zx8PYqZ|J>^Gq7dNcA zXFKn9o3R$#;T&_&QjQwNQY|r{NW1QyKZY7~8)ck-(zSID&9=UB_0hzacDPhu+s=(y z9QA87a%wa?C#&FQ5OsrS^p8Jef7c)u@oVsp&ckjb%LG`P&Al8BR4N&eKp+(8`JZ_9 zsUWYBA!*9B-YBz#$JYl!N7N7=|g1rRRJeB{b#@39d2s^RDB+Gf1M#nUJ0>G8SD+z(zbO_Q8M6#p+m$#-hVEt zhRCak(1_kxI&<_d6HmsPmeIm9&eX`Rk86VgslIo(^E2;|>Tq*udthcJxIri;kLF+KZNSz{<`2^1noL zZ~Q>PvOC@}rz5R{x^;_C;yl?-j8LfBiMr` z?`po#oP2s|_1TYgD)iGR^z|Fdf`sRF%NKS%^xH{d52<A&&sg>`EihvIDRF6?{iu}IvI5W1ueIc-S=Zz47O7;3tm4(X?;VaYC z($Sra{XbA21ZFi$Hz$Crxux3|?nlMd$z0viU7z_22=rA@+{xa_Ro&Ut-14jTe@jbx zxl60NfAN3FSlRwp$`=9XtDK|zmqj!5WbTBN7jE_{Ffv|#{3^$WdBQ;8yT~_ zjfESTKEi)wt05SYeOUl}DPsM9s{Y5{f2;maO>t9qQ+p@t|83%b)GJ!Ln_7J3kg@(Z z;s5&P`TrYW{y)kQn3Yu&$ykMi{zoM1f9}qIT?tid5tt<`J#5S^#T9ks5qSTj-0*)aaQt6a|79fozlbCRW_5s>`+pimM^ORc ze_hO1%ludM|K=;P@^G+o2?_lllu}j4N<*n$I^#n?_wI6=m5-?Aona-LW$WIZKdRH6 z($-#2?TKhXsWBQlNmiP!rmiM8HTT;2GLM25`%$L(cynanvv2~dQjXs{AA^G^8V;HhsW&ai8+o7ixTIgsb$ z$u}2S_9NnTOIRti`||;m-2A+EHJ-p6fT*ztJYqTOHvL5UR7WW4cfz}wf|C{Fxb6NN zoLF!&$bb7;*iDWm@d0BV7&Ia*GVjza)ctu9xIPq^)wqj_GxqLt_`XCM7+8Du1dI0O zC-nIy`stl1kM`S!APfyn^y8#!w;;XIcyF)Z8Hc{ z-c|Q!!q&$r$X_M>0{st^;P#J!Ys4h>s?(S-XU#J zI3FUuuOXn|nR&b0=mrR^URXU0e97T@vuB*E3G{uKGHzN(koqW!d%aEQCjCr3knCta zy9#t&`jz!(H(>s;GSD3J?NKU_>(nX#v-7kT=9HAUhmz!zE#&=nN?7oqV6F)AiurOT zw5Qt*liA}-xjDR+;WIEaFz`O&D0k?Lg}-n5qPu>t1ITo;S84cx+j%xr%bK6D&O7v$(5?T>X785$`Elj=bYDv9_7I_*R(&N* z&U4df8VEQQZa>M>KJb0V4Eb0v?4EqL2EIpAj(FXC`fPP0)&vF`FAP|I&?MG~#+oX$ zM^XK;AW?WWvp*zfLqbgc*4X;yJLUBf?fpX8aQd4K$%?Cb5DX0j0-0Q%1^O9{e?ADK z9)6mPlX7p7rg#T|4b~wqQAN(Pb$~jHz%Zpcx)~;xLS2j#W)Da#`-I0;d;;V?RMQd0 zkZwWj!@|f7s8W_$QwgLgmMnV%Dtxah#FwUgwR zr={Jhog+_SsVIjU*>3wT1#5(Qu&H;CZf(0$KG$`a}Au9iheoM0F zXox|&B|abWwH)}?gbEQH20YCQ8y9UgKkozkqSeX&2AZ?4}t$vE?0KAOR7^ zPG3bx_{wSusPy}WaYnzM{d2s-LJ!tGE#TofIHYCLxz?OPC1F0&_7*HZk_QPd}7H!Pexuwstk= zaUnkNA{(PzHe|^}+(X_k9C8(M5*#6m4X0XMM_{fxee12Iy$k z_nAqfK^;lxT{S~?al-~7XKC)8H><-Q((3B8#L?GJw7BP!{Zc!IbKAo(MyCEB5M)Fw;ZGMBt|&l%}AEBMowALG*A24N?7Ws)^>O*sYRHie?J_^ zEuX+=09NM0?#w~9CRZmhOYXK~iZFAAa)@Wc~!*Dmei_JAL&E>;rzYJR`reTDMbBp5%BkYm0lZ zgq?`5Vt}KcRL#H}vf$VQ*x;OLoSrW)7AZz0H8pDG$*N*4S_A23N=;Sah#Qgx1v70qUo7GIsZH=p|TQD-}Z3R9smigLnaB>}%>vY~esxyxSq<5>M1(Ky7mCr=NKTOoSWvT7Y6tj1oFmx8_Oze7u=9g&ir7QVIk^0 z{Bjc5!bn(xtWGcVs1j!%$BXD`o!)WlRlP_GCD^YKYnr${bwB>t939Q`X40@OxA(~~ z`O_zq`IM>J4>1&C*ZyHwu!NCtHc>C6R6%}>vCHd%xnVMiie>rjN7PxpvAoelHLBRk z_@vTx1m#Api#NQ;DVO&r?&R;4NYF^8h&+!MtnrbLdItK1`FWXWXTbU7Zzydv5`o#w z1TbzYPFI^|fA!xY45v@tf6{He3aN#?JVmGqVF~thvK^2++CXCitfvL+w%5k ze0fXMp_*o^Wy5HN(r(CaZB%OycS2G+F-`knYm0Fi$qA4>>gEI(tNKlMI}z^$8%`pE zZXRo~g0Qvm=mz1X)uJn3Cr)9KE@}HHNhJPzp8wO82&mi5`48ct+07V{MIEvMqm4nH z5wvq516rK>n~f}9o4=K{1A2O2c4$tmOrRX{LhaAo1sB$!mZB)1(mlZdN^b4KzY0lIlYJc1Hy8nf!t_Qx^Avt|Ii_YMNnxtLkKrW zY9lF;->w*7AF|f&==UD*Q^N3w_?-uY+^!*pfRf7%H~G;(LyU{kHA!y;ioDDFvdyY8 zRYYj=kW!gY{idQP?zoU@mM&tNua&NSEb9F%Y=@MwZkSTP=lfm3&vr%V2r%VrpoEb| z=8?8|z(zR%o*}l8#H1A~O{ogcHY~iM;q7L=q1^7rrXyHmB_8@rqmov`NitVE>r0A_ z!Y&(`92K@%e`X^ElaY|$1kCF&A;j;rY*uraSIeRJ8`a+6XR(csL5%gc7^FYzKo8l~ zYs0TP-)=f&D++0HSpo7oS-n3y5dR_wNb|t|@K;8%U2kSyZ32_Ot57EWUe3AFyXQSB zozK=E!-P?(#jSg-F@}|#jBYDsX9ehUHMyP_Bb%OuPJO?3Jzt+KX70I-;-#E}xa&1g zDkAod^UghqZ^D`qv=&A4!9JS}5kTJak;)vM{#X0~+iPWSi=Bv?eU(jofXBfTYs|Q;|!ZcQx4OL4-cYOR}s`86weagUn1^ zc7lIE1O&~Ni$Po1Jod7>*8TxS;X(!YsImv_I1sheS3#}Z!Ca~WIxydDR7#Df*iNfT zTv=27OZX=thFEu%RlR`HYW*lCWM+!w(MT%tm)LBp1`pHjF&LEZN)hzQB<2qS1rOY6 zDq;bEGH_Q5o|LmjOw4zE=g#=WS$*(uJS(OLir9?nZt*FWjzF2Vwrj9}tgcH;ny&M@o}`7FK$RtXU}m5L{WBxchqcsZ8FJ%3ifP^tAj(W+%XzsR_5p# zBJ?4z?gL63KbKIRmxyf#mFcKU;H7e7JSVP!;Wy)oibBhAlmmnZ(3VWAvzC=t3n@B&zTpy-GaGYh5|DBh?_;*MCW?U{2-@5LU(?-Mkb}v~_N>cCADC3TD!z;oF~S zNG{v;W?m*7Cf%nHz>O!ty0E}{;qI}LV`0rneM?Jt^de^W%@n#Dc6%!8g~@a3}qx9S1Upe9P{$0Pp&24T-5*PD;$9v+6;03#1e^jH)?P&()ABuw)oz^txJ%3P)Dx{sBqs(z_2Px2eosJ+dQ4ZLBA^Lxg5Gy zD$1>(<-3ekaH!$p$!jLJ+toOU|dgjTSll{hH{eYA)oUJ2_lC>6(ty3d|apiMr2{ga_ z(bI2LE~39Vymg=-`4t-NPIlgx)0d&7RveRTcc7@_8<>CAKU>9|$&g?tUOo=A*hN(v zcP671I^?seA8XA$3D+5E)xTxB`3`5wYSa4+xj}%b5R-~vZF`^ZK*_H%i?|o>2lx))Zap=4u68YmPw~Es~o=lwS)033N{5L)m(ZUF*}bVVG6S3 zd@Cwm62SKlGlD{=SZcS*7l0d@VbB~Rjo~T`wh@Bo#xa1-CdBhyvE*KYl3PT2NT$PO zqYTvFt_jP6-$w{xg`p`dX<`Dsg4gnLa!{3xdv!$=K=9VSWdt5R4qj?GFOpkkNrl~I z`R`$I>@W_U9rN!godhHi_5x&^`*CN5FtS;Y4Vc4eE2llaKbX5I7q?i15yID`IjrK4 z7{TPknKtra5w>A*DP=kdP+b)x+u1g{Lc^RH|L)$d?noTeq+)ZGTFoHj$1K03-xfNi zGP}-2d)?>pA=+CH`!p{bRk}Af8SQAHxtl&%5Z!+bqgHq?|70b|ZAM&G1F)_&-ow_l z^*X)uvhMoU<77L4&#g-C;b^OBm}QbC(Tw2JrYDRM(Fls$ZAw=#Tm(ldzne2@9&KV6 z&SHlc2l<1mCgTfwe0veZ`C&v(PgJrpYWd*`vtEh9TOdzev@}J2yKzWO8Deo`s^OC^Go%eVns)~Jva1VFK$Za@W2e-pMM-gbY#`Amxz2uxGoGS$m)pKn9#&2 zYHc1F9;W?BB@E%&*o8u_@H}q48&Oarr)xZ&jqJkvqf3^OT4rp43XFA<;N**oG$r^W ze|@^n*rrrYsUvs2`NYgMsH;WZd7Y;V=x)Y=Ke(aB9AY(7X9S5UrP@+Da{r+s5=_#+ zn7^2&Pyz5p=#+NN`k+|AOGec#Nt#=?3^XWab}|SwQ4kk4*&Fm3yvAUcl_D{!DJ`}i zV7*wHE1#%p55rI{`Bu=FC|0P9!d6l6wO+XEL2(D4RH+{iEV|x~!>Kb1M*=t8kiG|A z$ZXlu1Yp79W*-1Tl}Hn&$@B|MYKWffIg6q*& zX7#Q)QDzE;;W`u+1|vv9?KnF_q&`-RH8ybj;8W2L?M;#&e`jY%=xxH`Q%bc*C#+wZ z2xsK|D!dcr_di-%qNWevw4GE$`N4P~%(JVC=}Y%THvhCo&Af$mJF*L+*Na~Bd_zte zDu+;fl#MeCl_OP&!MTL*iNj$>P4L^qW8r65J`|&&^NU~J=X!8xHvPFZaw;0wXoNG- z1|5bx=F++_$~2f!79`9$PZiAxG4-7U0uQVN*Ytf@hZy`D?KDOQ#&Y&L3vV;Bnato6 zD9(RKCDG?+g@Ftm)6^4K$3jBItA(WjSrO_vjhaq7j$BEEdhQ5V6D>08bzQ(JF={&8 zRUxikC62&r^?P;iLjy~fm3Ou>8(^k~-lyrc+ z{xbnR6Yc;!A5qyoIEB@@Dxg9p47c(7^ZqwkWC40OOoGNAZ`^127Wdw3xysH9U^2LEJzXSMawWSRlJ+Yp z6~+n=e9Bs{wek*u#EkK+8lC= z4@tYNO1O-!Q?d!!zX5xx_dRt8g=~o&YsJm1I<14xO^@z*(=C(^Rl)w3NV2*(qbzi} zl(*53)umpjvM2BQmnm@TiKLowt04_@9R8Iy8+ZdTfAIsbQ@|Kg2EA=9=b z+oVr*m_mVd2z{9O(DfET?c9Kk-{>gLif*e*{;v`Y_GsDwH~l`CsK-V5l} z!LAuG(rwds>&Pu9>K=Ja{T14|(39kahx%ZvPDM>&PRFLeTX!fhF1<>zI>SAj>%&V{ zAAOc~7ZLqFgm&8d%$#lV#v6}pudvRmHB^-v475$bwl+iH`@_ZC|}a>l%MCx=9dGJZ!l>p zEX>HZHtjO0M#_PsN?gH3#i3Uc-(xG}7NO5qTaSlJOP&+6WLF6f zc4iZ!X0KS07%}-1Hee8!lNoE}QEa?sm3jrJZG9YBngwNHnr%c_Jspzw)sV}d-+)hA zJfA7@ey`?6Y)cDWmV=KRVI*m)#otPZhB_b0`WGhsT9M?t|3(nY%?u%aN zp?#S2V4pjdeRFf=V+#-|$&Uy;A+mNdU;#@AeY8v%5ql>Joako!ii7r+X zU~%t(Xm_fUJ~@935=@)>px@Q{5I{)uI4bWuazXUl>H>Qgl>^gxnOXXkH@GGy!aTJyBNJX?94XL|I((&Z$lF~v+Gv>$;KN1vfJ^CYMJ9quRI-YtavDxM5N ziPNT?56~;OQ4se1H3KO1MKQM(_}ZXfqS!$SKit`QDKB|VJ9&+L$_%;XD0`pz!%IuO z`J#Cyl-)F*S=Nuph+#5eCznp$@#-j?1WnDCdu`BC)&H_~P%vt3$wA}Pyc>eT7`iw+ z-Sk^>7U>2@S{Vr`$e9~qz01tW=qO9*n!CB=O!D>hd#}+jkipu#Qof?%pIPmbJkQv& zd0&*{HeVs2oGXo2=2{-_L`auiy74F#Q7>f!C1m7YdKyPjA+yO(0&F~wC!tYs^UrcbIaa|NW2o{F1%H@YY~8`4Fx#Ffj3z%f-zYu^z73&hPE2^&)+%bM>777W2A()_+&F*S7!s!BCT@TP*9| z>ybUwd(!DUWvs_xkxBED+>eG@*o+T$mQ$~}@a*sDLOHTsdiv=~%qq`$^)A)-v?265 zTDCF$be7rhx3P=S+ZKu;7ou?CQJ^NqNIOcqL=B zI&e0k;-v}AM6zJ2zocZ*J$1Si0eAb?J25|6k*d&(9kc-{&1Cok=>iYmcOniUT0YbP z&Q5s5s3)kH?Fl~wzPsEu)cj`gTrbi#rpeaU0IwpAA52YPudwgQ)Y3!)R;ok(#poN}c`*@s5{8~_LJB&*C z74E)zPtvF0gAq$&={uNOD^g2gGK~w#x2)qKOA)_hrm=_OU!B{62z<2mvr1eDXNKK%xmkk>J`)dw6C5!^Wr)a*(6 zy~EIKzJIe24i5Te@+EL=iWGndBN=`a7lQRSG#RxYSgPaXfGD?jOGLV@2}@S8#?*}6 zw6?jj9pTs#$%qFOKX(i@E z_39!I7&`rg@rFxN*2VNHLUAH=N|y6hZyr)FF%h>RR}RcGMpOPGQQKRtTk8-DRez}4xnS^r@(%!rUwlbo|a&{^K&JawNe=1 zkcjzVQ8#8qwlMoD?swUqR*Pc`Tw_8UU4T4h;OEce&2GK`mlnouv9DUftEhQi{Oq4)4!Yp&E zN$qx0|5nE3ITq#!4Jar8#)v1+;%o5g%Yj_61S}{>gOFZ=1&$M5*28zh%1e%=I>02m zTUQvD5|D4>u(lkS@olY+kbY+!%l0E=jfC0m$h7c7rT||znI?~6R=*u#gXfF3Nu(C^ z3)~y78_jXS6yx%K|I`F8OLH9+51bf`vYout%5xth5NM#^%YOzb&fvVTn)FNaJN{jP zztID_vH4u0op^Fmj%e;7pXYA#1Yo{{LeBe9#lMDNL*nv6#LV*EsSt#kv_)tGg11RI zB&fYLD$d&;dL$uUelt*_m^N-HVw-)i{Rhq0IS~KY_m0$mH#nqZ(1Zsm#wmNgm^TuV zPJ&-Xb%`Y4ZL#s%+6W1TU#f>+6@kzu?B%MAgy5#09cRwB4iYS=U3i??!M_O=0*;8s z0*mk1Bpgpi4D8V58O@j39tvD$X;8n_U}N!o9@sY5U)#i_vGJtaDn2v-B>65uJ8xqBqcOXix2g_T^a^ zZl6CrTza{dBgk;%hXjqQ1aAPNBzoHOwlLl?ebvHxT}WU#WOdrIdCr51ckVR72LMxt zpfLDTnk>Y)Lp(hM3MBdLdwb7QLs?QwI4mtPCu^~sXO{AOP`}7RtB6Ctd}OI(qBHDE z%(5<%YdOxuj!Tz;!5pqeh(R(|!HHW}BWw9J-oopKNE5qf&Gy825Y|0z)9nw<`;t)1 zx5fR&QPxhU@DwwRDYol{s2e0_n}XFqthy1K&TmiEf?-(X?A;}2V}Q@dZz5WzfXMsg`3iv=!<(E1GGIV=RN4$|ja4;% zdlbA~QhTk2#zK0RpH0rka6Zyqm*B1ZQGA6+fDbcg&}@4vi3a@gkUASmMn#;Jj+H89n40KhQm3+mM0ZeTv z_>1k$UdeJui%Y!-Tvss0BZMvy@mwdP#KmhHW>G#ydcG&_^Eu$@l}()J_m>l2ztz_O zacFe5!uD8~T7dIAZ9PcOjsxqmGU0#xlmY|yQGH!KRp^7HYq`rEIF`2ZPfbgvMZ#YJ z_S86$XAAR0YR&ZVG0fGlM3 z8Nw7K?+5|Et{)^N)BZrbJPybCd9bj;+2VR8d$rQs#q%{4s%Lg|(|GbWYA8nu6z5Bb z@00L*9OYO`0I|*N&XM@_+Dq(h3T&2l^_B8NTxV z15+Z84C)4_{|6&}_M#^H{*dyAU{bl7iF!;`{&0zmLcCl*F8^T48|HKv?g`;X!Ylkg z)-xKo^_n(&N))xc_<@nasngdo15<`vKJX*39HsKEA2*RtR-L>;D8&XiaJB|zY?5?6 zqz|xY1bOLpca)@p0LYvmpeI|>F%EM%W^2WpQ1Y!JJ-ivZ)<_r?Q~%%;cX~y6^g-SR zZl}1jaytlQ5$XRZ;OI&c@^j`u`8nuFzXl1L!^L@QVg&BFMYF@)F2yufLEzS^1a0^& zLo)Vrp)b&&zwR|Bxf{}LG1Z0hVf>cQ9$RWO6L`DgIO6w$o%PEoa*v@rm?p|RPhmZ2 zZQ3}r@!L9FoC%j%uhQp;BJrW*4UB5-bW9GCU2EGG(&8A$GJ&&Srn!Z->;6Iq&Z&J) zr4rB(VvDaTa7UiR4nCqzXZu^K*T1WcGmT&tzaNuU>Wu3;C)&YmiBUq8QQ+9AVjl1p zst{|N@rI@`oqgC1ZB6F^TZkgnQ>V&yEfMbV!|cO#xM<{@CgR>-!yASq<%u|A?x-2< z_OC!vO4)c&%Q#fD%nAN*{ja&*s)0;hMcScnPH%D-XWFC5&VBWUmo?n zO)Fp;HYw`NG_8`(q<|TtW@coNAiSBc{-qgSz&DfI!CV>GxD2l4SQEx{wWL1?2hnbm zinY?IKt7p$`E+dFWWzk4oGqOx5q`X*JFj_%p08%t(O@n#w0XC&T4cBa zc+uZ_`bESu#0B4<9^tj}Z_fvH)?^(`Q9MNUmdoFbf~XdkO}k>Kno{f(`C~2!8_SGj7?NB*KiH*NK!>Hg-eVuxSQdpm~sW45?k}JdMt{?hd)mb_3hK8j3KB z;(`E>^Kh%gn|+l`*~w)sfIionFe_N7fPbdAxcvGkntUVOoty*V{Lj5OMu%l=EDjGk zA|=bSZqUzMBQ^pLYdasP4#!9kuXmS?(@ zKOF4m7__oQxfpV@fu!Dh5P|E{e@b1fb8?`Y@kTm%`iHe-oQsPX1t zHkQLLVXZ8JhX5p;NZ_)ZWK~xFPy^qEnk-62himrUtnE3c47A5!Yjs;5)KUgRoFQp9 zyF_34=v_{RAI#zywXng&)b#Nge*@q)S$zBAIa-MC_;12m4j5wU)g%pS*V1?-JHu|8 z8hZDSlyVZiaCm3f!`Q8tP(|{C*=tf?-9%s77ZwupQj~4+%#O4N3%g>oZ`c?*Mo|fH z*VU(4EbtaDukEQ(9zV5dv5beVQ-dKjb&m=85;7YQmga|^0mIY`5EMC^B~$T&cxvMu2yld0D} zgBatic>*JfT(0P79|Wl4?rir}IG*?PzswRxrrx{|HiT8?exWPGl*&u94#6y5|0xSX|pkucbZ`WJ;%FTs3 z`~z4=_YSj|*CAxXvm8}Fu;@-(Q%)k<&;c~Sx@+yWcx9ay+rN2&V`2a-eAkwt`ii&9 zJpMH3rCjcNIzBFbJZC8wXX&W>rz+sI+VcI}Q;<3RA2 zlX7|JY|rDj``gvBke!@+TJ5n=m(1Dfi2+s`p$BM9fCZ0Nm+0ucY=b05`&-!8P>H*P5Z{y&7hn3mUxqsC4pR03 zuP|0F$mJAGvzvZ$$FX21dZX`WuiO)O=erhPytlWVI2?v=dgf@&%MdB|L@dGk53l!E zdKIEZl3hs*-%(#*7m$S$Lz~d3fG^5<@VB4II(d^<;9tw^l#*@q)hL4NKsfz>JYuAN?!&p00lzoHKup>tKqVi0-I# zcXok_!i9n8qm|5N$}1)RJGj;M6QS)5r+u;}a#))n4WOz|Xp3i~^n;Y!& zy80;?HfGSly){Ov)AEMSn>O!DI^2L@lOwPKBC6%`WBqThxWhquo3mpQ;oG0cq^!i8Q;C8{K7yYQc`3D)zNIK8wc~nn zS&)dhxV#Y~B1Ouc@yUElqTvyp#u3sMzdReA*cTR&?7O47^6p2UmqoetdgbXBbbqU6 z0Zk}#r}?AgNvyzRwFg+Xt>0t0BC+g$V!5xdl%%8mThGs)bXnD!`~1$2$b4-k-&CXb z_n*-qB$j$P)Qwx|k47jUNk}NIRU-@@sS=pfyPMP*zlh-J9;B}$F0gx-zT80TY2$Gq zPUJ_rPqkB+?$gr)g`q`emEjeN7zuzW=-AXQvEy46?E^*B@XK@)+G&L`dYD`nx4rmmvNy)mn;CxmUH3dVPJH)VLq7B8R3Dy^5 zY+2Q!+M4RJ@uO`cEU-BVrXlr1@#dx!FYES|^yxUA;s;V|$hY{gW`w4PnpqunR)^*szaI#cjLDhQ$mE#cx-dbPdGyUbE>F z)_V}^c@tyz@1UGlGfGhLo?|5LQ=XZNzgK*ESAZO|}KmR>fY7*(E>Ea+w9NjXV6N&Ys z@w?pD2_G+r?;zei=r<$*$-oypzcIY_aR0(94@;ioT$|Tr+t5Au4W#NpdRy@);`;Yk z4YsjliHfk-JF)DmY>j=%Z}imsfl$j`9B4^fp7^Z+uVX8FQZbkcG2dVZ`1>XHPO8~% zqy&v@)%CAzejo8|ucL+^Jk~k-;)ANngUIP$+9yH?Jrv!cBUTM+rwdpWY_X zlB7Iv{j*CWya2T@Dqw6fnyV;cde_y*MQ8`?$oCjaB5u-2Wo6T-x~a>lV0foQ5nndi zU##I)c2>|_kacj)O!cL3rhEmw#Ng|N(L_=DJ~ZYfte(Hc!H1wg)=k|;l8DMCeypQ7 z!swh^$YWR;Jwg|T%uEIE7y3fP+_1TG*-q=ZnKV0b{qt{(D>+UPDBr;KFFbPVYVkiM?dcJc9{HS>Pq{pv;QW}ePPOS?s#!`>)fJIAu^d9y z=C^5Q$-ZXHmDlQCeA%99Gr!{fa4Fh1(ZBiAgRD4LYaSeS)(K3HFtGGgmApuFSuLGU zX=(}kN_qPxQT?s$id2vcCaMi*m?rUNV`Fc%(nT6KN6s=xxscf98R`>WDG-tMCtTA- zU!bp08fbIkG%Xi@+7Wdu>fR77Icz1dm@Rx`zSYa+4nHrnO2I0C?e#-9z8qE!uqfY`;3c$H4n<>QA>?lL&ja@&%kP;k!jtMJ0LsLh$Ga9`r1jUZ#;l zICoxH##yfRXyJ(u{8UC#L82XQ&1?=1URHOshdv{)>il7W?azTWtci6aE@=8q7^SvH zSXhp$5FuaAe*BsVo_E%xs&wDw`d(a>z$hd_$03bvWo3-Ia;#kw%m%>-QgYxdZ^oaG zIq+N*J&5M4UGqH2s4bhG0p$nrS7aTu@R7woS4`@foto;X^fhWK&Q!^~Go5xOA}Hg0 z3p)|4gOx^3ddzx~$y7butII9lU5Ojl^6Y>orB8>0%z)E;@4V`hvMY_LBD5#_8Pa4XF(o z&aY^ag+Ux4bsAHJGhe+&BFh&}S77Ne^^77arHr6RgJ2s?6%aXlRCjM9K@nHwvUW>0 zSoG-D^l3ygzk9VA&2$(}1i*`J(_ioBvg4p1+~6WR8`Gpjjo&fewE`^wc9qlgh`Zb^ z!p+XT_d>8P(Lk{}85?>>9aZ`rlD$0#*^2x1AKMjMPX$OITB|4L_b5!RKDjsHK{$2c zzpA!vcE}BaU@x)7ZjGS+D-$wV$;CajeBo=*x0`q?AhP`Yh{9T3va2wH!_^FgY(z?gXEzyABu#`J8%7h}bk7rHYEZ@)B+k}$rze3xaR zMH6gi+sQo$7T^ikH_sgN#oojg6#2@H;c-$SaVf#amftOgtFP}bjlEnkG32D`QBBah zi7D_`r-gR~@Yb^Jz~KNF%EUH29)syXoB8=g)~TU;tZn%j+o#daW@c>N<7SqFL-pqs z15tlXB$PmtF&>>%!^L4!$P}v(0*aEtee9(_My6?czWJjtYfRh*UhoQ}EwxH7pq!87 zCv-$hC+o&m36*XpdiB_o!}Z@{5&CMXipT28*asbzY@EI&yk8sWGuz2n5FgI{EDbtl z?$;NM1(5Ph?i}quf1PftuEPIVV1kVV z8CWV#jIQ3$RT90WzgBX?>;{||FrbKFBiQK^U3pH!hv%E?&+56t%+eiRCTcDLG++N( zaj{Zrv$=6=TH!q$CSD>}jy*v~BtLFi$);0t#lZ;-4d1>!#n@*TGq}|D?uJ=@&vJ%n z(#N0T9~QuDhFy?$4TVnVC_RcCDvVc4{T7JZ=0QOSAd&#{|HpJmr=I12`y=L#r;XXuu#1a#2s z4!B0`jr8a2W|QF@jkS{$Hu5z0xUwpz?)L`=`2F+Do#Hkt=?hl-t=;+qXI1%aWjNX`EaV(}0yKwq;> zH%YczJN*6?$8xBBUYHu?vSO6PI;i1zPpUnJT6RdU_=0N7rp~+xnX${VMvPlNuBux8 zRA4?dRb%lZ9UX>3|*seu()AAF6Sx-;u!b3_>vvEZb=ZJ`({UeQPK|7-2c!=c{(2X5c8l`IJj%GhVj zV#c2Ag^;8WV-|*Cn8g~(T8NUeMv*O9%Ti>?n!OEe!WAO>6-xX*RQGoK_WZuzKknyw z=9%N1_j1m8pZEKC9^*Bsd%fsBpmsAu-81Qh3rEgo9=vzrxWz5>(g~_}9zp#Lzg6oY zVRkMZ+g{KUWAR|aBJq^eSz=%usq4e6Q?Ajz1@>k|eiL|1W|=lC!J%{Xx_P$6g`{Kq z_bi3wYPt%YkIt@OCLQUxc@(-f0!2l~B0dp3ZomHYWwzPPUp%rErOet27aok0wRM_e z$O=@n&#i#^7FdW$Ja$TM|4j6Z<@*zw=IyQ+d;QPngQl*}vR|_e-gu(6HtE_SsC&tc zt(OrBGt&FeoRQk-A+jl2?cw*)Pk>-7lW{9VuFQKDXyZ>qq;inzQ5+!A!$Pet4~U;yF&Bz z&f@tdvN3rDqH(5I++b!Cgqg`BiQ&WJyu0FX?p3I-X5IxwDg83Y#9I;|Ha;9>=H%%q zcLIahzI3t2RiE_m`Q`??-f3{H@z{vsg}ruO&YJh8sd@#(QIA`*r!>xspO_hR=1Gs$ zq_fi%Vy5o(F$WFQRIXW_6XyHSBTh9e}CNGiAg9q*%}%1TBB`f7qMCFTH63C!=#8) zjj`quSLz4;yH@$3lDUWPWO*``&+np+B)fg|ZTj47b zt%nLb+ej-$2-962lZ383dom7oa2ZGv=t<(e7EyZmlvsBfo5%xIdX^z$1-Z|7cR|#n z>QcFCna=r%+j=SMn;a}k5C?AGHGtd2bT|a?8%v- z1mlKB^fl@8H(^%xiqB(nUh!Bn-W&02pufs3g_@W7>z}f?xeI_YSdEIYq&P7`eJ`cm z*UiJkGd@cRt7GYNDIRw*ZjWgspqBRY#_n!Dzr_0HaqHknH+D3lO54`?=)N}#eyv8g z#Q0E$1D!q9Jzf~@y%AHz(lK*;88cBjTU}9Mp%KZAjr#&e8V);Nu;}OJP+MuX{j8!S z_3WN?(jS&O#V`7cut{JH&ym1UL!E@Ij3s!dd0EZ}#ad`}o}NfMTux+U&~EnY z#HbXxXxtmUmYvUc4$(iQM0Q|0vQuMIm+ zth&u53+QBBPV9;Arw)W_IORp$$n4r3+GLZB$wGgX?K)qi#U*r0XQoR-^fPN#+=M_o zjjJt^(@?SMMOBK2z-=+k<{K{tN%xfXG8Pp^S*y-TRk+%{9ZZw$KRp`fCCU3LaOjB$ zYEspusi4(A+#_&ruhE$++-}vW0cs)V8;2NA=7;4Dk9T4D1q*A%&x(YV7T-P{g1_IHyVl(^U~qzm&OI&buCx63(J*<8EJcVJ5JhNGl_!VkLgL zskeQLiZX&nZSR#IQUShMxMZ%>PDi!-WO|KVr}Bk6$D^6sMaXtEQAYE->yohd6Np?G zle}sKXDXX;%eBK#&>&HWnw7Fjqmv^h3EIo781~P@npU z`lOZqD2zRNPng`~uCBv|(&CF6l^!WyGQ^lry-cj{ca~>gZanF}sNTFTLjbSJC{<>B zsJv2;nQ$-Xi{fS8Gx{`MRYm1?0Rz*D1A_6OgyJgGM1f`^zzbtHn;TtTeJSIbUxUW>`eg@K^rtyMxd5^ z9~}#gyqNw#Qd8>Scq?*Xf(|`a#>UaAJU#{;4IGbjyt5X$_muY?UR2&C?#n(^2GLU- zMX*=p-9md9KKD1tS+cYYI?KY2bhU{Y@*HwvP<#34xRc2FL3!;{o%SqmSa3u9=p88y z_B*1I6?%M}WMDkjn!gmC%-jW@!b+ zRmJ%#<;GbVu|rI3d-kN(=yPQ+voH*8EF#5yFS~!Sj9w5P%MDSFT5~7l3y06;rM{cX zG(8q_J~wyyYig7xUA?+9JuZ4PJH7NYzc%XO@pK(Vj7xO;Z2C8W+ zjnv(5?+A!J?h_-8T!fp{6|LlVX9S){_~M7EOg8M(_@=ZZ^7eQNJadg2+5l6VHm6Oq zdS5?vavf~Az@}F@-ODp>`7kdPd6<^{A=ACzFTr#8$$m$1x7Q_*otivp?5xpkJ0*DM z8~5q-N-4!UJ92BePbZ_CtLXsdY%Xy%WDuFK8YV0%HC&SU65Tzs;iAebPk6wNNN>`~ z2n3HB#p?qQRMBM@-6ICgR|&7LtSuch#IBvGmGs`oJhP!U;VNIJb(})gTl}cAupU*b zaNoZi_t7(ZFQbxpsyi++s^;m$+<`OK*fyJ=8?L?MMKuR4yylBP;!_b;t3{%>B_8V5 z0*NNi%GVIxdm3v?zM9^gt57xX>g!!tB^`4-qUmWwyVov83|uN`lP3`7-(Uq%bR)Z$ zM`NzC=kQxvPDFX&4B6kVO^4Kjqv~d6f+dc|&3mri%@!(Bz1|n|RoHy^eTm1J(-UvU zr0?sdy+tCPKXTmU9KeXBOeW0SaqNCFQXus%%{!+c ziOm}=u&$}$zxOTgMq}H)s?rtirCdoxwyLYWo15MhvU$Mgmr6~DpN$^Rj22ztM2cDHoTcrKA?xn>^DD6#}`ho$tVmcYirlH_s%>9z7|7} z?Jf&v9Uo}@#<>%WOy?X`cQ3ZABfd`8w`MX$8SPkfKB(z7;;;}22dS4WZfs_k zs*_uIaDMer!_h~=`nQh8Kr}aqXE*${+Ch_#QXYR*cAc-{>8p1;J5*x}5fDQ^V$0ME z3*!(y5gzNNnO%Da(#q<)!*o1oF;-0IO$v71vUJ$9P@uj`*%Q-P?`Yc~CUhUY7UspM zbLXiMb07;h*M_%qc<8(66+V?kB}Gd2(&@QcDeDGuOT*qkMfs`pBwnsv^#(03ICq9_ z+B^uUR&`9WvsZ$4d~Rfio)#2QthI3}oo5!|J5mdSRzIqs$H%%;Jgy$E7p|$4znyWs z%zL3&X@ivbMnffE;gR7<<}(E+7t`K~yx)NEimot4JcLn~QJq&PD|2S)!@i^8bujxx z@g%a6>Ez1H3a+=I{j1%H+z{9c#s0;G*KLodu**vy`RZY|*3Y#RYMS1m6e)K4?N@tR zk`x4_kB3n^0{)0OXGy88JL0tarU;IgXV-?>V7^3*uFW&;&KD3~iH`#ZuPa;u3w9^O za})y`@KL1xu#+_{HiY4iCk=IsY|B@%7V{nJneXo|p`r}^8Roh-P0qXr{>x?1Fr|_l zcMZaHRaeDYT>q*?xQ8C_I)QJW6C`@4>=_k*4tm3f2ZCtvPq4rI;?(J6VW#Yl1HtaPR*O;gV$k6reQ20ticWSG(ds38$MDtXy)i3<2K!{F zi|be}XOO{D7Mqw&#gdPmH+4@W$lx=4z5CG9d;Ziy6m#qmT#jArs71n*9eQufwr~d0 zXJg&K^H*C;TKZxED;6uG;Wese*;#po;X7AtSM+(asSm zC;bI>voV;5KXPEdrMz=k$<)W&A|QJqqA)wJA79*EV@wIhUcrk49fSF@Rvlj*MGz8T zOpuy#PobJX+tW@PRL9*O?N|O!s_wgH7OuzGp1C?7SH7`E@mZ?VGoFJ;m!23uRpO`j zVCr}{tkBP;^sKMcWbXqhhm#Bsmo%QvD=YO@I9L?0#dHw;ht^mHr)DGntjKv^FezS` zZaES(E!6eWBOszwwx;s*6yj@pzqRP#vp1pDu(zWqYD_s~{d!~Q{rdN-F5WR6Nn-C- z-tV3@KX1RcD&KFV;x@nkz#A!@u&;DkT5d&)oi0Y)?IjQATu*S%=0gx{aX{Z7q25BC z0=%a`u#mSwPx?{icPaYbw8j-*h`v<2)paQ-P(I;fgjLxgulKKyEu4Pw03mPF&c8fv zjZ4{aK+4}hzt%-N$*`I0TztLmM4g4yMu5m5`I4friC&p%LTh$EI3Z65sT~Tcdp2<$ za_(!VL&PO+ju)JR z*T2-0Hzqb2OvsvgTLh(la-X&dOy7w}Rw_`gZETU%-@K!39@CF;G}jjX=%>*wUeWi# z-yw<&>7Ljv?9n!)2?3Cf$Q~G?rybx0z(84HJYDcxZLXhQ4nNpMaP&{$qC#^yB@3u^ zyHdBMaglM41%o%wpIv5847e}rb2oIIVo-D4b@w+*`Pd?H=*hxPesvuNQf4S7u z@dNl&?syu=8Sg^$)B?}d)Pq4poEG>5(hO?mrH6MV8V6AD#{$f)u>tN_H5^z+n@dv% z1F*F4N`4qGB?6H|12|70JQb@YrDtVoD77Wvr|#$B1Q94054J3 zgTPN(U{@N=OC197_4QTug)5UOE)W$pH8ltn27$qp00||kzb6gjr{qbM2K;SLglPMh znkQ9xdrrz&vIm4{3sF&qLVh^X2bM!2dTqrNwB;D%Os3Pcz-n-3Bo2vmRzhP52qhI2 zyt5J%c$8pR1Qvn85nvcJ{)Z>8pJwRw0Br>U+h=B`u206&JphWEiT?k1O#a2l z;;?^B(~C|aZD#@w3&E4{TQi~p!Bqj~iNmTB$P^C@aE>uvUL+!Ro74sY4k1`u6Bwis zX(YV%cAn{yXx|zn;#S_MlYkPY1@=?I;RzTzi3Zj-J?f}utYCE95sUYPQMQn7%6Kp8 zw_uQn+TR-6Rv>>{23pvy145>JGky&3{lkm49tne|f-LZ~tztqYd;Vf-TXf6RUj}{? z_w6pAL;yzs@>c=U<^ugo&%bBr@2U%2Q(9o(t(y8D7uFUZ@cWhXqejU7u0+TI0Ku(Y z1xnRc;>qf(Z)GhM4uiqqNVV;R1w)}=KnzIi{~}?%bp&L8AKV{)fNcDa{Ir*~vj3K$ zfRrws<_ZY?8d15wh=G0-Jb?=!Dk8YHis!cnq>4nskst!-Tb~LVi3YfWTMx+ddmkLF zrUqQg|L6ncU;ygymp&8{*t}o*;HY2i0RjNi@jv7cz+L}~t}5bJIXDWA07#O*%Ao;* z<3IY~C>Z)Tx+=fw!cj;lfIBTn7LwyCK*A0k2AkVgLXD literal 0 HcmV?d00001 diff --git a/doc/report/report.lyx b/doc/report/report.lyx index eb2d9ea..8f2b4da 100644 --- a/doc/report/report.lyx +++ b/doc/report/report.lyx @@ -51,6 +51,8 @@ \LARGE\raggedleft} [\vspace{1ex}% {\titlerule[1pt]}] + +\usepackage[absolute]{textpos} \end_preamble \use_default_options true \language english @@ -97,6 +99,92 @@ \begin_body +\begin_layout Standard +\begin_inset Note Note +status open + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{textblock*}{297mm}(0mm,10mm) +\end_layout + +\begin_layout Plain Layout + + +\backslash +includegraphics[width= +\backslash +paperwidth-10mm]{ChaGUblasvarteng.eps} +\end_layout + +\begin_layout Plain Layout + + +\backslash +end{textblock*} +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Note Note +status open + +\begin_layout Plain Layout + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{textblock*}{297mm}(73mm,10mm) +\end_layout + +\begin_layout Plain Layout + + +\backslash +includegraphics[width= +\backslash +paperwidth/3]{LO_CHGU_cen2rCMYK.eps} +\end_layout + +\begin_layout Plain Layout + + +\backslash +end{textblock*} +\end_layout + +\end_inset + + +\end_layout + \begin_layout Title Generic Game Server \end_layout @@ -578,9 +666,41 @@ In GGS, we have separated the system in to two large supervised parts. we restart the nearest supervisor of this child. This ensures separation of the subsystems so that a crash is as isolated as possible. +\begin_inset Float figure +wide false +sideways false +status collapsed + +\begin_layout Plain Layout +\begin_inset Note Note +status open + +\begin_layout Plain Layout +We should really do this graphic in EPS instead of PNG \end_layout -\begin_layout Standard +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{centering} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout \begin_inset Graphics filename supervisors.png scale 40 @@ -588,6 +708,39 @@ In GGS, we have separated the system in to two large supervised parts. \end_inset +\end_layout + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +end{centering} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption + +\begin_layout Plain Layout +The supervisor structure of GGS +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + \end_layout \begin_layout Standard @@ -750,9 +903,41 @@ With the information kept in the tables and the Coordinator combined, we This can be thought of the chess club catching fire, and the Coordinator rounding up all the tables, running to a new location and building the club up in the exact state it was prior to the fire. +\begin_inset Float figure +wide false +sideways false +status open + +\begin_layout Plain Layout +\begin_inset Note Note +status open + +\begin_layout Plain Layout +Convert this graphics to EPS \end_layout -\begin_layout Standard +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{centering} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout \begin_inset Graphics filename system_structure.png scale 40 @@ -760,6 +945,39 @@ With the information kept in the tables and the Coordinator combined, we \end_inset +\end_layout + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +end{centering} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption + +\begin_layout Plain Layout +The layout of GGS +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + \end_layout \begin_layout Section diff --git a/doc/report/report.lyx~ b/doc/report/report.lyx~ index 9326976..3061fe1 100644 --- a/doc/report/report.lyx~ +++ b/doc/report/report.lyx~ @@ -41,7 +41,18 @@ \footskip 0.75in \usepackage[compact]{titlesec} -\titleformat{\chapter}[display]{\bfseries\vskip-8em}{}{8ex}{\huge\thechapter. }[\titlerule] + + +\titleformat{\chapter}[display] +{\vskip-8em\normalfont\bfseries} +{\LARGE\raggedright\thechapter} +{14ex} +{\vspace{-20ex}% +\LARGE\raggedleft} +[\vspace{1ex}% +{\titlerule[1pt]}] + +\usepackage[absolute]{textpos} \end_preamble \use_default_options true \language english @@ -88,6 +99,92 @@ \begin_body +\begin_layout Standard +\begin_inset Note Note +status open + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{textblock*}{297mm}(0mm,10mm) +\end_layout + +\begin_layout Plain Layout + + +\backslash +includegraphics[width= +\backslash +paperwidth-10mm]{ChaGUblasvarteng.eps} +\end_layout + +\begin_layout Plain Layout + + +\backslash +end{textblock*} +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Note Note +status open + +\begin_layout Plain Layout + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{textblock*}{297mm}(73mm,10mm) +\end_layout + +\begin_layout Plain Layout + + +\backslash +includegraphics[width= +\backslash +paperwidth/3]{LO_CHGU_cen2rCMYK.eps} +\end_layout + +\begin_layout Plain Layout + + +\backslash +end{textblock*} +\end_layout + +\end_inset + + +\end_layout + \begin_layout Title Generic Game Server \end_layout @@ -569,9 +666,41 @@ In GGS, we have separated the system in to two large supervised parts. we restart the nearest supervisor of this child. This ensures separation of the subsystems so that a crash is as isolated as possible. +\begin_inset Float figure +wide false +sideways false +status collapsed + +\begin_layout Plain Layout +\begin_inset Note Note +status open + +\begin_layout Plain Layout +We should really do this graphic in EPS instead of PNG \end_layout -\begin_layout Standard +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{centering} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout \begin_inset Graphics filename supervisors.png scale 40 @@ -579,6 +708,39 @@ In GGS, we have separated the system in to two large supervised parts. \end_inset +\end_layout + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +end{centering} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption + +\begin_layout Plain Layout +The supervisor structure of GGS +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + \end_layout \begin_layout Standard @@ -741,9 +903,28 @@ With the information kept in the tables and the Coordinator combined, we This can be thought of the chess club catching fire, and the Coordinator rounding up all the tables, running to a new location and building the club up in the exact state it was prior to the fire. +\begin_inset Float figure +wide false +sideways false +status open + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{centering} \end_layout -\begin_layout Standard +\end_inset + + +\end_layout + +\begin_layout Plain Layout \begin_inset Graphics filename system_structure.png scale 40 @@ -751,6 +932,39 @@ With the information kept in the tables and the Coordinator combined, we \end_inset +\end_layout + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +end{centering} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption + +\begin_layout Plain Layout +The layout of GGS +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + \end_layout \begin_layout Section From edf0ed23347695223c7339d02932ac619c3c9e0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 23 Mar 2011 00:49:19 +0100 Subject: [PATCH 110/192] Added bibtext bibliography database --- doc/report/#report.lyx# | 306 ++++++++++++++++++++++++++---------- doc/report/bibliography.bib | 67 ++++++++ doc/report/report.lyx | 82 +--------- doc/report/report.lyx~ | 109 ++++--------- 4 files changed, 330 insertions(+), 234 deletions(-) create mode 100644 doc/report/bibliography.bib diff --git a/doc/report/#report.lyx# b/doc/report/#report.lyx# index c0843e3..c63c98f 100644 --- a/doc/report/#report.lyx# +++ b/doc/report/#report.lyx# @@ -50,7 +50,9 @@ {\vspace{-20ex}% \LARGE\raggedleft} [\vspace{1ex}% -{\titlerule[3pt]}] +{\titlerule[1pt]}] + +\usepackage[absolute]{textpos} \end_preamble \use_default_options true \language english @@ -97,6 +99,92 @@ \begin_body +\begin_layout Standard +\begin_inset Note Note +status open + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{textblock*}{297mm}(0mm,10mm) +\end_layout + +\begin_layout Plain Layout + + +\backslash +includegraphics[width= +\backslash +paperwidth-10mm]{ChaGUblasvarteng.eps} +\end_layout + +\begin_layout Plain Layout + + +\backslash +end{textblock*} +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Note Note +status open + +\begin_layout Plain Layout + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{textblock*}{297mm}(73mm,10mm) +\end_layout + +\begin_layout Plain Layout + + +\backslash +includegraphics[width= +\backslash +paperwidth/3]{LO_CHGU_cen2rCMYK.eps} +\end_layout + +\begin_layout Plain Layout + + +\backslash +end{textblock*} +\end_layout + +\end_inset + + +\end_layout + \begin_layout Title Generic Game Server \end_layout @@ -578,9 +666,41 @@ In GGS, we have separated the system in to two large supervised parts. we restart the nearest supervisor of this child. This ensures separation of the subsystems so that a crash is as isolated as possible. +\begin_inset Float figure +wide false +sideways false +status collapsed + +\begin_layout Plain Layout +\begin_inset Note Note +status open + +\begin_layout Plain Layout +We should really do this graphic in EPS instead of PNG \end_layout -\begin_layout Standard +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{centering} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout \begin_inset Graphics filename supervisors.png scale 40 @@ -588,6 +708,39 @@ In GGS, we have separated the system in to two large supervised parts. \end_inset +\end_layout + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +end{centering} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption + +\begin_layout Plain Layout +The supervisor structure of GGS +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + \end_layout \begin_layout Standard @@ -750,9 +903,41 @@ With the information kept in the tables and the Coordinator combined, we This can be thought of the chess club catching fire, and the Coordinator rounding up all the tables, running to a new location and building the club up in the exact state it was prior to the fire. +\begin_inset Float figure +wide false +sideways false +status open + +\begin_layout Plain Layout +\begin_inset Note Note +status open + +\begin_layout Plain Layout +Convert this graphics to EPS \end_layout -\begin_layout Standard +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +begin{centering} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout \begin_inset Graphics filename system_structure.png scale 40 @@ -760,6 +945,39 @@ With the information kept in the tables and the Coordinator combined, we \end_inset +\end_layout + +\begin_layout Plain Layout +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +end{centering} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption + +\begin_layout Plain Layout +The layout of GGS +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + \end_layout \begin_layout Section @@ -786,87 +1004,15 @@ Statistics Conclusion \end_layout -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-1" +\begin_layout Standard +\begin_inset CommandInset bibtex +LatexCommand bibtex +bibfiles "journals" +options "plainnat" \end_inset -Savor, T.; Seviora, R.E.; , "Hierarchical supervisors for automatic detection - of software failures," PROCEEDINGS The Eighth International Symposium On - Software Reliability Engineering , vol., no., pp.48-59, 2-5 Nov1997 doi: 10.1109/IS -SRE.1997.630847 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=630847&i -snumber=13710 -\end_layout -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-6" - -\end_inset - -Vinoski, S.; , "Reliability with Erlang," Internet Computing, IEEE , vol.11, - no.6, pp.79-81, Nov.-Dec. - 2007 doi: 10.1109/MIC.2007.132 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&ar -number=4376232&isnumber=4376216 -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-5" - -\end_inset - -CESARINI, F., & THOMPSON, S. - (2009). - Erlang programming. - Beijing, O'Reilly. - pp.139 -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-4" - -\end_inset - -"Erlang/OTP Product Information: Technical Description of Erlang." Home of - Erlang/OTP. - Web. - 01 Mar. - 2011. - . -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-3" - -\end_inset - -Joe Armstrong – Armstrong, J. - [2011]. - If Erlang is the answer, then what is the question?. - [1]. - IT University. - Computer Science and Engineering, 15/2/2011 -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-2" - -\end_inset - -Gul Abdulnabi Agha (1985). - ACTORS: A MODEL OF CONCURRENT COMPUTATION IN DISTRIBUTED SYSTEMS. - Ph.D thesis, Artificial Intelligence Laboratory, MIT. \end_layout \end_body diff --git a/doc/report/bibliography.bib b/doc/report/bibliography.bib new file mode 100644 index 0000000..95eab8a --- /dev/null +++ b/doc/report/bibliography.bib @@ -0,0 +1,67 @@ +@book{Knuth:1997:ACP:260999, + author = {Knuth, Donald E.}, + title = {The art of computer programming, volume 1 (3rd ed.): fundamental algorithms}, + year = {1997}, + isbn = {0-201-89683-4}, + publisher = {Addison Wesley Longman Publishing Co., Inc.}, + address = {Redwood City, CA, USA}, +} + +@inproceedings{Savor:1997:HSA:851010.856089, + author = {Savor, T. and Seviora, R. E.}, + title = {Hierarchical Supervisors For Automatic Detection Of Software Failures}, + booktitle = {Proceedings of the Eighth International Symposium on Software Reliability Engineering}, + series = {ISSRE '97}, + year = {1997}, + isbn = {0-8186-8120-9}, + pages = {48--}, + url = {http://portal.acm.org/citation.cfm?id=851010.856089}, + acmid = {856089}, + publisher = {IEEE Computer Society}, + address = {Washington, DC, USA}, + keywords = {automatic collection, automatic detection, base supervisor layer, call processing software, computational cost, correct behavior, detailed behavior checking, direct single layer supervisor, failure data, fault localization, hierarchical approach, hierarchical supervisors, online failure detection, path detection layer, random telephone traffic, real time reactive systems, requirement specification, seeded failures, small telephone exchange, software failure detection, software performance evaluation, software supervision, specification nondeterminism}, +} + +@article{Vinoski:2007:RE:1304062.1304553, + author = {Vinoski, Steve}, + title = {Reliability with Erlang}, + journal = {IEEE Internet Computing}, + volume = {11}, + issue = {6}, + month = {November}, + year = {2007}, + issn = {1089-7801}, + pages = {79--81}, + numpages = {3}, + url = {http://portal.acm.org/citation.cfm?id=1304062.1304553}, + doi = {10.1109/MIC.2007.132}, + acmid = {1304553}, + publisher = {IEEE Educational Activities Department}, + address = {Piscataway, NJ, USA}, + keywords = {toward integration, Erlang, programming language, middleware, telecommunications, reliability, enterprise-integration}, +} + +@book{Cesarini:2009:EP:1717841, + author = {Cesarini, Francesco and Thompson, Simon}, + title = {ERLANG Programming}, + year = {2009}, + isbn = {0596518188, 9780596518189}, + edition = {1st}, + publisher = {O'Reilly Media, Inc.}, +} + +@misc{armstrong2011, + author = {Joe Armstrong}, + title = {If Erlang is the answer, then what is the question?}, + year = {2011}, + address = {IT University, Gothenburg}, +} + +@phdthesis{Agha:1985:AMC:912083, + author = {Agha, Gul Abdulnabi}, + title = {Actors: a model of concurrent computation in distributed systems (parallel processing, semantics, open, programming languages, artificial intelligence)}, + year = {1985}, + note = {AAI8520855}, + publisher = {University of Michigan}, + address = {Ann Arbor, MI, USA}, +} diff --git a/doc/report/report.lyx b/doc/report/report.lyx index 8f2b4da..dbdb073 100644 --- a/doc/report/report.lyx +++ b/doc/report/report.lyx @@ -1004,87 +1004,15 @@ Statistics Conclusion \end_layout -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-1" +\begin_layout Standard +\begin_inset CommandInset bibtex +LatexCommand bibtex +bibfiles "bibliography" +options "plainnat" \end_inset -Savor, T.; Seviora, R.E.; , "Hierarchical supervisors for automatic detection - of software failures," PROCEEDINGS The Eighth International Symposium On - Software Reliability Engineering , vol., no., pp.48-59, 2-5 Nov1997 doi: 10.1109/IS -SRE.1997.630847 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=630847&i -snumber=13710 -\end_layout -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-6" - -\end_inset - -Vinoski, S.; , "Reliability with Erlang," Internet Computing, IEEE , vol.11, - no.6, pp.79-81, Nov.-Dec. - 2007 doi: 10.1109/MIC.2007.132 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&ar -number=4376232&isnumber=4376216 -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-5" - -\end_inset - -CESARINI, F., & THOMPSON, S. - (2009). - Erlang programming. - Beijing, O'Reilly. - pp.139 -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-4" - -\end_inset - -"Erlang/OTP Product Information: Technical Description of Erlang." Home of - Erlang/OTP. - Web. - 01 Mar. - 2011. - . -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-3" - -\end_inset - -Joe Armstrong – Armstrong, J. - [2011]. - If Erlang is the answer, then what is the question?. - [1]. - IT University. - Computer Science and Engineering, 15/2/2011 -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-2" - -\end_inset - -Gul Abdulnabi Agha (1985). - ACTORS: A MODEL OF CONCURRENT COMPUTATION IN DISTRIBUTED SYSTEMS. - Ph.D thesis, Artificial Intelligence Laboratory, MIT. \end_layout \end_body diff --git a/doc/report/report.lyx~ b/doc/report/report.lyx~ index 3061fe1..60b3220 100644 --- a/doc/report/report.lyx~ +++ b/doc/report/report.lyx~ @@ -908,6 +908,19 @@ wide false sideways false status open +\begin_layout Plain Layout +\begin_inset Note Note +status open + +\begin_layout Plain Layout +Convert this graphics to EPS +\end_layout + +\end_inset + + +\end_layout + \begin_layout Plain Layout \begin_inset ERT status open @@ -981,97 +994,39 @@ Results and discussion \begin_layout Section Software development methodology +\begin_inset CommandInset citation +LatexCommand citet +key "Knuth:1997:ACP:260999" + +\end_inset + + \end_layout \begin_layout Section Statistics +\begin_inset CommandInset citation +LatexCommand citet +key "armstrong2011" + +\end_inset + + \end_layout \begin_layout Chapter Conclusion \end_layout -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-1" +\begin_layout Standard +\begin_inset CommandInset bibtex +LatexCommand bibtex +bibfiles "bibliography" +options "plainnat" \end_inset -Savor, T.; Seviora, R.E.; , "Hierarchical supervisors for automatic detection - of software failures," PROCEEDINGS The Eighth International Symposium On - Software Reliability Engineering , vol., no., pp.48-59, 2-5 Nov1997 doi: 10.1109/IS -SRE.1997.630847 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=630847&i -snumber=13710 -\end_layout -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-6" - -\end_inset - -Vinoski, S.; , "Reliability with Erlang," Internet Computing, IEEE , vol.11, - no.6, pp.79-81, Nov.-Dec. - 2007 doi: 10.1109/MIC.2007.132 URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&ar -number=4376232&isnumber=4376216 -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-5" - -\end_inset - -CESARINI, F., & THOMPSON, S. - (2009). - Erlang programming. - Beijing, O'Reilly. - pp.139 -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-4" - -\end_inset - -"Erlang/OTP Product Information: Technical Description of Erlang." Home of - Erlang/OTP. - Web. - 01 Mar. - 2011. - . -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-3" - -\end_inset - -Joe Armstrong – Armstrong, J. - [2011]. - If Erlang is the answer, then what is the question?. - [1]. - IT University. - Computer Science and Engineering, 15/2/2011 -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "key-2" - -\end_inset - -Gul Abdulnabi Agha (1985). - ACTORS: A MODEL OF CONCURRENT COMPUTATION IN DISTRIBUTED SYSTEMS. - Ph.D thesis, Artificial Intelligence Laboratory, MIT. \end_layout \end_body From 079d997a8c1a70b7d17e19b8429a799ef40080be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Thu, 24 Mar 2011 14:21:09 +0100 Subject: [PATCH 111/192] Added Purpose, descrition of structural and load scalability --- doc/report/#report.lyx# | 26 +++++++++++++++++++++----- doc/report/bibliography.bib | 12 ++++++++++++ doc/report/report.lyx | 24 ++++++++++++++++++++---- doc/report/report.lyx~ | 18 ++---------------- 4 files changed, 55 insertions(+), 25 deletions(-) diff --git a/doc/report/#report.lyx# b/doc/report/#report.lyx# index c63c98f..65f53fe 100644 --- a/doc/report/#report.lyx# +++ b/doc/report/#report.lyx# @@ -86,7 +86,7 @@ \secnumdepth 2 \tocdepth 2 \paragraph_separation indent -\defskip smallskip +\defskip medskip \quotes_language english \papercolumns 1 \papersides 1 @@ -323,7 +323,23 @@ Background \end_layout \begin_layout Section -Purpose +Purpose +\end_layout + +\begin_layout Standard +The purpose of the GGS project is to create a scalable and fault tolerant + server, while still allowing the server to be as generic as possible. + These three italicised terms need some explanation. +\end_layout + +\begin_layout Standard +Scalability in computer science is a large topic and is commonly divided + into sub-fields, two of which are structural scalability and load scalability. + These two issues are addressed in this thesis. + Structural scalability means expanding an architecture, e.g. + adding nodes to a system, without requiring modification of the system. + Load scalability means using the available resources in a way which allows + handling increasing load, e.g more users, gracefully. \end_layout \begin_layout Section @@ -985,7 +1001,7 @@ Understanding OTP \end_layout \begin_layout Section -Usability +Usability \end_layout \begin_layout Chapter @@ -997,7 +1013,7 @@ Software development methodology \end_layout \begin_layout Section -Statistics +Statistics \end_layout \begin_layout Chapter @@ -1007,7 +1023,7 @@ Conclusion \begin_layout Standard \begin_inset CommandInset bibtex LatexCommand bibtex -bibfiles "journals" +bibfiles "bibliography" options "plainnat" \end_inset diff --git a/doc/report/bibliography.bib b/doc/report/bibliography.bib index 95eab8a..16f7e03 100644 --- a/doc/report/bibliography.bib +++ b/doc/report/bibliography.bib @@ -65,3 +65,15 @@ publisher = {University of Michigan}, address = {Ann Arbor, MI, USA}, } + +@phdthesis{Armstrong03, + author = {Joe Armstrong}, + institution = {KTH, Microelectronics and Information Technology, IMIT}, + pages = {xii, 283}, + publisher = {Mikroelektronik och informationsteknik}, + school = {KTH, Microelectronics and Information Technology, IMIT}, + title = {Making reliable distributed systems in the presence of software errors}, + series = {Trita-IMIT. LECS}, + number = {03:09}, + year = {2003} +} diff --git a/doc/report/report.lyx b/doc/report/report.lyx index dbdb073..65f53fe 100644 --- a/doc/report/report.lyx +++ b/doc/report/report.lyx @@ -86,7 +86,7 @@ \secnumdepth 2 \tocdepth 2 \paragraph_separation indent -\defskip smallskip +\defskip medskip \quotes_language english \papercolumns 1 \papersides 1 @@ -323,7 +323,23 @@ Background \end_layout \begin_layout Section -Purpose +Purpose +\end_layout + +\begin_layout Standard +The purpose of the GGS project is to create a scalable and fault tolerant + server, while still allowing the server to be as generic as possible. + These three italicised terms need some explanation. +\end_layout + +\begin_layout Standard +Scalability in computer science is a large topic and is commonly divided + into sub-fields, two of which are structural scalability and load scalability. + These two issues are addressed in this thesis. + Structural scalability means expanding an architecture, e.g. + adding nodes to a system, without requiring modification of the system. + Load scalability means using the available resources in a way which allows + handling increasing load, e.g more users, gracefully. \end_layout \begin_layout Section @@ -985,7 +1001,7 @@ Understanding OTP \end_layout \begin_layout Section -Usability +Usability \end_layout \begin_layout Chapter @@ -997,7 +1013,7 @@ Software development methodology \end_layout \begin_layout Section -Statistics +Statistics \end_layout \begin_layout Chapter diff --git a/doc/report/report.lyx~ b/doc/report/report.lyx~ index 60b3220..737906e 100644 --- a/doc/report/report.lyx~ +++ b/doc/report/report.lyx~ @@ -86,7 +86,7 @@ \secnumdepth 2 \tocdepth 2 \paragraph_separation indent -\defskip smallskip +\defskip medskip \quotes_language english \papercolumns 1 \papersides 1 @@ -985,7 +985,7 @@ Understanding OTP \end_layout \begin_layout Section -Usability +Usability \end_layout \begin_layout Chapter @@ -994,24 +994,10 @@ Results and discussion \begin_layout Section Software development methodology -\begin_inset CommandInset citation -LatexCommand citet -key "Knuth:1997:ACP:260999" - -\end_inset - - \end_layout \begin_layout Section Statistics -\begin_inset CommandInset citation -LatexCommand citet -key "armstrong2011" - -\end_inset - - \end_layout \begin_layout Chapter From 9ee2cdae070fcf532c025f8850da0db3f00adc7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Thu, 24 Mar 2011 15:21:51 +0100 Subject: [PATCH 112/192] Purpose --- doc/report/#report.lyx# | 17 ++++++++++++++++- doc/report/bibliography.bib | 31 +++++++++++++++++++++++++++++++ doc/report/report.lyx | 17 ++++++++++++++++- doc/report/report.lyx~ | 20 ++++++++++++++++++-- 4 files changed, 81 insertions(+), 4 deletions(-) diff --git a/doc/report/#report.lyx# b/doc/report/#report.lyx# index 65f53fe..c7d4159 100644 --- a/doc/report/#report.lyx# +++ b/doc/report/#report.lyx# @@ -334,7 +334,22 @@ The purpose of the GGS project is to create a scalable and fault tolerant \begin_layout Standard Scalability in computer science is a large topic and is commonly divided - into sub-fields, two of which are structural scalability and load scalability. + into sub-fields, two of which are +\emph on +structural scalability +\emph default + and +\emph on +load scalability +\emph default + +\begin_inset CommandInset citation +LatexCommand citet +key "Bondi:2000:CSI:350391.350432" + +\end_inset + +. These two issues are addressed in this thesis. Structural scalability means expanding an architecture, e.g. adding nodes to a system, without requiring modification of the system. diff --git a/doc/report/bibliography.bib b/doc/report/bibliography.bib index 16f7e03..20c37ad 100644 --- a/doc/report/bibliography.bib +++ b/doc/report/bibliography.bib @@ -77,3 +77,34 @@ number = {03:09}, year = {2003} } + +@inproceedings{Bondi:2000:CSI:350391.350432, + author = {Bondi, Andr\'{e} B.}, + title = {Characteristics of scalability and their impact on performance}, + booktitle = {Proceedings of the 2nd international workshop on Software and performance}, + series = {WOSP '00}, + year = {2000}, + isbn = {1-58113-195-X}, + location = {Ottawa, Ontario, Canada}, + pages = {195--203}, + numpages = {9}, + url = {http://doi.acm.org/10.1145/350391.350432}, + doi = {http://doi.acm.org/10.1145/350391.350432}, + acmid = {350432}, + publisher = {ACM}, + address = {New York, NY, USA}, + keywords = {load scalability, performance, structural and space scalability}, +} + +@article{10.1109/MS.2001.936218, + author = {Jeffrey Voas}, + title = {Fault Tolerance}, + journal ={IEEE Software}, + volume = {18}, + issn = {0740-7459}, + year = {2001}, + pages = {54-57}, + doi = {http://doi.ieeecomputersociety.org/10.1109/MS.2001.936218}, + publisher = {IEEE Computer Society}, + address = {Los Alamitos, CA, USA}, +} diff --git a/doc/report/report.lyx b/doc/report/report.lyx index 65f53fe..ca118d1 100644 --- a/doc/report/report.lyx +++ b/doc/report/report.lyx @@ -334,7 +334,22 @@ The purpose of the GGS project is to create a scalable and fault tolerant \begin_layout Standard Scalability in computer science is a large topic and is commonly divided - into sub-fields, two of which are structural scalability and load scalability. + into sub-fields, two of which are +\emph on +structural scalability +\emph default + and +\emph on +load scalability +\emph default + +\begin_inset CommandInset citation +LatexCommand citet +key "Bondi:2000:CSI:350391.350432" + +\end_inset + +. These two issues are addressed in this thesis. Structural scalability means expanding an architecture, e.g. adding nodes to a system, without requiring modification of the system. diff --git a/doc/report/report.lyx~ b/doc/report/report.lyx~ index 737906e..65f53fe 100644 --- a/doc/report/report.lyx~ +++ b/doc/report/report.lyx~ @@ -323,7 +323,23 @@ Background \end_layout \begin_layout Section -Purpose +Purpose +\end_layout + +\begin_layout Standard +The purpose of the GGS project is to create a scalable and fault tolerant + server, while still allowing the server to be as generic as possible. + These three italicised terms need some explanation. +\end_layout + +\begin_layout Standard +Scalability in computer science is a large topic and is commonly divided + into sub-fields, two of which are structural scalability and load scalability. + These two issues are addressed in this thesis. + Structural scalability means expanding an architecture, e.g. + adding nodes to a system, without requiring modification of the system. + Load scalability means using the available resources in a way which allows + handling increasing load, e.g more users, gracefully. \end_layout \begin_layout Section @@ -997,7 +1013,7 @@ Software development methodology \end_layout \begin_layout Section -Statistics +Statistics \end_layout \begin_layout Chapter From 9c2de12b9ae88a02b82a0be8354fb57d66fa3e49 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 24 Mar 2011 16:12:51 +0100 Subject: [PATCH 113/192] added Challenges --- doc/report/report.lyx | 13 +- doc/report/report.lyx~ | 1019 ---------------------------------------- 2 files changed, 9 insertions(+), 1023 deletions(-) delete mode 100644 doc/report/report.lyx~ diff --git a/doc/report/report.lyx b/doc/report/report.lyx index 65f53fe..d7db572 100644 --- a/doc/report/report.lyx +++ b/doc/report/report.lyx @@ -1,4 +1,4 @@ -#LyX 1.6.7 created this file. For more info see http://www.lyx.org/ +#LyX 1.6.9 created this file. For more info see http://www.lyx.org/ \lyxformat 345 \begin_document \begin_header @@ -347,9 +347,14 @@ Challenges \end_layout \begin_layout Standard -Challenges lies mainly in providing a reliable, high-performing server and - at the same time make it easy to use for game developers. - +The main challenge is to provide a reliable, high-performing and scalable + server without making it too difficult for game developers do write their + game. + It should for example be possible for them to use the language they are + familiar with. + In our GGS prototype we added a module for a virtual machine which is highly + exchangable. + For now we have a JavaScript VM (Spidermonkey) and a ActionScript VM. \end_layout \begin_layout Subsection diff --git a/doc/report/report.lyx~ b/doc/report/report.lyx~ deleted file mode 100644 index 737906e..0000000 --- a/doc/report/report.lyx~ +++ /dev/null @@ -1,1019 +0,0 @@ -#LyX 1.6.7 created this file. For more info see http://www.lyx.org/ -\lyxformat 345 -\begin_document -\begin_header -\textclass report -\begin_preamble -\usepackage{indentfirst} -\usepackage{tocloft} -\usepackage{calc} -\date{} -\usepackage[section] {placeins} -\def\myClearpage{% - \ifvmode - \ifnum \@dbltopnum =\m@ne - \ifdim \pagetotal <\topskip - \hbox{}% - \fi - \fi - \fi -% \newpage - \write\m@ne{}% - \vbox{}% - \penalty -\@Mi -} -\def\myCleardoublepage{\myClearpage\if@twoside \ifodd\c@page\else - \hbox{}\if@twocolumn\hbox{}\fi\fi\fi} -\usepackage{morefloats} -\usepackage{graphicx} -\usepackage{subfig} -\usepackage{tocloft} -\renewcommand{\cftchapfont}{\bfseries} -\renewcommand{\cftchappagefont}{\bfseries} -\renewcommand{\cftchappresnum}{Chapter } -\renewcommand{\cftchapnumwidth}{6em} - -\oddsidemargin 0.5in -\textwidth 6in -\topmargin 0.0in -\textheight 8.0in -\setlength\topskip{24pt} -\footskip 0.75in - -\usepackage[compact]{titlesec} - - -\titleformat{\chapter}[display] -{\vskip-8em\normalfont\bfseries} -{\LARGE\raggedright\thechapter} -{14ex} -{\vspace{-20ex}% -\LARGE\raggedleft} -[\vspace{1ex}% -{\titlerule[1pt]}] - -\usepackage[absolute]{textpos} -\end_preamble -\use_default_options true -\language english -\inputencoding auto -\font_roman lmodern -\font_sans default -\font_typewriter default -\font_default_family rmdefault -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\paperfontsize default -\spacing onehalf -\use_hyperref false -\papersize a4paper -\use_geometry false -\use_amsmath 1 -\use_esint 1 -\cite_engine natbib_authoryear -\use_bibtopic false -\paperorientation portrait -\paperwidth 11in -\paperheight 8.5in -\leftmargin 1.25in -\topmargin 0in -\rightmargin 1in -\bottommargin 1.7in -\secnumdepth 2 -\tocdepth 2 -\paragraph_separation indent -\defskip medskip -\quotes_language english -\papercolumns 1 -\papersides 1 -\paperpagestyle empty -\tracking_changes false -\output_changes false -\author "" -\author "" -\end_header - -\begin_body - -\begin_layout Standard -\begin_inset Note Note -status open - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -begin{textblock*}{297mm}(0mm,10mm) -\end_layout - -\begin_layout Plain Layout - - -\backslash -includegraphics[width= -\backslash -paperwidth-10mm]{ChaGUblasvarteng.eps} -\end_layout - -\begin_layout Plain Layout - - -\backslash -end{textblock*} -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Note Note -status open - -\begin_layout Plain Layout - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -begin{textblock*}{297mm}(73mm,10mm) -\end_layout - -\begin_layout Plain Layout - - -\backslash -includegraphics[width= -\backslash -paperwidth/3]{LO_CHGU_cen2rCMYK.eps} -\end_layout - -\begin_layout Plain Layout - - -\backslash -end{textblock*} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Title -Generic Game Server -\end_layout - -\begin_layout Author -Jonatan Pålsson -\begin_inset Newline newline -\end_inset - -Niklas Landin -\begin_inset Newline newline -\end_inset - -Richard Pannek -\begin_inset Newline newline -\end_inset - -Matias Petterson -\end_layout - -\begin_layout Abstract -This is the abstract! -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -pagenumbering{roman} -\end_layout - -\begin_layout Plain Layout - - -\backslash -setcounter{page}{5} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand -\backslash -contentsname{Table of Contents} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cfttoctitlefont}{ -\backslash -hfill -\backslash -Large} -\backslash -renewcommand{ -\backslash -cftaftertoctitle}{ -\backslash -hfill} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand -\backslash -cftpartdotsep{6.6} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand -\backslash -cftchapdotsep{6.6} -\end_layout - -\end_inset - - -\begin_inset CommandInset toc -LatexCommand tableofcontents - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -pagenumbering{arabic} -\end_layout - -\begin_layout Plain Layout - - -\backslash -setcounter{page}{1} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Chapter -Introduction -\end_layout - -\begin_layout Section -Background -\end_layout - -\begin_layout Section -Purpose -\end_layout - -\begin_layout Section -Challenges -\end_layout - -\begin_layout Standard -Challenges lies mainly in providing a reliable, high-performing server and - at the same time make it easy to use for game developers. - -\end_layout - -\begin_layout Subsection -Basis -\end_layout - -\begin_layout Section -Delimitations -\end_layout - -\begin_layout Subsection -Types of games -\end_layout - -\begin_layout Standard -In theory no limitations, but in reality it will be limitations. - Many factors are involved here. - Implementation of protocol, storage possibilities, server capacity, language - support. - In real time games a low latency is very important not a high bandwidth - because the games already send very little data, ~ 80 bytes. - Lag of below 250 ms is good, lag up to 500 ms payable and beyond that the - lag is noticeable. -\end_layout - -\begin_layout Section -Method -\end_layout - -\begin_layout Subsection -Development process -\end_layout - -\begin_layout Standard -May be Extreme Programming(XP), need to check this out further. - Maybe adapt so we can say that we use a standardized software development - method. -\end_layout - -\begin_layout Subsubsection -Demand specification -\end_layout - -\begin_layout Subsection -Design -\end_layout - -\begin_layout Subsection -Testing and evaluation -\end_layout - -\begin_layout Standard -Can we use quickcheck? -\end_layout - -\begin_layout Chapter -Theory -\end_layout - -\begin_layout Subsection -Performance -\end_layout - -\begin_layout Standard -How many players can we have on a server? Performance differences between - games? e.g can one game have thousands players on a server and another only - have hundreds? Questions to be discussed here. - -\begin_inset Note Note -status open - -\begin_layout Plain Layout -Create a game with several thousand players, see how our server scales, - how can we improve the performance? Sharding isn’t very nice.. - alternatives? Improve the speed of sharding? -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Subsection -Choice of network protocol -\end_layout - -\begin_layout Standard -There are three main ways in which computer communication over the Internet - usually takes place; TCP, UDP and HTTP. - The first two are transport layer protocols, which are commonly used to - transport application layer protocols, such as HTTP. - TCP and UDP can not be used on their own, without an application layer - protocol on top. - Application layer protocols such as HTTP on the other hand needs a transport - layer protocol in order to work. - -\end_layout - -\begin_layout Subsubsection -HTTP -\end_layout - -\begin_layout Standard -Since HTTP is so widely used on the Internet today in web servers, it is - available on most Internet connected devices. - This means that if HTTP is used in GGS, firewalls will not pose problems, - which is a great benefit. - However, due to the intended usage of HTTP in web servers, the protocol - was designed to be stateless and client-initiated. - In order to maintain a state during a game session using HTTP, some sort - of token would have to be passed between client and server at all times, - much like how a web server works. - These facts combined makes HTTP unsuitable for our purposes, since GGS - requires a state to be maintained throughout a session, and also needs - to push data from the server to clients without the clients requesting - data. - It should also be mentioned that HTTP uses the TCP protocol for transport, - and what is said about TCP also applies to HTTP. - -\end_layout - -\begin_layout Subsubsection -UDP -\end_layout - -\begin_layout Standard -Many online games use UDP as the carrier for their application layer protocol. - UDP moves data across a network very quickly, however it does not ensure - that the data transferred arrives in consistent manner. - Data sent via UDP may be repeated, lost or out of order. - To ensure the data transferred is in good shape, some sort of error checking - mechanisms must be implemented. - UDP is a good choice for applications where it is more important that data - arrives in a timely manner than that all data arrives undamaged, it is - thus very suitable for media streaming, for example. - In GGS reliability of transfer was chosen before the speed of the transfer, - ruling out UDP as the transport later protocol. - -\end_layout - -\begin_layout Subsubsection -TCP -\end_layout - -\begin_layout Standard -For reliable transfers, TCP is often used on the Internet. - Built in to the protocol are the error checking and correction mechanisms - missing in UDP. - This ensures the consistency of data, but also makes the transfer slower - than if UDP had been used. - In GGS, data consistency is more important than transfer speeds, and thus - TCP is a better alternative than UDP. -\end_layout - -\begin_layout Subsection -Encryption -\end_layout - -\begin_layout Subsubsection -Performance penalties -\end_layout - -\begin_layout Subsection -Availability -\end_layout - -\begin_layout Standard -One important factor of a server is the availability, a server that you - can not connect to is a bad server. - Erlang has several features to increase the availability, for example hot - code replacement. - It is also critical to have a good design, we want to separate each part - of the server and thus avoiding that the whole server will crash. - -\end_layout - -\begin_layout Standard -\begin_inset Note Note -status open - -\begin_layout Plain Layout -Players are unsatisfied with the service of WoW Telecoms have the same problem - of having to migrate users from one node to another, this is called handover -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Subsection -Scalability -\end_layout - -\begin_layout Standard -Because P2P game architectures are a constant goal for cheaters and because - “Cheating is a major concern in network games as it degrades the experience - of the majority of players who are honest” and preventing cheating in P2P - game architectures is very difficult game developers try to use Client - - Server architectures which have a natural problem to scale. - In this paper we want to show some strategies to achieve scalability. -\end_layout - -\begin_layout Subsubsection -UUID -\end_layout - -\begin_layout Subsection -Security -\end_layout - -\begin_layout Standard -We only support languages running in a sandboxed environment. - Each game session is started in its own sandbox. - The sandboxing isolates the games in such a way that they can not interfere - with each other. - If sandboxing was not in place, one game could potentially modify the contents - of a different game. - A similar approach is taken with the persistent storage we provide. - In the storage each game has its own namespace, much like a table in a - relational database. - A game is not allowed to venture outside this namespace, and can because - of this not modify the persistent data of other games. -\end_layout - -\begin_layout Chapter -Overview -\end_layout - -\begin_layout Subsection -Techniques for ensuring reliability -\end_layout - -\begin_layout Standard -One of the main goals of the project is to achieve high reliability. - A highly reliable application is one crashes very, very rarely -\begin_inset Note Note -status open - -\begin_layout Plain Layout -CITATION NEEDED -\end_layout - -\end_inset - -. - There are some tools for creating reliable applications built in to Erlang. - -\end_layout - -\begin_layout Itemize -Links between processes. - When a process spawns a new child process, and the child process later - exits, the parent process is notified of the exit. - -\end_layout - -\begin_layout Itemize -Transparent distribution over a network of processors. - When several nodes participate in a network, it does not matter on which - of these machines a process is run. - Communication between processes does not depend on the node in which each - process is run. - -\end_layout - -\begin_layout Itemize -Hot code replacements. - Two versions of the same module can reside in the memory of Erlang at any - time. - This means that a simple swap between these versions can take place very - quickly, and without stopping the machine. -\end_layout - -\begin_layout Standard -These three features are some of the basic building blocks for more sophisticate -d reliability systems in Erlang. - Many times it is not necessary to use these features directly, but rather - through the design patterns described below. -\end_layout - -\begin_layout Subsubsection -Supervisor structure -\end_layout - -\begin_layout Standard -By linking processes together and notifying parents when children exit, - we can create supervisors. - A supervisor is a common approach in ensuring that an application functions - in the way it was intended. - When a process misbehaves, the supervisor takes some action to restore - the process to a functional state. - -\end_layout - -\begin_layout Standard -There are several approaches to supervisor design in general (when not just - considering how they work in Erlang). - One common approach is to have the supervisor look in to the state of the - process(es) it supervises, and let the supervisor make decisions based - on this state. - The supervisor has a specification of how the process it supervises should - function, and this is how it makes decisions. - -\end_layout - -\begin_layout Standard -In Erlang, we have a simple version of supervisors. - We do not inspect the state of the processes being supervised. - We do have a specification of how the supervised processes should behave, - but on a higher level. - The specification describes things such as how many times in a given time - interval a child process may crash, which processes need restarting when - crashes occur, and so forth. - -\end_layout - -\begin_layout Standard -When the linking of processes in order to monitor exit behaviour is coupled - with the transparent distribution of Erlang, a very powerful supervision - system is created. - For instance, we can restart a failing process on a different, new node, - with minimal impact on the system as a whole. - -\end_layout - -\begin_layout Standard -In GGS, we have separated the system in to two large supervised parts. - We try to restart a crashing child separately, if this fails too many times, - we restart the nearest supervisor of this child. - This ensures separation of the subsystems so that a crash is as isolated - as possible. -\begin_inset Float figure -wide false -sideways false -status collapsed - -\begin_layout Plain Layout -\begin_inset Note Note -status open - -\begin_layout Plain Layout -We should really do this graphic in EPS instead of PNG -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -begin{centering} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Graphics - filename supervisors.png - scale 40 - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -end{centering} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Caption - -\begin_layout Plain Layout -The supervisor structure of GGS -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -The graphic above shows our two subsystems, the coordinator subsystem and - the dispatcher subsystem. - Since these two systems perform very different tasks they have been separated. - Each subsystem has one worker process, the coordinator or the dispatcher. - The worker process keeps a state which should not be lost upon a crash. -\end_layout - -\begin_layout Standard -We have chosen to let faulty processes crash very easily when they receive - bad data, or something unexpected happens. - The alternative to crashing would have been to try and fix this faulty - data, or to foresee the unexpected events. - We chose not to do this because it is so simple to monitor and restart - processes, and so difficult to try and mend broken states. - This approach is something widely deployed in the Erlang world, and developers - are often encouraged to “Let it crash”. -\end_layout - -\begin_layout Standard -To prevent any data loss, the good state of the worker processes is stored - in their respective backup processes. - When a worker process (re)starts, it asks the backup process for any previous - state, if there is any that state is loaded in to the worker and it proceeds - where it left off. - If on the other hand no state is available, a special message is delivered - instead, making the worker create a new state, this is what happens when - the workers are first created. -\end_layout - -\begin_layout Subsubsection -Hot code replacement -\end_layout - -\begin_layout Subsection -Implementation -\end_layout - -\begin_layout Subsubsection -User interface -\end_layout - -\begin_layout Chapter -Problems -\end_layout - -\begin_layout Subsection -Erlang JS -\end_layout - -\begin_layout Standard -To be able to run JavaScript on our server we needed to embed a JavaScript - engine within the server. - After a thorough investigation erlang_js became our choice. - erlang_js provides direct communication with a JavaScript VM (Virtual Machine). - This was exactly what we wanted, but we also needed the possibility to - communicate from erlang_js to Erlang. - This functionality was not yet implemented in erlang_js, due to lack of - time. -\end_layout - -\begin_layout Standard -There were two possible solutions to the problem. - We could rewrite some part of erlang_js, or we could switch erlang_js for - some other JavaScript engine. - Searching for other engines we found erlv8 and beam.js which provided the - functionality that we wanted. - As we tested beam.js it occurred random crashes of the whole Erlang environment. - These crashes were related to the use of erlv8 in beam.js and we decided - that the use of erlv8 was not an alternative due to the stability issues. -\end_layout - -\begin_layout Standard -To get the functionality needed we decided to implement this in erlang_js. -\end_layout - -\begin_layout Subsubsection -UUID -\end_layout - -\begin_layout Standard -Erlang identifies processes uniquely throughout the entire Erlang network - using process IDs (PID). - When we wish to refer to erlang processes from outside our erlang system, - for example in a virtual machine for a different language, possibly on - a different machine, these PIDs are no longer useful. - -\end_layout - -\begin_layout Standard -This problem is not new, and a common solution is to use a Universally Unique - Identifier, a UUID. - These identifiers are generated both using randomization and using time. - A reasonably large number of UUIDs can be generated before a collision - should occur. - There are standard tools in many UNIX systems to generate UUIDs, we chose - to use the uuidgen command, which employs an equidistributed combined Tausworth -e generator. -\end_layout - -\begin_layout Section -Design choices -\end_layout - -\begin_layout Standard -When designing concurrent applications, it is useful to picture them as - real world scenarios, and to model each actor# as a real world process. - A real world process is a process which performs some action in the real - world, such as a mailbox receiving a letter, a door being opened, a person - translating a text, a soccer player kicking the ball, just to name a few - examples. - Since we focus on games in this project, it is suitable to model our system - as a place where games take place. - We imagined a chess club. - -\end_layout - -\begin_layout Standard -The clients pictured as green circles can be thought of as the physical - chess players. -\end_layout - -\begin_layout Standard -When a player wants to enter the our particular chess club, he must first - be let in by the doorman, called the Dispatcher in GGS. -\end_layout - -\begin_layout Standard -He then gets a name badge, and thus becomes a Player process in the system. - He is also guided in to the lobby by the Coordinator, which has the role - of the host of the chess club. -\end_layout - -\begin_layout Standard -When players wish to play against each other, they talk to the Coordinator - who pairs them up, and places them at a table. - Once they have sat down at the table, they no longer need the assistance - of the Coordinator, all further communication takes place via the table. - This can be thought of as the actual chess game commencing. - -\end_layout - -\begin_layout Standard -All the moves made in the game are recorded by the table, such that the - table can restore the game in case something would happen, such as the - table tipping over, which would represent the table process crashing. -\end_layout - -\begin_layout Standard -Once a player wishes to leave a game, or the entire facility, he should - contact the Coordinator, who revokes his name badge and the Dispatcher - will let the player out. -\end_layout - -\begin_layout Standard -With the information kept in the tables and the Coordinator combined, we - can rebuild the entire state of the server at a different location. - This can be thought of the chess club catching fire, and the Coordinator - rounding up all the tables, running to a new location and building the - club up in the exact state it was prior to the fire. -\begin_inset Float figure -wide false -sideways false -status open - -\begin_layout Plain Layout -\begin_inset Note Note -status open - -\begin_layout Plain Layout -Convert this graphics to EPS -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -begin{centering} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Graphics - filename system_structure.png - scale 40 - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -end{centering} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Caption - -\begin_layout Plain Layout -The layout of GGS -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Section -Understanding OTP -\end_layout - -\begin_layout Section -Usability -\end_layout - -\begin_layout Chapter -Results and discussion -\end_layout - -\begin_layout Section -Software development methodology -\end_layout - -\begin_layout Section -Statistics -\end_layout - -\begin_layout Chapter -Conclusion -\end_layout - -\begin_layout Standard -\begin_inset CommandInset bibtex -LatexCommand bibtex -bibfiles "bibliography" -options "plainnat" - -\end_inset - - -\end_layout - -\end_body -\end_document From ff65ffa16c15fc1490f7df4532931af7b8485ccb Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 24 Mar 2011 16:13:18 +0100 Subject: [PATCH 114/192] added ~ --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 5e78ad2..44c7b7b 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,5 @@ Mnesia.* *.swo games/Pong/build/**/* +*~ + From a7ae620176deb9a4b7b389b58880c8b6f04a5ec9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Thu, 24 Mar 2011 16:39:47 +0100 Subject: [PATCH 115/192] Changed headings so ToC looks better --- doc/report/#report.lyx# | 12 ++++++------ doc/report/report.lyx | 20 ++++++++++---------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/doc/report/#report.lyx# b/doc/report/#report.lyx# index c7d4159..ec0c4a7 100644 --- a/doc/report/#report.lyx# +++ b/doc/report/#report.lyx# @@ -342,7 +342,7 @@ structural scalability \emph on load scalability \emph default - + \begin_inset CommandInset citation LatexCommand citet key "Bondi:2000:CSI:350391.350432" @@ -424,7 +424,7 @@ Can we use quickcheck? Theory \end_layout -\begin_layout Subsection +\begin_layout Section Performance \end_layout @@ -447,7 +447,7 @@ Create a game with several thousand players, see how our server scales, \end_layout -\begin_layout Subsection +\begin_layout Section Choice of network protocol \end_layout @@ -463,7 +463,7 @@ There are three main ways in which computer communication over the Internet \end_layout -\begin_layout Subsubsection +\begin_layout Subsection HTTP \end_layout @@ -486,7 +486,7 @@ Since HTTP is so widely used on the Internet today in web servers, it is \end_layout -\begin_layout Subsubsection +\begin_layout Subsection UDP \end_layout @@ -505,7 +505,7 @@ Many online games use UDP as the carrier for their application layer protocol. \end_layout -\begin_layout Subsubsection +\begin_layout Subsection TCP \end_layout diff --git a/doc/report/report.lyx b/doc/report/report.lyx index fe88fd6..95e04b7 100644 --- a/doc/report/report.lyx +++ b/doc/report/report.lyx @@ -429,7 +429,7 @@ Can we use quickcheck? Theory \end_layout -\begin_layout Subsection +\begin_layout Section Performance \end_layout @@ -452,7 +452,7 @@ Create a game with several thousand players, see how our server scales, \end_layout -\begin_layout Subsection +\begin_layout Section Choice of network protocol \end_layout @@ -468,7 +468,7 @@ There are three main ways in which computer communication over the Internet \end_layout -\begin_layout Subsubsection +\begin_layout Subsection HTTP \end_layout @@ -491,7 +491,7 @@ Since HTTP is so widely used on the Internet today in web servers, it is \end_layout -\begin_layout Subsubsection +\begin_layout Subsection UDP \end_layout @@ -510,7 +510,7 @@ Many online games use UDP as the carrier for their application layer protocol. \end_layout -\begin_layout Subsubsection +\begin_layout Subsection TCP \end_layout @@ -599,7 +599,7 @@ We only support languages running in a sandboxed environment. Overview \end_layout -\begin_layout Subsection +\begin_layout Section Techniques for ensuring reliability \end_layout @@ -651,7 +651,7 @@ d reliability systems in Erlang. through the design patterns described below. \end_layout -\begin_layout Subsubsection +\begin_layout Subsection Supervisor structure \end_layout @@ -809,7 +809,7 @@ To prevent any data loss, the good state of the worker processes is stored the workers are first created. \end_layout -\begin_layout Subsubsection +\begin_layout Subsection Hot code replacement \end_layout @@ -825,7 +825,7 @@ User interface Problems \end_layout -\begin_layout Subsection +\begin_layout Section Erlang JS \end_layout @@ -855,7 +855,7 @@ There were two possible solutions to the problem. To get the functionality needed we decided to implement this in erlang_js. \end_layout -\begin_layout Subsubsection +\begin_layout Subsection UUID \end_layout From 7ff541221957b1c955a8c2766ebbdff5ad1e161a Mon Sep 17 00:00:00 2001 From: niklas Date: Thu, 24 Mar 2011 16:44:48 +0100 Subject: [PATCH 116/192] Changed some formatting of the document! --- doc/report/report.lyx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/doc/report/report.lyx b/doc/report/report.lyx index 95e04b7..8a4c886 100644 --- a/doc/report/report.lyx +++ b/doc/report/report.lyx @@ -1,4 +1,4 @@ -#LyX 1.6.9 created this file. For more info see http://www.lyx.org/ +#LyX 1.6.7 created this file. For more info see http://www.lyx.org/ \lyxformat 345 \begin_document \begin_header @@ -524,7 +524,7 @@ For reliable transfers, TCP is often used on the Internet. TCP is a better alternative than UDP. \end_layout -\begin_layout Subsection +\begin_layout Section Encryption \end_layout @@ -532,7 +532,7 @@ Encryption Performance penalties \end_layout -\begin_layout Subsection +\begin_layout Section Availability \end_layout @@ -560,7 +560,7 @@ Players are unsatisfied with the service of WoW Telecoms have the same problem \end_layout -\begin_layout Subsection +\begin_layout Section Scalability \end_layout @@ -577,7 +577,7 @@ Because P2P game architectures are a constant goal for cheaters and because UUID \end_layout -\begin_layout Subsection +\begin_layout Section Security \end_layout @@ -813,7 +813,7 @@ To prevent any data loss, the good state of the worker processes is stored Hot code replacement \end_layout -\begin_layout Subsection +\begin_layout Section Implementation \end_layout From c3bacc2158b9f6847e30924f2325140c5f2bfb32 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 24 Mar 2011 17:05:24 +0100 Subject: [PATCH 117/192] added report submodule --- .gitmodules | 3 + doc/report | 1 + doc/report/#report.lyx# | 1050 -------- doc/report/ChaGUblasvarteng.eps | Bin 194390 -> 0 bytes doc/report/LO_CHGU_cen2rCMYK.eps | Bin 551622 -> 0 bytes doc/report/LO_CHGU_cen2rCMYK.pdf | Bin 39650 -> 0 bytes doc/report/Thesis_Template.lyx | 352 --- .../UTHM-Thesis-Classic-authoryear-V-05.lyx | 2262 ----------------- doc/report/bibliography.bib | 110 - doc/report/gu_logo.png | Bin 15026 -> 0 bytes doc/report/report.lyx | 1055 -------- doc/report/report.pdf | Bin 155428 -> 0 bytes doc/report/supervisors.png | Bin 24524 -> 0 bytes doc/report/system_structure.png | Bin 56384 -> 0 bytes 14 files changed, 4 insertions(+), 4829 deletions(-) create mode 160000 doc/report delete mode 100644 doc/report/#report.lyx# delete mode 100644 doc/report/ChaGUblasvarteng.eps delete mode 100644 doc/report/LO_CHGU_cen2rCMYK.eps delete mode 100644 doc/report/LO_CHGU_cen2rCMYK.pdf delete mode 100644 doc/report/Thesis_Template.lyx delete mode 100644 doc/report/UTHM-Thesis-Classic-authoryear-V-05.lyx delete mode 100644 doc/report/bibliography.bib delete mode 100644 doc/report/gu_logo.png delete mode 100644 doc/report/report.lyx delete mode 100644 doc/report/report.pdf delete mode 100644 doc/report/supervisors.png delete mode 100644 doc/report/system_structure.png diff --git a/.gitmodules b/.gitmodules index 4c56fac..06aa680 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "erlang_js"] path = erlang_js url = https://github.com/jonte/erlang_js.git +[submodule "doc/report"] + path = doc/report + url = git@github.com:jeena/GGS-report.git diff --git a/doc/report b/doc/report new file mode 160000 index 0000000..aad268d --- /dev/null +++ b/doc/report @@ -0,0 +1 @@ +Subproject commit aad268d03a3c23de917cfecf767d583d3cb32633 diff --git a/doc/report/#report.lyx# b/doc/report/#report.lyx# deleted file mode 100644 index ec0c4a7..0000000 --- a/doc/report/#report.lyx# +++ /dev/null @@ -1,1050 +0,0 @@ -#LyX 1.6.7 created this file. For more info see http://www.lyx.org/ -\lyxformat 345 -\begin_document -\begin_header -\textclass report -\begin_preamble -\usepackage{indentfirst} -\usepackage{tocloft} -\usepackage{calc} -\date{} -\usepackage[section] {placeins} -\def\myClearpage{% - \ifvmode - \ifnum \@dbltopnum =\m@ne - \ifdim \pagetotal <\topskip - \hbox{}% - \fi - \fi - \fi -% \newpage - \write\m@ne{}% - \vbox{}% - \penalty -\@Mi -} -\def\myCleardoublepage{\myClearpage\if@twoside \ifodd\c@page\else - \hbox{}\if@twocolumn\hbox{}\fi\fi\fi} -\usepackage{morefloats} -\usepackage{graphicx} -\usepackage{subfig} -\usepackage{tocloft} -\renewcommand{\cftchapfont}{\bfseries} -\renewcommand{\cftchappagefont}{\bfseries} -\renewcommand{\cftchappresnum}{Chapter } -\renewcommand{\cftchapnumwidth}{6em} - -\oddsidemargin 0.5in -\textwidth 6in -\topmargin 0.0in -\textheight 8.0in -\setlength\topskip{24pt} -\footskip 0.75in - -\usepackage[compact]{titlesec} - - -\titleformat{\chapter}[display] -{\vskip-8em\normalfont\bfseries} -{\LARGE\raggedright\thechapter} -{14ex} -{\vspace{-20ex}% -\LARGE\raggedleft} -[\vspace{1ex}% -{\titlerule[1pt]}] - -\usepackage[absolute]{textpos} -\end_preamble -\use_default_options true -\language english -\inputencoding auto -\font_roman lmodern -\font_sans default -\font_typewriter default -\font_default_family rmdefault -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\paperfontsize default -\spacing onehalf -\use_hyperref false -\papersize a4paper -\use_geometry false -\use_amsmath 1 -\use_esint 1 -\cite_engine natbib_authoryear -\use_bibtopic false -\paperorientation portrait -\paperwidth 11in -\paperheight 8.5in -\leftmargin 1.25in -\topmargin 0in -\rightmargin 1in -\bottommargin 1.7in -\secnumdepth 2 -\tocdepth 2 -\paragraph_separation indent -\defskip medskip -\quotes_language english -\papercolumns 1 -\papersides 1 -\paperpagestyle empty -\tracking_changes false -\output_changes false -\author "" -\author "" -\end_header - -\begin_body - -\begin_layout Standard -\begin_inset Note Note -status open - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -begin{textblock*}{297mm}(0mm,10mm) -\end_layout - -\begin_layout Plain Layout - - -\backslash -includegraphics[width= -\backslash -paperwidth-10mm]{ChaGUblasvarteng.eps} -\end_layout - -\begin_layout Plain Layout - - -\backslash -end{textblock*} -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Note Note -status open - -\begin_layout Plain Layout - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -begin{textblock*}{297mm}(73mm,10mm) -\end_layout - -\begin_layout Plain Layout - - -\backslash -includegraphics[width= -\backslash -paperwidth/3]{LO_CHGU_cen2rCMYK.eps} -\end_layout - -\begin_layout Plain Layout - - -\backslash -end{textblock*} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Title -Generic Game Server -\end_layout - -\begin_layout Author -Jonatan Pålsson -\begin_inset Newline newline -\end_inset - -Niklas Landin -\begin_inset Newline newline -\end_inset - -Richard Pannek -\begin_inset Newline newline -\end_inset - -Matias Petterson -\end_layout - -\begin_layout Abstract -This is the abstract! -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -pagenumbering{roman} -\end_layout - -\begin_layout Plain Layout - - -\backslash -setcounter{page}{5} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand -\backslash -contentsname{Table of Contents} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cfttoctitlefont}{ -\backslash -hfill -\backslash -Large} -\backslash -renewcommand{ -\backslash -cftaftertoctitle}{ -\backslash -hfill} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand -\backslash -cftpartdotsep{6.6} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand -\backslash -cftchapdotsep{6.6} -\end_layout - -\end_inset - - -\begin_inset CommandInset toc -LatexCommand tableofcontents - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -pagenumbering{arabic} -\end_layout - -\begin_layout Plain Layout - - -\backslash -setcounter{page}{1} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Chapter -Introduction -\end_layout - -\begin_layout Section -Background -\end_layout - -\begin_layout Section -Purpose -\end_layout - -\begin_layout Standard -The purpose of the GGS project is to create a scalable and fault tolerant - server, while still allowing the server to be as generic as possible. - These three italicised terms need some explanation. -\end_layout - -\begin_layout Standard -Scalability in computer science is a large topic and is commonly divided - into sub-fields, two of which are -\emph on -structural scalability -\emph default - and -\emph on -load scalability -\emph default - -\begin_inset CommandInset citation -LatexCommand citet -key "Bondi:2000:CSI:350391.350432" - -\end_inset - -. - These two issues are addressed in this thesis. - Structural scalability means expanding an architecture, e.g. - adding nodes to a system, without requiring modification of the system. - Load scalability means using the available resources in a way which allows - handling increasing load, e.g more users, gracefully. -\end_layout - -\begin_layout Section -Challenges -\end_layout - -\begin_layout Standard -Challenges lies mainly in providing a reliable, high-performing server and - at the same time make it easy to use for game developers. - -\end_layout - -\begin_layout Subsection -Basis -\end_layout - -\begin_layout Section -Delimitations -\end_layout - -\begin_layout Subsection -Types of games -\end_layout - -\begin_layout Standard -In theory no limitations, but in reality it will be limitations. - Many factors are involved here. - Implementation of protocol, storage possibilities, server capacity, language - support. - In real time games a low latency is very important not a high bandwidth - because the games already send very little data, ~ 80 bytes. - Lag of below 250 ms is good, lag up to 500 ms payable and beyond that the - lag is noticeable. -\end_layout - -\begin_layout Section -Method -\end_layout - -\begin_layout Subsection -Development process -\end_layout - -\begin_layout Standard -May be Extreme Programming(XP), need to check this out further. - Maybe adapt so we can say that we use a standardized software development - method. -\end_layout - -\begin_layout Subsubsection -Demand specification -\end_layout - -\begin_layout Subsection -Design -\end_layout - -\begin_layout Subsection -Testing and evaluation -\end_layout - -\begin_layout Standard -Can we use quickcheck? -\end_layout - -\begin_layout Chapter -Theory -\end_layout - -\begin_layout Section -Performance -\end_layout - -\begin_layout Standard -How many players can we have on a server? Performance differences between - games? e.g can one game have thousands players on a server and another only - have hundreds? Questions to be discussed here. - -\begin_inset Note Note -status open - -\begin_layout Plain Layout -Create a game with several thousand players, see how our server scales, - how can we improve the performance? Sharding isn’t very nice.. - alternatives? Improve the speed of sharding? -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Section -Choice of network protocol -\end_layout - -\begin_layout Standard -There are three main ways in which computer communication over the Internet - usually takes place; TCP, UDP and HTTP. - The first two are transport layer protocols, which are commonly used to - transport application layer protocols, such as HTTP. - TCP and UDP can not be used on their own, without an application layer - protocol on top. - Application layer protocols such as HTTP on the other hand needs a transport - layer protocol in order to work. - -\end_layout - -\begin_layout Subsection -HTTP -\end_layout - -\begin_layout Standard -Since HTTP is so widely used on the Internet today in web servers, it is - available on most Internet connected devices. - This means that if HTTP is used in GGS, firewalls will not pose problems, - which is a great benefit. - However, due to the intended usage of HTTP in web servers, the protocol - was designed to be stateless and client-initiated. - In order to maintain a state during a game session using HTTP, some sort - of token would have to be passed between client and server at all times, - much like how a web server works. - These facts combined makes HTTP unsuitable for our purposes, since GGS - requires a state to be maintained throughout a session, and also needs - to push data from the server to clients without the clients requesting - data. - It should also be mentioned that HTTP uses the TCP protocol for transport, - and what is said about TCP also applies to HTTP. - -\end_layout - -\begin_layout Subsection -UDP -\end_layout - -\begin_layout Standard -Many online games use UDP as the carrier for their application layer protocol. - UDP moves data across a network very quickly, however it does not ensure - that the data transferred arrives in consistent manner. - Data sent via UDP may be repeated, lost or out of order. - To ensure the data transferred is in good shape, some sort of error checking - mechanisms must be implemented. - UDP is a good choice for applications where it is more important that data - arrives in a timely manner than that all data arrives undamaged, it is - thus very suitable for media streaming, for example. - In GGS reliability of transfer was chosen before the speed of the transfer, - ruling out UDP as the transport later protocol. - -\end_layout - -\begin_layout Subsection -TCP -\end_layout - -\begin_layout Standard -For reliable transfers, TCP is often used on the Internet. - Built in to the protocol are the error checking and correction mechanisms - missing in UDP. - This ensures the consistency of data, but also makes the transfer slower - than if UDP had been used. - In GGS, data consistency is more important than transfer speeds, and thus - TCP is a better alternative than UDP. -\end_layout - -\begin_layout Subsection -Encryption -\end_layout - -\begin_layout Subsubsection -Performance penalties -\end_layout - -\begin_layout Subsection -Availability -\end_layout - -\begin_layout Standard -One important factor of a server is the availability, a server that you - can not connect to is a bad server. - Erlang has several features to increase the availability, for example hot - code replacement. - It is also critical to have a good design, we want to separate each part - of the server and thus avoiding that the whole server will crash. - -\end_layout - -\begin_layout Standard -\begin_inset Note Note -status open - -\begin_layout Plain Layout -Players are unsatisfied with the service of WoW Telecoms have the same problem - of having to migrate users from one node to another, this is called handover -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Subsection -Scalability -\end_layout - -\begin_layout Standard -Because P2P game architectures are a constant goal for cheaters and because - “Cheating is a major concern in network games as it degrades the experience - of the majority of players who are honest” and preventing cheating in P2P - game architectures is very difficult game developers try to use Client - - Server architectures which have a natural problem to scale. - In this paper we want to show some strategies to achieve scalability. -\end_layout - -\begin_layout Subsubsection -UUID -\end_layout - -\begin_layout Subsection -Security -\end_layout - -\begin_layout Standard -We only support languages running in a sandboxed environment. - Each game session is started in its own sandbox. - The sandboxing isolates the games in such a way that they can not interfere - with each other. - If sandboxing was not in place, one game could potentially modify the contents - of a different game. - A similar approach is taken with the persistent storage we provide. - In the storage each game has its own namespace, much like a table in a - relational database. - A game is not allowed to venture outside this namespace, and can because - of this not modify the persistent data of other games. -\end_layout - -\begin_layout Chapter -Overview -\end_layout - -\begin_layout Subsection -Techniques for ensuring reliability -\end_layout - -\begin_layout Standard -One of the main goals of the project is to achieve high reliability. - A highly reliable application is one crashes very, very rarely -\begin_inset Note Note -status open - -\begin_layout Plain Layout -CITATION NEEDED -\end_layout - -\end_inset - -. - There are some tools for creating reliable applications built in to Erlang. - -\end_layout - -\begin_layout Itemize -Links between processes. - When a process spawns a new child process, and the child process later - exits, the parent process is notified of the exit. - -\end_layout - -\begin_layout Itemize -Transparent distribution over a network of processors. - When several nodes participate in a network, it does not matter on which - of these machines a process is run. - Communication between processes does not depend on the node in which each - process is run. - -\end_layout - -\begin_layout Itemize -Hot code replacements. - Two versions of the same module can reside in the memory of Erlang at any - time. - This means that a simple swap between these versions can take place very - quickly, and without stopping the machine. -\end_layout - -\begin_layout Standard -These three features are some of the basic building blocks for more sophisticate -d reliability systems in Erlang. - Many times it is not necessary to use these features directly, but rather - through the design patterns described below. -\end_layout - -\begin_layout Subsubsection -Supervisor structure -\end_layout - -\begin_layout Standard -By linking processes together and notifying parents when children exit, - we can create supervisors. - A supervisor is a common approach in ensuring that an application functions - in the way it was intended. - When a process misbehaves, the supervisor takes some action to restore - the process to a functional state. - -\end_layout - -\begin_layout Standard -There are several approaches to supervisor design in general (when not just - considering how they work in Erlang). - One common approach is to have the supervisor look in to the state of the - process(es) it supervises, and let the supervisor make decisions based - on this state. - The supervisor has a specification of how the process it supervises should - function, and this is how it makes decisions. - -\end_layout - -\begin_layout Standard -In Erlang, we have a simple version of supervisors. - We do not inspect the state of the processes being supervised. - We do have a specification of how the supervised processes should behave, - but on a higher level. - The specification describes things such as how many times in a given time - interval a child process may crash, which processes need restarting when - crashes occur, and so forth. - -\end_layout - -\begin_layout Standard -When the linking of processes in order to monitor exit behaviour is coupled - with the transparent distribution of Erlang, a very powerful supervision - system is created. - For instance, we can restart a failing process on a different, new node, - with minimal impact on the system as a whole. - -\end_layout - -\begin_layout Standard -In GGS, we have separated the system in to two large supervised parts. - We try to restart a crashing child separately, if this fails too many times, - we restart the nearest supervisor of this child. - This ensures separation of the subsystems so that a crash is as isolated - as possible. -\begin_inset Float figure -wide false -sideways false -status collapsed - -\begin_layout Plain Layout -\begin_inset Note Note -status open - -\begin_layout Plain Layout -We should really do this graphic in EPS instead of PNG -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -begin{centering} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Graphics - filename supervisors.png - scale 40 - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -end{centering} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Caption - -\begin_layout Plain Layout -The supervisor structure of GGS -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -The graphic above shows our two subsystems, the coordinator subsystem and - the dispatcher subsystem. - Since these two systems perform very different tasks they have been separated. - Each subsystem has one worker process, the coordinator or the dispatcher. - The worker process keeps a state which should not be lost upon a crash. -\end_layout - -\begin_layout Standard -We have chosen to let faulty processes crash very easily when they receive - bad data, or something unexpected happens. - The alternative to crashing would have been to try and fix this faulty - data, or to foresee the unexpected events. - We chose not to do this because it is so simple to monitor and restart - processes, and so difficult to try and mend broken states. - This approach is something widely deployed in the Erlang world, and developers - are often encouraged to “Let it crash”. -\end_layout - -\begin_layout Standard -To prevent any data loss, the good state of the worker processes is stored - in their respective backup processes. - When a worker process (re)starts, it asks the backup process for any previous - state, if there is any that state is loaded in to the worker and it proceeds - where it left off. - If on the other hand no state is available, a special message is delivered - instead, making the worker create a new state, this is what happens when - the workers are first created. -\end_layout - -\begin_layout Subsubsection -Hot code replacement -\end_layout - -\begin_layout Subsection -Implementation -\end_layout - -\begin_layout Subsubsection -User interface -\end_layout - -\begin_layout Chapter -Problems -\end_layout - -\begin_layout Subsection -Erlang JS -\end_layout - -\begin_layout Standard -To be able to run JavaScript on our server we needed to embed a JavaScript - engine within the server. - After a thorough investigation erlang_js became our choice. - erlang_js provides direct communication with a JavaScript VM (Virtual Machine). - This was exactly what we wanted, but we also needed the possibility to - communicate from erlang_js to Erlang. - This functionality was not yet implemented in erlang_js, due to lack of - time. -\end_layout - -\begin_layout Standard -There were two possible solutions to the problem. - We could rewrite some part of erlang_js, or we could switch erlang_js for - some other JavaScript engine. - Searching for other engines we found erlv8 and beam.js which provided the - functionality that we wanted. - As we tested beam.js it occurred random crashes of the whole Erlang environment. - These crashes were related to the use of erlv8 in beam.js and we decided - that the use of erlv8 was not an alternative due to the stability issues. -\end_layout - -\begin_layout Standard -To get the functionality needed we decided to implement this in erlang_js. -\end_layout - -\begin_layout Subsubsection -UUID -\end_layout - -\begin_layout Standard -Erlang identifies processes uniquely throughout the entire Erlang network - using process IDs (PID). - When we wish to refer to erlang processes from outside our erlang system, - for example in a virtual machine for a different language, possibly on - a different machine, these PIDs are no longer useful. - -\end_layout - -\begin_layout Standard -This problem is not new, and a common solution is to use a Universally Unique - Identifier, a UUID. - These identifiers are generated both using randomization and using time. - A reasonably large number of UUIDs can be generated before a collision - should occur. - There are standard tools in many UNIX systems to generate UUIDs, we chose - to use the uuidgen command, which employs an equidistributed combined Tausworth -e generator. -\end_layout - -\begin_layout Section -Design choices -\end_layout - -\begin_layout Standard -When designing concurrent applications, it is useful to picture them as - real world scenarios, and to model each actor# as a real world process. - A real world process is a process which performs some action in the real - world, such as a mailbox receiving a letter, a door being opened, a person - translating a text, a soccer player kicking the ball, just to name a few - examples. - Since we focus on games in this project, it is suitable to model our system - as a place where games take place. - We imagined a chess club. - -\end_layout - -\begin_layout Standard -The clients pictured as green circles can be thought of as the physical - chess players. -\end_layout - -\begin_layout Standard -When a player wants to enter the our particular chess club, he must first - be let in by the doorman, called the Dispatcher in GGS. -\end_layout - -\begin_layout Standard -He then gets a name badge, and thus becomes a Player process in the system. - He is also guided in to the lobby by the Coordinator, which has the role - of the host of the chess club. -\end_layout - -\begin_layout Standard -When players wish to play against each other, they talk to the Coordinator - who pairs them up, and places them at a table. - Once they have sat down at the table, they no longer need the assistance - of the Coordinator, all further communication takes place via the table. - This can be thought of as the actual chess game commencing. - -\end_layout - -\begin_layout Standard -All the moves made in the game are recorded by the table, such that the - table can restore the game in case something would happen, such as the - table tipping over, which would represent the table process crashing. -\end_layout - -\begin_layout Standard -Once a player wishes to leave a game, or the entire facility, he should - contact the Coordinator, who revokes his name badge and the Dispatcher - will let the player out. -\end_layout - -\begin_layout Standard -With the information kept in the tables and the Coordinator combined, we - can rebuild the entire state of the server at a different location. - This can be thought of the chess club catching fire, and the Coordinator - rounding up all the tables, running to a new location and building the - club up in the exact state it was prior to the fire. -\begin_inset Float figure -wide false -sideways false -status open - -\begin_layout Plain Layout -\begin_inset Note Note -status open - -\begin_layout Plain Layout -Convert this graphics to EPS -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -begin{centering} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Graphics - filename system_structure.png - scale 40 - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -end{centering} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Caption - -\begin_layout Plain Layout -The layout of GGS -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Section -Understanding OTP -\end_layout - -\begin_layout Section -Usability -\end_layout - -\begin_layout Chapter -Results and discussion -\end_layout - -\begin_layout Section -Software development methodology -\end_layout - -\begin_layout Section -Statistics -\end_layout - -\begin_layout Chapter -Conclusion -\end_layout - -\begin_layout Standard -\begin_inset CommandInset bibtex -LatexCommand bibtex -bibfiles "bibliography" -options "plainnat" - -\end_inset - - -\end_layout - -\end_body -\end_document diff --git a/doc/report/ChaGUblasvarteng.eps b/doc/report/ChaGUblasvarteng.eps deleted file mode 100644 index bae175a2b07d03e7541ce4a85653d2e488e526b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 194390 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%0D7lxdB8U~)$`QS^MUT&~_N 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

      {db`*csf(?ZtgkNjD@?k+P( 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 B_(cE! diff --git a/doc/report/LO_CHGU_cen2rCMYK.pdf b/doc/report/LO_CHGU_cen2rCMYK.pdf deleted file mode 100644 index 3c2881fb190b5563de8d3dc9d36ea39de49fb4e4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39650 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 diff --git a/doc/report/Thesis_Template.lyx b/doc/report/Thesis_Template.lyx deleted file mode 100644 index 19b8d5f..0000000 --- a/doc/report/Thesis_Template.lyx +++ /dev/null @@ -1,352 +0,0 @@ -#LyX 1.6.3 created this file. For more info see http://www.lyx.org/ -\lyxformat 345 -\begin_document -\begin_header -\textclass report -\begin_preamble -\usepackage{indentfirst} -\usepackage{tocloft} -\usepackage{calc} -\date{} -\usepackage[section] {placeins} -\def\myClearpage{% - \ifvmode - \ifnum \@dbltopnum =\m@ne - \ifdim \pagetotal <\topskip - \hbox{}% - \fi - \fi - \fi -% \newpage - \write\m@ne{}% - \vbox{}% - \penalty -\@Mi -} -\def\myCleardoublepage{\myClearpage\if@twoside \ifodd\c@page\else - \hbox{}\if@twocolumn\hbox{}\fi\fi\fi} -\usepackage{morefloats} -\usepackage{graphicx} -\usepackage{subfig} -\usepackage{tocloft} -\renewcommand{\cftchapfont}{\bfseries} -\renewcommand{\cftchappagefont}{\bfseries} -\renewcommand{\cftchappresnum}{Chapter } -\renewcommand{\cftchapnumwidth}{6em} -\oddsidemargin 0.5in -\textwidth 6in -\topmargin 0.0in -\textheight 8.0in -\setlength\topskip{24pt} -\footskip 0.75in -\end_preamble -\use_default_options true -\language english -\inputencoding auto -\font_roman lmodern -\font_sans default -\font_typewriter default -\font_default_family rmdefault -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\paperfontsize default -\spacing double -\use_hyperref false -\papersize default -\use_geometry true -\use_amsmath 1 -\use_esint 1 -\cite_engine natbib_authoryear -\use_bibtopic false -\paperorientation portrait -\paperwidth 11in -\paperheight 8.5in -\leftmargin 1.25in -\topmargin 1in -\rightmargin 1in -\bottommargin 1.7in -\secnumdepth 3 -\tocdepth 3 -\paragraph_separation indent -\defskip medskip -\quotes_language english -\papercolumns 1 -\papersides 1 -\paperpagestyle default -\tracking_changes false -\output_changes false -\author "" -\author "" -\end_header - -\begin_body - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -pagenumbering{roman} -\end_layout - -\begin_layout Plain Layout - - -\backslash -setcounter{page}{5} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand -\backslash -contentsname{Table of Contents} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cfttoctitlefont}{ -\backslash -hfill -\backslash -Large} -\backslash -renewcommand{ -\backslash -cftaftertoctitle}{ -\backslash -hfill} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand -\backslash -cftpartdotsep{6.6} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand -\backslash -cftchapdotsep{6.6} -\end_layout - -\end_inset - - -\begin_inset CommandInset toc -LatexCommand tableofcontents - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -addcontentsline{toc}{chapter}{List of Tables} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftlottitlefont}{ -\backslash -hfill -\backslash -Large} -\backslash -renewcommand{ -\backslash -cftafterlottitle}{ -\backslash -hfill} -\backslash -renewcommand{ -\backslash -cfttabpresnum}{Table~} -\backslash -setlength -\backslash -cfttabnumwidth{60pt} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset FloatList table - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -addcontentsline{toc}{chapter}{List of Figures} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftloftitlefont}{ -\backslash -hfill -\backslash -Large} -\backslash -renewcommand{ -\backslash -cftafterloftitle}{ -\backslash -hfill} -\backslash -renewcommand{ -\backslash -cftfigpresnum}{Figure~} -\backslash -setlength -\backslash -cftfignumwidth{60pt} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset FloatList figure - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -pagenumbering{arabic} -\end_layout - -\begin_layout Plain Layout - - -\backslash -setcounter{page}{1} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Chapter -Introduction -\end_layout - -\begin_layout Standard -Text goes here... -\end_layout - -\begin_layout Section -Objectives -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -Figures go here... -\end_layout - -\begin_layout Chapter -Methodology -\end_layout - -\begin_layout Section -Overview -\end_layout - -\begin_layout Standard -Text goes here... -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -Figures go here... -\end_layout - -\end_body -\end_document diff --git a/doc/report/UTHM-Thesis-Classic-authoryear-V-05.lyx b/doc/report/UTHM-Thesis-Classic-authoryear-V-05.lyx deleted file mode 100644 index a251c39..0000000 --- a/doc/report/UTHM-Thesis-Classic-authoryear-V-05.lyx +++ /dev/null @@ -1,2262 +0,0 @@ -#LyX 1.6.7 created this file. For more info see http://www.lyx.org/ -\lyxformat 345 -\begin_document -\begin_header -\textclass scrbook -\begin_preamble -%====================== -% Written by Waluyo Adi Siswanto -% You are allowed to modify this -% in order to meet your requirements -%====================== -% this command prints empty date in title page -\date{} - -% If you want your text paragraph is left justfied -% you need to uncomment (delete %) the following command -%\raggedright - -% this command set the paragraph indentation -% if you want to modify change the value 1.5cm to your preference -\setlength{\parindent}{1.5cm} - -%This command will change the default Bibliography to References -\AtBeginDocument{ - \renewcommand{\bibname}{References} - \renewcommand{\nomname}{List of Symbols} -} - -%The following comands center the heading of chapters and -% chapter entries, the default is on the left -\addtokomafont{chapterentry}{\centering} -\addtokomafont{chapter}{\centering} - -% The following commands set the page numbers on the top right -% except in the beginning of chapters -% using fancyhdr package (page layout>heading style->fancy) -\lhead{} -\chead{} -\rhead{\thepage} -\lfoot{} -\cfoot{} -\rfoot{} -\renewcommand{\headrulewidth}{0pt} - -% The following commands set the vertical space before and after -% every chapter entry -\renewcommand*{\chapterheadendvskip}{\vspace{2cm}} -\renewcommand*{\chapterheadstartvskip}{\vspace{2.5cm}} - -% The following commands set the TOC, LOT, LOF and LOA -% this employs tocloft package -\usepackage{tocloft} -\cftpagenumbersoff{part} -\renewcommand{\cftdot}{} -\renewcommand{\cfttoctitlefont}{\hfill\Large\bfseries\sffamily} -\renewcommand{\cftaftertoctitle}{\hfill} -\renewcommand{\cftaftertoctitleskip}{2.5cm} -\renewcommand{\cftbeforetoctitleskip}{2.5cm} - -\renewcommand{\cftloftitlefont}{\hfill\Large\bfseries\sffamily} -\renewcommand{\cftafterloftitle}{\hfill \hfill -\\[3\baselineskip]{Figure No \hfill Title \hfill Page \linebreak} \vskip-50pt} -\renewcommand{\cftbeforeloftitleskip}{2.5cm} - -\renewcommand{\cftlottitlefont}{\hfill\Large\bfseries\sffamily} -\renewcommand{\cftafterlottitle}{\hfill \hfill -\\[3\baselineskip]{Table No \hfill Title \hfill Page \linebreak } -\vskip-50pt} -\renewcommand{\cftbeforelottitleskip}{2.5cm} - -\newlistof{appendices}{loa}{List of Appendices} -\renewcommand{\cftloatitlefont}{\hfill\Large\bfseries\sffamily} -\renewcommand{\cftafterloatitle}{\hfill \hfill -\\[3\baselineskip]{Appendix \hfill Title \hfill Page \linebreak} -\vskip-60pt} -\renewcommand{\cftbeforeloatitleskip}{2.5cm} - - -\renewcommand{\cftchappresnum}{Chapter } -\renewcommand{\cftchapaftersnum}{} -\renewcommand{\cftchapaftersnumb}{\qquad\quad\,\,} -\renewcommand{\cftsecpresnum}{\qquad\quad\,\,\,\, } -\renewcommand{\cftsubsecpresnum}{\quad\,\, } -\renewcommand{\cftsecaftersnum}{} -\renewcommand{\cftsecaftersnumb}{\qquad\qquad\,} -\renewcommand{\cftsubsecaftersnumb}{\quad} - -\usepackage{minitoc} - -% Redefining automatic label of Figure, Table and Eq. -\usepackage{prettyref} -\newrefformat{tab}{Table\,\ref{#1}} -\newrefformat{fig}{Figure\,\ref{#1}} -\newrefformat{eq}{Eq.\,\textup{(\ref{#1})}} - -%To remove extra vertical space in List of Symbols [added in V-05] -%\setlength{\nomitemsep}{-2\parsep} % another alternative -\setlength{\nomitemsep}{-\parsep} - -% from koma-script scrbook.cls, then modified [added in V-05] -% to shift addchap in TOC ro the right: \qquad\qquad\,\, -\renewcommand\addchap{ - \if@openright\cleardoublepage\else\clearpage - \fi - \thispagestyle{plain} - \global\@topnum\z@ - \@afterindentfalse - \secdef\@addchap\@saddchap} - \def\@addchap[#1]#2{ - \typeout{#2} - \addcontentsline{toc}{chapter}{\qquad\qquad\,\, #1} - \if@twoside\@mkboth{#1}{}\else\@mkboth{}{#1} - \fi - \addtocontents{lof}{\protect\addvspace{10\p@}} - \addtocontents{lot}{\protect\addvspace{10\p@}} - \if@twocolumn - \@topnewpage[\@makeschapterhead{#2}] - \else - \@makeschapterhead{#2} - \@afterheading - \fi - } - \def\@saddchap#1{\@mkboth{}{} - \if@twocolumn - \@topnewpage[\@makeschapterhead{#1}] - \else - \@makeschapterhead{#1} - \@afterheading - \fi -} - -\makeatletter - \renewcommand*\l@figure{\@dottedtocline{0}{1.5em}{4.3em}} - \renewcommand*\l@table{\@dottedtocline{0}{1.5em}{4.3em}} - \renewcommand{\@dotsep}{10000} -\makeatother -\end_preamble -\options liststotoc,chapterprefix,tablecaptionabove,bibtotoc,parskip=full,headings=small,numbers=noenddot -\use_default_options true -\language english -\inputencoding auto -\font_roman lmodern -\font_sans lmss -\font_typewriter lmtt -\font_default_family rmdefault -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\paperfontsize 12 -\spacing onehalf -\use_hyperref true -\pdf_title "Write the title of the thesis here" -\pdf_author "Write the student's name here" -\pdf_bookmarks true -\pdf_bookmarksnumbered true -\pdf_bookmarksopen false -\pdf_bookmarksopenlevel 1 -\pdf_breaklinks false -\pdf_pdfborder true -\pdf_colorlinks true -\pdf_backref false -\pdf_pdfusetitle true -\pdf_quoted_options "linkcolor=blue, citecolor=blue, urlcolor=blue, pdfstartview=XYZ, plainpages=false, pdfpagelabels " -\papersize a4paper -\use_geometry true -\use_amsmath 1 -\use_esint 1 -\cite_engine natbib_authoryear -\use_bibtopic false -\paperorientation portrait -\leftmargin 4cm -\topmargin 2.5cm -\rightmargin 2.5cm -\bottommargin 2.5cm -\headsep 0.5cm -\footskip 1cm -\secnumdepth 3 -\tocdepth 3 -\paragraph_separation indent -\defskip medskip -\quotes_language english -\papercolumns 1 -\papersides 1 -\paperpagestyle fancy -\tracking_changes false -\output_changes false -\author "" -\author "" -\end_header - -\begin_body - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -frontmatter -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Note Note -status open - -\begin_layout Plain Layout -This is UTHM thesis (Classic) template version 0.5 (release date) -\end_layout - -\end_inset - - -\begin_inset VSpace 2.5cm -\end_inset - - -\end_layout - -\begin_layout Title - -\family roman -\series medium -\size larger -The Thesis Title Line 1 -\family default -\series default -\size default - -\begin_inset Newline newline -\end_inset - - -\family roman -\series medium -\size larger -Thesis Title Line 2 -\family default -\series default -\size default - -\begin_inset VSpace 1.8cm -\end_inset - - -\end_layout - -\begin_layout Author -The Author -\begin_inset VSpace 2.5cm -\end_inset - - -\begin_inset Newline newline -\end_inset - - -\size normal -A thesis submitted in -\begin_inset Newline newline -\end_inset - -fulfillment of the requirement for the award of the -\begin_inset Newline newline -\end_inset - -Degree of Doctor of Philosophy / Bachelor of.../ Master of ... -\begin_inset VSpace 3.1cm -\end_inset - - -\begin_inset Newline newline -\end_inset - -FACULTY OF WHATEVER -\size default - -\begin_inset Newline newline -\end_inset - - -\size normal -UNIVERSITY WHATEVER -\begin_inset VSpace 3.1cm -\end_inset - - -\end_layout - -\begin_layout Publishers - -\size normal -SEPTEMBER 2010 -\end_layout - -\begin_layout Standard -\align center -\begin_inset Formula $ $ -\end_inset - - -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -thispagestyle{plain} -\end_layout - -\end_inset - - -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -addcontentsline{toc}{chapter}{ -\backslash -qquad -\backslash -qquad -\backslash -, -\backslash -, Declaration} -\end_layout - -\end_inset - - -\begin_inset VSpace 2cm -\end_inset - - -\end_layout - -\begin_layout Standard -\align center -I hereby declare that this thesis entitled “Write The Thesis Title Here” - is the result of my own research except as cited in the references. - This thesis has not been accepted for any degree and is not concurrently - submitted in candidature of any other degree. - -\begin_inset VSpace 2cm -\end_inset - - -\end_layout - -\begin_layout Standard -Signature -\begin_inset Formula $\hphantom{xte1}$ -\end_inset - -: -\end_layout - -\begin_layout Standard -Student -\begin_inset Formula $\hphantom{Date1}$ -\end_inset - -: Write the name of the student here -\end_layout - -\begin_layout Standard -Date -\begin_inset Formula $\hphantom{Student1}$ -\end_inset - -: Write the date here -\begin_inset VSpace 4cm -\end_inset - - -\end_layout - -\begin_layout Standard -Supervisor -\begin_inset Formula $\hphantom{Co}\,$ -\end_inset - -: Write supervisor's name here -\begin_inset VSpace 2cm -\end_inset - - -\end_layout - -\begin_layout Standard -Co-Supervisor: Write co-supervisor's name here -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\align center -\begin_inset Formula $ $ -\end_inset - - -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -thispagestyle{plain} -\end_layout - -\end_inset - - -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -addcontentsline{toc}{chapter}{ -\backslash -qquad -\backslash -qquad -\backslash -, -\backslash -, Dedication} -\end_layout - -\end_inset - - -\begin_inset VSpace 2cm -\end_inset - - -\end_layout - -\begin_layout Standard -\align center -For my beloved mother and father -\end_layout - -\begin_layout Addchap -Acknowledgment -\end_layout - -\begin_layout Standard -Here is the acknowledgment must be written. -\end_layout - -\begin_layout Standard -Praise to the Almighty... - -\end_layout - -\begin_layout Standard -Thanks to supervisor(s)... - -\end_layout - -\begin_layout Standard -Thanks to sponsor... - -\end_layout - -\begin_layout Standard -Appreciate family... - -\end_layout - -\begin_layout Standard -Thanks to friends... - -\begin_inset VSpace medskip -\end_inset - - -\end_layout - -\begin_layout Standard -\align right -Author, Place -\end_layout - -\begin_layout Addchap -Abstract -\end_layout - -\begin_layout Standard -The abstract should be brief, written in one paragraph and not exceed 300 - words. - This only demonstrates the paragraph in the abstract. - -\end_layout - -\begin_layout Addchap -Abstrak -\end_layout - -\begin_layout Standard -Here is the abstract in Malay. - Please write the abstract in Malay. - Please write the abstract in Malay. - Please write the abstract in Malay. -\end_layout - -\begin_layout Standard -\begin_inset Newpage clearpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset CommandInset toc -LatexCommand tableofcontents - -\end_inset - - -\begin_inset Newpage clearpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset FloatList figure - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -addcontentsline{toc}{chapter}{ -\backslash -qquad -\backslash -qquad -\backslash -, -\backslash -, List of Figures} -\end_layout - -\end_inset - - -\begin_inset Newpage clearpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset FloatList table - -\end_inset - - -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -addcontentsline{toc}{chapter}{ -\backslash -qquad -\backslash -qquad -\backslash -, -\backslash -, List of Tables} -\end_layout - -\end_inset - - -\begin_inset Newpage clearpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftchappresnum}{ -\backslash -quad -\backslash -, -\backslash -, -\backslash -,} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftchapaftersnum}{} -\backslash -renewcommand{ -\backslash -cftchapaftersnumb}{ -\backslash -qquad -\backslash -qquad} -\end_layout - -\begin_layout Plain Layout - - -\backslash -listofappendices -\end_layout - -\begin_layout Plain Layout - - -\backslash -addcontentsline{toc}{chapter}{ -\backslash -qquad -\backslash -qquad -\backslash -, -\backslash -, List of Appendices} -\end_layout - -\end_inset - - -\begin_inset Newpage clearpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset CommandInset nomencl_print -LatexCommand printnomenclature - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -addcontentsline{toc}{chapter}{ -\backslash -qquad -\backslash -qquad -\backslash -, -\backslash -, List of Symbols} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -mainmatter -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Chapter -Introduction -\begin_inset CommandInset label -LatexCommand label -name "cha:Introduction" - -\end_inset - - -\end_layout - -\begin_layout Standard -The specific use of the word “thesis” in this guide refers to the academic - writings submitted in fulfillment for the award of the doctoral degree - or the masters by research degree. - The word “thesis” is also used in general to refer to the master’s project - report and research dissertation, which are the documents submitted in - partial fulfillment for the award of the degree of master by coursework - or by coursework and research as well as the undergraduate project reports. - -\end_layout - -\begin_layout Standard -The Numisheet Conferences is conducted once every three years in location - between North America, Europe and Asia. - The conference attracts international participation from the metal forming - industry and university professors interested in sheet metal forming technology -, with a strong emphasis on forming simulation. - The Numisheet Conference Proceedings include the latest developments in - metal forming technology, which is a rapidly growing and challenging opportunit -y for application of science to industry. -\end_layout - -\begin_layout Section -Background of Study -\end_layout - -\begin_layout Standard -One of the hallmarks of the conference is the Numisheet Benchmark Study, - which is a set of three blind tests prepared one year prior to the conference. - Numisheet 2008 Benchmark Problem II is provided by Daimler AG. - For this benchmark, the well known S-Rail geometry as shown in -\begin_inset CommandInset ref -LatexCommand prettyref -reference "fig:R-rail-geometry" - -\end_inset - - was chosen. - In this benchmark, study the influence of different drawbeads geometries; - smooth bead and locking bead on the springback behavior for steel is to - be examined using numerical simulation. - Here is the example of citation. - -\begin_inset CommandInset citation -LatexCommand citep -key "Rodriguez2009,Poirson2007" - -\end_inset - - -\end_layout - -\begin_layout Standard -Sheet metal forming is one of the most widely used manufacturing processes - for the fabrication of a wide range of products in many industries. - The reason behind sheet metal forming gaining a lot attention in modern - technology is due to the ease with which metal may be formed into useful - shapes by plastic deformation processes. -\end_layout - -\begin_layout Standard -\begin_inset Float figure -placement h -wide false -sideways false -status open - -\begin_layout Plain Layout -\align center -\begin_inset Graphics - filename sample.png - width 80col% - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Caption - -\begin_layout Plain Layout -S-rail geometry -\begin_inset CommandInset label -LatexCommand label -name "fig:R-rail-geometry" - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Chapter -Literature Review -\begin_inset CommandInset label -LatexCommand label -name "cha:Literature-Review" - -\end_inset - - -\end_layout - -\begin_layout Standard -The sheet metal forming process, in theory, can be viewed as relatively - straight forward operation where a sheet of material is plastically deformed - into desired shape. - -\begin_inset CommandInset citation -LatexCommand cite -key "Schell2002" - -\end_inset - - has investigated musical melodies. -\end_layout - -\begin_layout Section -Practical Usage -\end_layout - -\begin_layout Standard -In practice, however, variations in blank dimensions, material properties - and environmental conditions make the predictability and reproducibility - of a sheet metal forming process difficult. - Apart from this, springback properties of sheet metal make it extremely - tedious to design appropriate tooling for a given process. - -\begin_inset CommandInset citation -LatexCommand cite -key "Poirson2007" - -\end_inset - - concluded the analysis as shown in -\begin_inset CommandInset ref -LatexCommand prettyref -reference "tab:Data-structure" - -\end_inset - -. -\end_layout - -\begin_layout Standard -The explanation of the Hubolt formula -\begin_inset Formula \begin{equation} -f(t)=\intop_{s0}^{s1}d\left(x\right)\label{eq:hubolt}\end{equation} - -\end_inset - -where -\begin_inset Formula $x$ -\end_inset - - is the displacement. -\end_layout - -\begin_layout Standard -\begin_inset CommandInset ref -LatexCommand prettyref -reference "eq:hubolt" - -\end_inset - - can be derived from another equation as written by -\begin_inset Formula \begin{equation} -\varepsilon_{x}=\dfrac{\partial u}{\partial x}\label{eq:fdfdfd}\end{equation} - -\end_inset - - -\end_layout - -\begin_layout Standard -This is another example -\begin_inset Formula \begin{equation} -\left[N\right]=\left[\begin{array}{ccc} -N_{1} & N_{2} & N_{3}\end{array}\right]^{T}\label{eq:ddssdd}\end{equation} - -\end_inset - -as mention in -\begin_inset CommandInset ref -LatexCommand prettyref -reference "cha:Introduction" - -\end_inset - -. -\end_layout - -\begin_layout Section -dded -\end_layout - -\begin_layout Subsection -dddd -\end_layout - -\begin_layout Standard -\begin_inset Float table -placement h -wide false -sideways false -status open - -\begin_layout Plain Layout - -\end_layout - -\begin_layout Plain Layout -\begin_inset Caption - -\begin_layout Plain Layout -Data structure -\begin_inset CommandInset label -LatexCommand label -name "tab:Data-structure" - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\align center -\begin_inset Tabular - - - - - - - - -\begin_inset Text - -\begin_layout Plain Layout -node -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -x -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -y -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -z -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -1 -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout - -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout - -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout - -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -2 -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout - -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout - -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout - -\end_layout - -\end_inset - - - - -\end_inset - - -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -DVI -\begin_inset CommandInset nomenclature -LatexCommand nomenclature -symbol "DVI" -description "Device Independent" - -\end_inset - -, -\begin_inset Formula $\sigma$ -\end_inset - - -\begin_inset CommandInset nomenclature -LatexCommand nomenclature -symbol "$\\sigma$" -description "Nominal Stress" - -\end_inset - - -\end_layout - -\begin_layout Chapter -Methodology -\end_layout - -\begin_layout Standard -dsds -\end_layout - -\begin_layout Standard -bla bla bla -\end_layout - -\begin_layout Section -Title -\end_layout - -\begin_layout Standard -bla bla bla -\end_layout - -\begin_layout Section -Another Title -\end_layout - -\begin_layout Standard -bla bla bla -\end_layout - -\begin_layout Standard -\begin_inset Formula \begin{equation} -ff\end{equation} - -\end_inset - - -\end_layout - -\begin_layout Chapter -Title of Chapter 4 -\end_layout - -\begin_layout Standard -bla bla bla -\end_layout - -\begin_layout Section -Title -\end_layout - -\begin_layout Standard -bla bla bla -\end_layout - -\begin_layout Section -Another Title -\end_layout - -\begin_layout Standard -bla bla bla -\end_layout - -\begin_layout Chapter -Title of Chapter 5 -\end_layout - -\begin_layout Standard -bla bla bla bla bla -\end_layout - -\begin_layout Section -Title -\end_layout - -\begin_layout Standard -According to -\begin_inset CommandInset citation -LatexCommand citet -key "Abdullah1989" - -\end_inset - - also -\begin_inset CommandInset citation -LatexCommand citet -key "Creme2003" - -\end_inset - -, bla bla bla. -\end_layout - -\begin_layout Section -Another Title -\end_layout - -\begin_layout Standard -bla bla bla -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -setlength{ -\backslash -parskip}{0.3cm} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset CommandInset bibtex -LatexCommand bibtex -bibfiles "thesis" -options "UTHM-ref-style-V-04" - -\end_inset - - -\end_layout - -\begin_layout Part* -APPENDICES -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -thispagestyle{empty} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -renewcommand*{ -\backslash -chapterheadendvskip}{ -\backslash -vspace{2cm}} -\backslash -renewcommand*{ -\backslash -chapterheadstartvskip}{ -\backslash -vspace{1cm}} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\start_of_appendix -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -makeatletter -\end_layout - -\begin_layout Plain Layout - - -\backslash -def -\backslash -@chapter[#1]#2{ -\backslash -ifnum -\backslash -c@secnumdepth > -\backslash -m@ne -\end_layout - -\begin_layout Plain Layout - - -\backslash -if@mainmatter -\end_layout - -\begin_layout Plain Layout - - -\backslash -refstepcounter{chapter}% -\end_layout - -\begin_layout Plain Layout - - -\backslash -typeout{ -\backslash -@chapapp -\backslash -space -\backslash -thechapter.}% -\end_layout - -\begin_layout Plain Layout - - -\backslash -addcontentsline{loa}{chapter}% -\end_layout - -\begin_layout Plain Layout - -{ -\backslash -protect -\backslash -numberline{ -\backslash -thechapter}#1}% -\end_layout - -\begin_layout Plain Layout - - -\backslash -else -\end_layout - -\begin_layout Plain Layout - - -\backslash -addcontentsline{loa}{chapter}{#1}% -\end_layout - -\begin_layout Plain Layout - - -\backslash -fi -\end_layout - -\begin_layout Plain Layout - - -\backslash -else -\end_layout - -\begin_layout Plain Layout - - -\backslash -addcontentsline{loa}{chapter}{#1}% -\end_layout - -\begin_layout Plain Layout - - -\backslash -fi -\end_layout - -\begin_layout Plain Layout - - -\backslash -chaptermark{#1}% -\end_layout - -\begin_layout Plain Layout - - -\backslash -addtocontents{lot}{ -\backslash -protect -\backslash -addvspace{10 -\backslash -p@}}% -\end_layout - -\begin_layout Plain Layout - - -\backslash -addtocontents{lof}{ -\backslash -protect -\backslash -addvspace{10 -\backslash -p@}}% -\end_layout - -\begin_layout Plain Layout - - -\backslash -if@twocolumn -\end_layout - -\begin_layout Plain Layout - - -\backslash -@topnewpage[ -\backslash -@makechapterhead{#2}]% -\end_layout - -\begin_layout Plain Layout - - -\backslash -else -\end_layout - -\begin_layout Plain Layout - - -\backslash -@makechapterhead{#2}% -\end_layout - -\begin_layout Plain Layout - - -\backslash -@afterheading -\end_layout - -\begin_layout Plain Layout - - -\backslash -fi} -\end_layout - -\begin_layout Plain Layout - - -\backslash -makeatother -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -addtocontents{toc}{ -\backslash -protect -\backslash -setcounter{tocdepth}{0}} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Chapter -Write Title Here -\end_layout - -\begin_layout Standard -You can see here the equation number is consistent with Appendix numbering - system -\end_layout - -\begin_layout Standard -\begin_inset Formula \begin{equation} -\left[k^{e}\right]=\dfrac{AE}{L}\left[\begin{array}{cc} -1 & -1\\ --1 & 1\end{array}\right]\end{equation} - -\end_inset - - -\end_layout - -\begin_layout Section -Section title 1 here -\end_layout - -\begin_layout Standard -Text text text of first paragraph -\end_layout - -\begin_layout Standard -Now second paragraph. - -\begin_inset CommandInset citation -LatexCommand cite -key "Bongers1998" - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Formula \begin{equation} -f\left(x\right)=3x^{2}+\intop_{0}^{20}45x^{2}\textrm{d}x\end{equation} - -\end_inset - - -\end_layout - -\begin_layout Section -Section title 2 here -\end_layout - -\begin_layout Standard -Text text text of first paragraph -\end_layout - -\begin_layout Standard -Now second paragraph -\end_layout - -\begin_layout Chapter -Source Code for Initial Model -\end_layout - -\begin_layout Standard -The following codes are written in LaTe -\begin_inset ERT -status open - -\begin_layout Plain Layout - -\end_layout - -\end_inset - -X preamble -\end_layout - -\begin_layout Standard -\begin_inset listings -lstparams "basicstyle={\small\ttfamily},breaklines=true,numbers=left" -inline false -status open - -\begin_layout Plain Layout - -%====================== -\end_layout - -\begin_layout Plain Layout - -% Written by Waluyo Adi Siswanto -\end_layout - -\begin_layout Plain Layout - -% You are allowed to modify this -\end_layout - -\begin_layout Plain Layout - -% in order to meet your requirements -\end_layout - -\begin_layout Plain Layout - -%====================== -\end_layout - -\begin_layout Plain Layout - -% this command prints empty date in title page -\end_layout - -\begin_layout Plain Layout - - -\backslash -date{} -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\begin_layout Plain Layout - -% this command set the paragraph indentation -\end_layout - -\begin_layout Plain Layout - -% if you want to modify change the value 1.5cm to your preference -\end_layout - -\begin_layout Plain Layout - - -\backslash -setlength{ -\backslash -parindent}{1.5cm} -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\begin_layout Plain Layout - -%This command will change the default Bibliography to References -\end_layout - -\begin_layout Plain Layout - - -\backslash -AtBeginDocument{ -\backslash -renewcommand{ -\backslash -bibname}{References}} -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\begin_layout Plain Layout - -%The following comands center the heading of chapters and -\end_layout - -\begin_layout Plain Layout - -% chapter entries, the default is on the left -\end_layout - -\begin_layout Plain Layout - - -\backslash -addtokomafont{chapterentry}{ -\backslash -centering} -\end_layout - -\begin_layout Plain Layout - - -\backslash -addtokomafont{chapter}{ -\backslash -centering} -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\begin_layout Plain Layout - -% The following commands set the page numbers on the top right -\end_layout - -\begin_layout Plain Layout - -% except in the beginning of chapters -\end_layout - -\begin_layout Plain Layout - -% using fancyhdr package (page layout>heading style->fancy) -\end_layout - -\begin_layout Plain Layout - - -\backslash -lhead{} -\end_layout - -\begin_layout Plain Layout - - -\backslash -chead{} -\end_layout - -\begin_layout Plain Layout - - -\backslash -rhead{ -\backslash -thepage} -\end_layout - -\begin_layout Plain Layout - - -\backslash -lfoot{} -\end_layout - -\begin_layout Plain Layout - - -\backslash -cfoot{} -\end_layout - -\begin_layout Plain Layout - - -\backslash -rfoot{} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -headrulewidth}{0pt} -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\begin_layout Plain Layout - -% The following commands set the vertical space before and after -\end_layout - -\begin_layout Plain Layout - -% every chapter entry -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand*{ -\backslash -chapterheadendvskip}{ -\backslash -vspace{2cm}} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand*{ -\backslash -chapterheadstartvskip}{ -\backslash -vspace{2.5cm}} -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\begin_layout Plain Layout - -% The following commands set the TOC, LOT and LOF -\end_layout - -\begin_layout Plain Layout - -% this employs tocloft package -\end_layout - -\begin_layout Plain Layout - - -\backslash -usepackage{tocloft} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftdot}{} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cfttoctitlefont}{ -\backslash -hfill -\backslash -Large -\backslash -bfseries -\backslash -sffamily} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftaftertoctitle}{ -\backslash -hfill} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftaftertoctitleskip}{2.5cm} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftbeforetoctitleskip}{2.5cm} -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftloftitlefont}{ -\backslash -hfill -\backslash -Large -\backslash -bfseries -\backslash -sffamily} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftafterloftitle}{ -\backslash -hfill} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftafterloftitleskip}{2.5cm} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftbeforeloftitleskip}{2.5cm} -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftlottitlefont}{ -\backslash -hfill -\backslash -Large -\backslash -bfseries -\backslash -sffamily} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftafterlottitle}{ -\backslash -hfill} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftafterlottitleskip}{2.5cm} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftbeforelottitleskip}{2.5cm} -\end_layout - -\begin_layout Plain Layout - - -\backslash -usepackage{tocloft} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftdot}{} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cfttoctitlefont}{ -\backslash -hfill -\backslash -Large -\backslash -bfseries -\backslash -sffamily} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftaftertoctitle}{ -\backslash -hfill} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftaftertoctitleskip}{2.5cm} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftbeforetoctitleskip}{2.5cm} -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftloftitlefont}{ -\backslash -hfill -\backslash -Large -\backslash -bfseries -\backslash -sffamily} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftafterloftitle}{ -\backslash -hfill} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftafterloftitleskip}{2.5cm} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftbeforeloftitleskip}{2.5cm} -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftlottitlefont}{ -\backslash -hfill -\backslash -Large -\backslash -bfseries -\backslash -sffamily} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftafterlottitle}{ -\backslash -hfill} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftafterlottitleskip}{2.5cm} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cftbeforelottitleskip}{2.5cm} -\end_layout - -\begin_layout Plain Layout - -\end_layout - -\begin_layout Plain Layout - - -\backslash -usepackage{minitoc} -\end_layout - -\begin_layout Plain Layout - -% Redefining automatic label of -\end_layout - -\begin_layout Plain Layout - -% Figure, Table and Eq. - -\end_layout - -\begin_layout Plain Layout - - -\backslash -usepackage{prettyref} -\end_layout - -\begin_layout Plain Layout - - -\backslash -newrefformat{tab}{Table -\backslash -, -\backslash -ref{#1}} -\end_layout - -\begin_layout Plain Layout - - -\backslash -newrefformat{fig}{Figure -\backslash -, -\backslash -ref{#1}} -\end_layout - -\begin_layout Plain Layout - - -\backslash -newrefformat{eq}{Eq. -\backslash -, -\backslash -textup{( -\backslash -ref{#1})}} -\end_layout - -\end_inset - - -\end_layout - -\end_body -\end_document diff --git a/doc/report/bibliography.bib b/doc/report/bibliography.bib deleted file mode 100644 index 20c37ad..0000000 --- a/doc/report/bibliography.bib +++ /dev/null @@ -1,110 +0,0 @@ -@book{Knuth:1997:ACP:260999, - author = {Knuth, Donald E.}, - title = {The art of computer programming, volume 1 (3rd ed.): fundamental algorithms}, - year = {1997}, - isbn = {0-201-89683-4}, - publisher = {Addison Wesley Longman Publishing Co., Inc.}, - address = {Redwood City, CA, USA}, -} - -@inproceedings{Savor:1997:HSA:851010.856089, - author = {Savor, T. and Seviora, R. E.}, - title = {Hierarchical Supervisors For Automatic Detection Of Software Failures}, - booktitle = {Proceedings of the Eighth International Symposium on Software Reliability Engineering}, - series = {ISSRE '97}, - year = {1997}, - isbn = {0-8186-8120-9}, - pages = {48--}, - url = {http://portal.acm.org/citation.cfm?id=851010.856089}, - acmid = {856089}, - publisher = {IEEE Computer Society}, - address = {Washington, DC, USA}, - keywords = {automatic collection, automatic detection, base supervisor layer, call processing software, computational cost, correct behavior, detailed behavior checking, direct single layer supervisor, failure data, fault localization, hierarchical approach, hierarchical supervisors, online failure detection, path detection layer, random telephone traffic, real time reactive systems, requirement specification, seeded failures, small telephone exchange, software failure detection, software performance evaluation, software supervision, specification nondeterminism}, -} - -@article{Vinoski:2007:RE:1304062.1304553, - author = {Vinoski, Steve}, - title = {Reliability with Erlang}, - journal = {IEEE Internet Computing}, - volume = {11}, - issue = {6}, - month = {November}, - year = {2007}, - issn = {1089-7801}, - pages = {79--81}, - numpages = {3}, - url = {http://portal.acm.org/citation.cfm?id=1304062.1304553}, - doi = {10.1109/MIC.2007.132}, - acmid = {1304553}, - publisher = {IEEE Educational Activities Department}, - address = {Piscataway, NJ, USA}, - keywords = {toward integration, Erlang, programming language, middleware, telecommunications, reliability, enterprise-integration}, -} - -@book{Cesarini:2009:EP:1717841, - author = {Cesarini, Francesco and Thompson, Simon}, - title = {ERLANG Programming}, - year = {2009}, - isbn = {0596518188, 9780596518189}, - edition = {1st}, - publisher = {O'Reilly Media, Inc.}, -} - -@misc{armstrong2011, - author = {Joe Armstrong}, - title = {If Erlang is the answer, then what is the question?}, - year = {2011}, - address = {IT University, Gothenburg}, -} - -@phdthesis{Agha:1985:AMC:912083, - author = {Agha, Gul Abdulnabi}, - title = {Actors: a model of concurrent computation in distributed systems (parallel processing, semantics, open, programming languages, artificial intelligence)}, - year = {1985}, - note = {AAI8520855}, - publisher = {University of Michigan}, - address = {Ann Arbor, MI, USA}, -} - -@phdthesis{Armstrong03, - author = {Joe Armstrong}, - institution = {KTH, Microelectronics and Information Technology, IMIT}, - pages = {xii, 283}, - publisher = {Mikroelektronik och informationsteknik}, - school = {KTH, Microelectronics and Information Technology, IMIT}, - title = {Making reliable distributed systems in the presence of software errors}, - series = {Trita-IMIT. LECS}, - number = {03:09}, - year = {2003} -} - -@inproceedings{Bondi:2000:CSI:350391.350432, - author = {Bondi, Andr\'{e} B.}, - title = {Characteristics of scalability and their impact on performance}, - booktitle = {Proceedings of the 2nd international workshop on Software and performance}, - series = {WOSP '00}, - year = {2000}, - isbn = {1-58113-195-X}, - location = {Ottawa, Ontario, Canada}, - pages = {195--203}, - numpages = {9}, - url = {http://doi.acm.org/10.1145/350391.350432}, - doi = {http://doi.acm.org/10.1145/350391.350432}, - acmid = {350432}, - publisher = {ACM}, - address = {New York, NY, USA}, - keywords = {load scalability, performance, structural and space scalability}, -} - -@article{10.1109/MS.2001.936218, - author = {Jeffrey Voas}, - title = {Fault Tolerance}, - journal ={IEEE Software}, - volume = {18}, - issn = {0740-7459}, - year = {2001}, - pages = {54-57}, - doi = {http://doi.ieeecomputersociety.org/10.1109/MS.2001.936218}, - publisher = {IEEE Computer Society}, - address = {Los Alamitos, CA, USA}, -} diff --git a/doc/report/gu_logo.png b/doc/report/gu_logo.png deleted file mode 100644 index 1f83e775d3efc7fcb380d0ca3357bda45cc64dbd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15026 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 Zij+^-R=jkbVF?vMK}J=&M$$Ow{{T^?Qvd(} diff --git a/doc/report/report.lyx b/doc/report/report.lyx deleted file mode 100644 index 95e04b7..0000000 --- a/doc/report/report.lyx +++ /dev/null @@ -1,1055 +0,0 @@ -#LyX 1.6.9 created this file. For more info see http://www.lyx.org/ -\lyxformat 345 -\begin_document -\begin_header -\textclass report -\begin_preamble -\usepackage{indentfirst} -\usepackage{tocloft} -\usepackage{calc} -\date{} -\usepackage[section] {placeins} -\def\myClearpage{% - \ifvmode - \ifnum \@dbltopnum =\m@ne - \ifdim \pagetotal <\topskip - \hbox{}% - \fi - \fi - \fi -% \newpage - \write\m@ne{}% - \vbox{}% - \penalty -\@Mi -} -\def\myCleardoublepage{\myClearpage\if@twoside \ifodd\c@page\else - \hbox{}\if@twocolumn\hbox{}\fi\fi\fi} -\usepackage{morefloats} -\usepackage{graphicx} -\usepackage{subfig} -\usepackage{tocloft} -\renewcommand{\cftchapfont}{\bfseries} -\renewcommand{\cftchappagefont}{\bfseries} -\renewcommand{\cftchappresnum}{Chapter } -\renewcommand{\cftchapnumwidth}{6em} - -\oddsidemargin 0.5in -\textwidth 6in -\topmargin 0.0in -\textheight 8.0in -\setlength\topskip{24pt} -\footskip 0.75in - -\usepackage[compact]{titlesec} - - -\titleformat{\chapter}[display] -{\vskip-8em\normalfont\bfseries} -{\LARGE\raggedright\thechapter} -{14ex} -{\vspace{-20ex}% -\LARGE\raggedleft} -[\vspace{1ex}% -{\titlerule[1pt]}] - -\usepackage[absolute]{textpos} -\end_preamble -\use_default_options true -\language english -\inputencoding auto -\font_roman lmodern -\font_sans default -\font_typewriter default -\font_default_family rmdefault -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\paperfontsize default -\spacing onehalf -\use_hyperref false -\papersize a4paper -\use_geometry false -\use_amsmath 1 -\use_esint 1 -\cite_engine natbib_authoryear -\use_bibtopic false -\paperorientation portrait -\paperwidth 11in -\paperheight 8.5in -\leftmargin 1.25in -\topmargin 0in -\rightmargin 1in -\bottommargin 1.7in -\secnumdepth 2 -\tocdepth 2 -\paragraph_separation indent -\defskip medskip -\quotes_language english -\papercolumns 1 -\papersides 1 -\paperpagestyle empty -\tracking_changes false -\output_changes false -\author "" -\author "" -\end_header - -\begin_body - -\begin_layout Standard -\begin_inset Note Note -status open - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -begin{textblock*}{297mm}(0mm,10mm) -\end_layout - -\begin_layout Plain Layout - - -\backslash -includegraphics[width= -\backslash -paperwidth-10mm]{ChaGUblasvarteng.eps} -\end_layout - -\begin_layout Plain Layout - - -\backslash -end{textblock*} -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Note Note -status open - -\begin_layout Plain Layout - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -begin{textblock*}{297mm}(73mm,10mm) -\end_layout - -\begin_layout Plain Layout - - -\backslash -includegraphics[width= -\backslash -paperwidth/3]{LO_CHGU_cen2rCMYK.eps} -\end_layout - -\begin_layout Plain Layout - - -\backslash -end{textblock*} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Title -Generic Game Server -\end_layout - -\begin_layout Author -Jonatan Pålsson -\begin_inset Newline newline -\end_inset - -Niklas Landin -\begin_inset Newline newline -\end_inset - -Richard Pannek -\begin_inset Newline newline -\end_inset - -Matias Petterson -\end_layout - -\begin_layout Abstract -This is the abstract! -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -pagenumbering{roman} -\end_layout - -\begin_layout Plain Layout - - -\backslash -setcounter{page}{5} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand -\backslash -contentsname{Table of Contents} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand{ -\backslash -cfttoctitlefont}{ -\backslash -hfill -\backslash -Large} -\backslash -renewcommand{ -\backslash -cftaftertoctitle}{ -\backslash -hfill} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand -\backslash -cftpartdotsep{6.6} -\end_layout - -\begin_layout Plain Layout - - -\backslash -renewcommand -\backslash -cftchapdotsep{6.6} -\end_layout - -\end_inset - - -\begin_inset CommandInset toc -LatexCommand tableofcontents - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Newpage newpage -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -pagenumbering{arabic} -\end_layout - -\begin_layout Plain Layout - - -\backslash -setcounter{page}{1} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Chapter -Introduction -\end_layout - -\begin_layout Section -Background -\end_layout - -\begin_layout Section -Purpose -\end_layout - -\begin_layout Standard -The purpose of the GGS project is to create a scalable and fault tolerant - server, while still allowing the server to be as generic as possible. - These three italicised terms need some explanation. -\end_layout - -\begin_layout Standard -Scalability in computer science is a large topic and is commonly divided - into sub-fields, two of which are -\emph on -structural scalability -\emph default - and -\emph on -load scalability -\emph default - -\begin_inset CommandInset citation -LatexCommand citet -key "Bondi:2000:CSI:350391.350432" - -\end_inset - -. - These two issues are addressed in this thesis. - Structural scalability means expanding an architecture, e.g. - adding nodes to a system, without requiring modification of the system. - Load scalability means using the available resources in a way which allows - handling increasing load, e.g more users, gracefully. -\end_layout - -\begin_layout Section -Challenges -\end_layout - -\begin_layout Standard -The main challenge is to provide a reliable, high-performing and scalable - server without making it too difficult for game developers do write their - game. - It should for example be possible for them to use the language they are - familiar with. - In our GGS prototype we added a module for a virtual machine which is highly - exchangable. - For now we have a JavaScript VM (Spidermonkey) and a ActionScript VM. -\end_layout - -\begin_layout Subsection -Basis -\end_layout - -\begin_layout Section -Delimitations -\end_layout - -\begin_layout Subsection -Types of games -\end_layout - -\begin_layout Standard -In theory no limitations, but in reality it will be limitations. - Many factors are involved here. - Implementation of protocol, storage possibilities, server capacity, language - support. - In real time games a low latency is very important not a high bandwidth - because the games already send very little data, ~ 80 bytes. - Lag of below 250 ms is good, lag up to 500 ms payable and beyond that the - lag is noticeable. -\end_layout - -\begin_layout Section -Method -\end_layout - -\begin_layout Subsection -Development process -\end_layout - -\begin_layout Standard -May be Extreme Programming(XP), need to check this out further. - Maybe adapt so we can say that we use a standardized software development - method. -\end_layout - -\begin_layout Subsubsection -Demand specification -\end_layout - -\begin_layout Subsection -Design -\end_layout - -\begin_layout Subsection -Testing and evaluation -\end_layout - -\begin_layout Standard -Can we use quickcheck? -\end_layout - -\begin_layout Chapter -Theory -\end_layout - -\begin_layout Section -Performance -\end_layout - -\begin_layout Standard -How many players can we have on a server? Performance differences between - games? e.g can one game have thousands players on a server and another only - have hundreds? Questions to be discussed here. - -\begin_inset Note Note -status open - -\begin_layout Plain Layout -Create a game with several thousand players, see how our server scales, - how can we improve the performance? Sharding isn’t very nice.. - alternatives? Improve the speed of sharding? -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Section -Choice of network protocol -\end_layout - -\begin_layout Standard -There are three main ways in which computer communication over the Internet - usually takes place; TCP, UDP and HTTP. - The first two are transport layer protocols, which are commonly used to - transport application layer protocols, such as HTTP. - TCP and UDP can not be used on their own, without an application layer - protocol on top. - Application layer protocols such as HTTP on the other hand needs a transport - layer protocol in order to work. - -\end_layout - -\begin_layout Subsection -HTTP -\end_layout - -\begin_layout Standard -Since HTTP is so widely used on the Internet today in web servers, it is - available on most Internet connected devices. - This means that if HTTP is used in GGS, firewalls will not pose problems, - which is a great benefit. - However, due to the intended usage of HTTP in web servers, the protocol - was designed to be stateless and client-initiated. - In order to maintain a state during a game session using HTTP, some sort - of token would have to be passed between client and server at all times, - much like how a web server works. - These facts combined makes HTTP unsuitable for our purposes, since GGS - requires a state to be maintained throughout a session, and also needs - to push data from the server to clients without the clients requesting - data. - It should also be mentioned that HTTP uses the TCP protocol for transport, - and what is said about TCP also applies to HTTP. - -\end_layout - -\begin_layout Subsection -UDP -\end_layout - -\begin_layout Standard -Many online games use UDP as the carrier for their application layer protocol. - UDP moves data across a network very quickly, however it does not ensure - that the data transferred arrives in consistent manner. - Data sent via UDP may be repeated, lost or out of order. - To ensure the data transferred is in good shape, some sort of error checking - mechanisms must be implemented. - UDP is a good choice for applications where it is more important that data - arrives in a timely manner than that all data arrives undamaged, it is - thus very suitable for media streaming, for example. - In GGS reliability of transfer was chosen before the speed of the transfer, - ruling out UDP as the transport later protocol. - -\end_layout - -\begin_layout Subsection -TCP -\end_layout - -\begin_layout Standard -For reliable transfers, TCP is often used on the Internet. - Built in to the protocol are the error checking and correction mechanisms - missing in UDP. - This ensures the consistency of data, but also makes the transfer slower - than if UDP had been used. - In GGS, data consistency is more important than transfer speeds, and thus - TCP is a better alternative than UDP. -\end_layout - -\begin_layout Subsection -Encryption -\end_layout - -\begin_layout Subsubsection -Performance penalties -\end_layout - -\begin_layout Subsection -Availability -\end_layout - -\begin_layout Standard -One important factor of a server is the availability, a server that you - can not connect to is a bad server. - Erlang has several features to increase the availability, for example hot - code replacement. - It is also critical to have a good design, we want to separate each part - of the server and thus avoiding that the whole server will crash. - -\end_layout - -\begin_layout Standard -\begin_inset Note Note -status open - -\begin_layout Plain Layout -Players are unsatisfied with the service of WoW Telecoms have the same problem - of having to migrate users from one node to another, this is called handover -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Subsection -Scalability -\end_layout - -\begin_layout Standard -Because P2P game architectures are a constant goal for cheaters and because - “Cheating is a major concern in network games as it degrades the experience - of the majority of players who are honest” and preventing cheating in P2P - game architectures is very difficult game developers try to use Client - - Server architectures which have a natural problem to scale. - In this paper we want to show some strategies to achieve scalability. -\end_layout - -\begin_layout Subsubsection -UUID -\end_layout - -\begin_layout Subsection -Security -\end_layout - -\begin_layout Standard -We only support languages running in a sandboxed environment. - Each game session is started in its own sandbox. - The sandboxing isolates the games in such a way that they can not interfere - with each other. - If sandboxing was not in place, one game could potentially modify the contents - of a different game. - A similar approach is taken with the persistent storage we provide. - In the storage each game has its own namespace, much like a table in a - relational database. - A game is not allowed to venture outside this namespace, and can because - of this not modify the persistent data of other games. -\end_layout - -\begin_layout Chapter -Overview -\end_layout - -\begin_layout Section -Techniques for ensuring reliability -\end_layout - -\begin_layout Standard -One of the main goals of the project is to achieve high reliability. - A highly reliable application is one crashes very, very rarely -\begin_inset Note Note -status open - -\begin_layout Plain Layout -CITATION NEEDED -\end_layout - -\end_inset - -. - There are some tools for creating reliable applications built in to Erlang. - -\end_layout - -\begin_layout Itemize -Links between processes. - When a process spawns a new child process, and the child process later - exits, the parent process is notified of the exit. - -\end_layout - -\begin_layout Itemize -Transparent distribution over a network of processors. - When several nodes participate in a network, it does not matter on which - of these machines a process is run. - Communication between processes does not depend on the node in which each - process is run. - -\end_layout - -\begin_layout Itemize -Hot code replacements. - Two versions of the same module can reside in the memory of Erlang at any - time. - This means that a simple swap between these versions can take place very - quickly, and without stopping the machine. -\end_layout - -\begin_layout Standard -These three features are some of the basic building blocks for more sophisticate -d reliability systems in Erlang. - Many times it is not necessary to use these features directly, but rather - through the design patterns described below. -\end_layout - -\begin_layout Subsection -Supervisor structure -\end_layout - -\begin_layout Standard -By linking processes together and notifying parents when children exit, - we can create supervisors. - A supervisor is a common approach in ensuring that an application functions - in the way it was intended. - When a process misbehaves, the supervisor takes some action to restore - the process to a functional state. - -\end_layout - -\begin_layout Standard -There are several approaches to supervisor design in general (when not just - considering how they work in Erlang). - One common approach is to have the supervisor look in to the state of the - process(es) it supervises, and let the supervisor make decisions based - on this state. - The supervisor has a specification of how the process it supervises should - function, and this is how it makes decisions. - -\end_layout - -\begin_layout Standard -In Erlang, we have a simple version of supervisors. - We do not inspect the state of the processes being supervised. - We do have a specification of how the supervised processes should behave, - but on a higher level. - The specification describes things such as how many times in a given time - interval a child process may crash, which processes need restarting when - crashes occur, and so forth. - -\end_layout - -\begin_layout Standard -When the linking of processes in order to monitor exit behaviour is coupled - with the transparent distribution of Erlang, a very powerful supervision - system is created. - For instance, we can restart a failing process on a different, new node, - with minimal impact on the system as a whole. - -\end_layout - -\begin_layout Standard -In GGS, we have separated the system in to two large supervised parts. - We try to restart a crashing child separately, if this fails too many times, - we restart the nearest supervisor of this child. - This ensures separation of the subsystems so that a crash is as isolated - as possible. -\begin_inset Float figure -wide false -sideways false -status collapsed - -\begin_layout Plain Layout -\begin_inset Note Note -status open - -\begin_layout Plain Layout -We should really do this graphic in EPS instead of PNG -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -begin{centering} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Graphics - filename supervisors.png - scale 40 - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -end{centering} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Caption - -\begin_layout Plain Layout -The supervisor structure of GGS -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -The graphic above shows our two subsystems, the coordinator subsystem and - the dispatcher subsystem. - Since these two systems perform very different tasks they have been separated. - Each subsystem has one worker process, the coordinator or the dispatcher. - The worker process keeps a state which should not be lost upon a crash. -\end_layout - -\begin_layout Standard -We have chosen to let faulty processes crash very easily when they receive - bad data, or something unexpected happens. - The alternative to crashing would have been to try and fix this faulty - data, or to foresee the unexpected events. - We chose not to do this because it is so simple to monitor and restart - processes, and so difficult to try and mend broken states. - This approach is something widely deployed in the Erlang world, and developers - are often encouraged to “Let it crash”. -\end_layout - -\begin_layout Standard -To prevent any data loss, the good state of the worker processes is stored - in their respective backup processes. - When a worker process (re)starts, it asks the backup process for any previous - state, if there is any that state is loaded in to the worker and it proceeds - where it left off. - If on the other hand no state is available, a special message is delivered - instead, making the worker create a new state, this is what happens when - the workers are first created. -\end_layout - -\begin_layout Subsection -Hot code replacement -\end_layout - -\begin_layout Subsection -Implementation -\end_layout - -\begin_layout Subsubsection -User interface -\end_layout - -\begin_layout Chapter -Problems -\end_layout - -\begin_layout Section -Erlang JS -\end_layout - -\begin_layout Standard -To be able to run JavaScript on our server we needed to embed a JavaScript - engine within the server. - After a thorough investigation erlang_js became our choice. - erlang_js provides direct communication with a JavaScript VM (Virtual Machine). - This was exactly what we wanted, but we also needed the possibility to - communicate from erlang_js to Erlang. - This functionality was not yet implemented in erlang_js, due to lack of - time. -\end_layout - -\begin_layout Standard -There were two possible solutions to the problem. - We could rewrite some part of erlang_js, or we could switch erlang_js for - some other JavaScript engine. - Searching for other engines we found erlv8 and beam.js which provided the - functionality that we wanted. - As we tested beam.js it occurred random crashes of the whole Erlang environment. - These crashes were related to the use of erlv8 in beam.js and we decided - that the use of erlv8 was not an alternative due to the stability issues. -\end_layout - -\begin_layout Standard -To get the functionality needed we decided to implement this in erlang_js. -\end_layout - -\begin_layout Subsection -UUID -\end_layout - -\begin_layout Standard -Erlang identifies processes uniquely throughout the entire Erlang network - using process IDs (PID). - When we wish to refer to erlang processes from outside our erlang system, - for example in a virtual machine for a different language, possibly on - a different machine, these PIDs are no longer useful. - -\end_layout - -\begin_layout Standard -This problem is not new, and a common solution is to use a Universally Unique - Identifier, a UUID. - These identifiers are generated both using randomization and using time. - A reasonably large number of UUIDs can be generated before a collision - should occur. - There are standard tools in many UNIX systems to generate UUIDs, we chose - to use the uuidgen command, which employs an equidistributed combined Tausworth -e generator. -\end_layout - -\begin_layout Section -Design choices -\end_layout - -\begin_layout Standard -When designing concurrent applications, it is useful to picture them as - real world scenarios, and to model each actor# as a real world process. - A real world process is a process which performs some action in the real - world, such as a mailbox receiving a letter, a door being opened, a person - translating a text, a soccer player kicking the ball, just to name a few - examples. - Since we focus on games in this project, it is suitable to model our system - as a place where games take place. - We imagined a chess club. - -\end_layout - -\begin_layout Standard -The clients pictured as green circles can be thought of as the physical - chess players. -\end_layout - -\begin_layout Standard -When a player wants to enter the our particular chess club, he must first - be let in by the doorman, called the Dispatcher in GGS. -\end_layout - -\begin_layout Standard -He then gets a name badge, and thus becomes a Player process in the system. - He is also guided in to the lobby by the Coordinator, which has the role - of the host of the chess club. -\end_layout - -\begin_layout Standard -When players wish to play against each other, they talk to the Coordinator - who pairs them up, and places them at a table. - Once they have sat down at the table, they no longer need the assistance - of the Coordinator, all further communication takes place via the table. - This can be thought of as the actual chess game commencing. - -\end_layout - -\begin_layout Standard -All the moves made in the game are recorded by the table, such that the - table can restore the game in case something would happen, such as the - table tipping over, which would represent the table process crashing. -\end_layout - -\begin_layout Standard -Once a player wishes to leave a game, or the entire facility, he should - contact the Coordinator, who revokes his name badge and the Dispatcher - will let the player out. -\end_layout - -\begin_layout Standard -With the information kept in the tables and the Coordinator combined, we - can rebuild the entire state of the server at a different location. - This can be thought of the chess club catching fire, and the Coordinator - rounding up all the tables, running to a new location and building the - club up in the exact state it was prior to the fire. -\begin_inset Float figure -wide false -sideways false -status open - -\begin_layout Plain Layout -\begin_inset Note Note -status open - -\begin_layout Plain Layout -Convert this graphics to EPS -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -begin{centering} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Graphics - filename system_structure.png - scale 40 - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -end{centering} -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Plain Layout -\begin_inset Caption - -\begin_layout Plain Layout -The layout of GGS -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Section -Understanding OTP -\end_layout - -\begin_layout Section -Usability -\end_layout - -\begin_layout Chapter -Results and discussion -\end_layout - -\begin_layout Section -Software development methodology -\end_layout - -\begin_layout Section -Statistics -\end_layout - -\begin_layout Chapter -Conclusion -\end_layout - -\begin_layout Standard -\begin_inset CommandInset bibtex -LatexCommand bibtex -bibfiles "bibliography" -options "plainnat" - -\end_inset - - -\end_layout - -\end_body -\end_document diff --git a/doc/report/report.pdf b/doc/report/report.pdf deleted file mode 100644 index 32bb70d46b220496aa896b65e38c51e97ed3715d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 155428 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

      uRNyDI@_`v(ENq2br3hW{RDmrp1Hunorjk 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 WYxmDUUc^w82N9cSbB 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 UN2Q@t0RR9107*qoM6N<$g753huK)l5 diff --git a/doc/report/system_structure.png b/doc/report/system_structure.png deleted file mode 100644 index 2daec0abe66d482d91bfc51a0c96dd32ebb9abeb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 56384 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

      jA@W+0Cc3nGc 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

      !J3^-CpIA(Pw!sBx)L=U^v3p{cIAXRs5On=~5h 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 sb<{ZwLd=xCF~^WQO(w{fjJPj^;pW$`E(uG}avh Date: Mon, 11 Apr 2011 10:54:18 +0200 Subject: [PATCH 118/192] added stash --- games/Pong/Classes/GGSNetwork.m | 2 +- src/ggs_dispatcher.erl | 3 +- src/ggs_player.erl | 133 ++++++++++++++++++-------------- src/ggs_protocol.erl | 125 ++++++++++++++++++++++++++---- tests/ggs_player_test.erl | 2 +- 5 files changed, 192 insertions(+), 73 deletions(-) diff --git a/games/Pong/Classes/GGSNetwork.m b/games/Pong/Classes/GGSNetwork.m index a436f13..ecc00d0 100644 --- a/games/Pong/Classes/GGSNetwork.m +++ b/games/Pong/Classes/GGSNetwork.m @@ -11,7 +11,7 @@ @implementation GGSNetwork -#define GGS_HOST @"jeena.net" +#define GGS_HOST @"localhost" #define GGS_PORT 9000 #define NO_TIMEOUT -1 diff --git a/src/ggs_dispatcher.erl b/src/ggs_dispatcher.erl index 11dd729..fdd28c6 100644 --- a/src/ggs_dispatcher.erl +++ b/src/ggs_dispatcher.erl @@ -58,7 +58,8 @@ handle_info({tcp_closed, Socket}, State) -> %% and when it does, we accept the connection. handle_info(timeout, LSock) -> {ok, Sock} = gen_tcp:accept(LSock), - spawn(ggs_player, start_link, [Sock]), + ggs_player:start(Sock), + erlang:display("handle_info"), {noreply, LSock, 0}. terminate(normal, _State) -> diff --git a/src/ggs_player.erl b/src/ggs_player.erl index d6e939e..e80aeac 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -1,48 +1,66 @@ --module(ggs_player). --export([start_link/1, notify/3, get_token/1, stop/2]). --record(pl_state, - {token, % Player's token - socket, % Player's socket - table}). % Player's table - %% @doc This module handles communication between a player and GGS. This module is -%%responsible for: -%% * The storage of the player socket, player token and a table token. -%% * Ability to fetch a player token. -%% * Forwarding messages from players to the game -%% * Remove a player from GGS +%% responsible for: +%% * The storage of the player socket, player token and a table token. +%% * Ability to fetch a player token. +%% * Forwarding messages from players to the game +%% * Remove a player from GGS + +-module(ggs_player). +-behaviour(gen_server). +-export([init/1, handle_call/3, handle_cast/2, handle_info/2, + terminate/2, code_change/3]). + +-export([start/1, notify/3, notify_game/2, get_token/1, stop/1]). + +-vsn(1.0). + +-record(state, { + token, + socket, + table, + protocol }). %% @doc Spawns a process representing the player in GGS. Takes the player socket as %% an argument for storage and later usage. Creates a unique player token %% identifying the player. %% @spec start_link(Socket::socket()) -> {ok, Pid} | {error, Reason} -start_link(Socket) -> - % The socket is in 'active' mode, and that means we are pushed any data - % that arrives on it, we do not need to recv() manually. Since the socket - % was opened in our parent process, we need to change the owner of it to - % us, otherwise these messages end up in our parent. - erlang:port_connect(Socket, self()), +start(Socket) -> + erlang:display("start_link"), + gen_server:start(?MODULE, [Socket], []). + +init([Socket]) -> + {ok, Protocol} = ggs_protocol:start_link(Socket, self()), {ok, Token} = ggs_coordinator:join_lobby(), - TableStatus = ggs_coordinator:join_table("1337"), - case TableStatus of - {ok, Table} -> - notify(self(), self(), {"hello", Token}), - loop(#pl_state{socket = Socket, token = Token, table = Table}); + + case ggs_coordinator:join_table("1337") of + {ok, T} -> + Table = T; {error, no_such_table} -> ggs_coordinator:create_table({force, "1337"}), - {ok, Table} = ggs_coordinator:join_table("1337"), - notify(self(), self(), {"hello", Token}), - loop(#pl_state{socket = Socket, token = Token, table = Table}) - end. + {ok, T} = ggs_coordinator:join_table("1337"), + Table = T + end, + + State = #state{ + token = Token, + socket = Socket, + table = Table, + protocol = Protocol + }, + erlang:display(State), + {ok, State}. %% @doc Handles incoming messages from the GGS and forwards them through the player %% socket to the player. %% @spec notify(Player::Pid(), From::Pid(), %% {Command::String(), Message::string()}) -> ok -notify(Player, From, Message) -> - {Cmd, Data} = Message, - Parsed = ggs_protocol:create_message(Cmd, "text","text", Data), - Player ! {notify, From, Parsed}. +notify(Player, _From, Message) -> + gen_server:cast(Player, {notify, Message}). + +%% @doc Handles incomming messages form a client and forwards them +%% through to the game_vm +notify_game(Player, Message) -> + gen_server:cast(Player, Message). %% @doc Get the player token uniquely representing the player. %% @spec get_token() -> string() @@ -53,32 +71,33 @@ get_token(_Player) -> %% together with the table token. It should also close the player socket and the %% process should return in the end. %% @spec stop(Table::pid()) -> Reason::string() -stop(_Player,_Table) -> - ggs_logger:not_implemented(). +stop(Player) -> + gen_server:cast(Player, stop). %% Internals -loop(#pl_state{token = _Token, socket = Socket, table = Table} = State) -> - receive - {tcp, Socket, Data} -> % Just echo for now.. - Parsed = ggs_protocol:parse(Data), - self() ! Parsed, - loop(State); - {notify, _From, Message} -> - gen_tcp:send(Socket, Message), - loop(State); - % Below are messages generated by the parser - {game_cmd,Cmd, _Headers, Data} -> - ggs_table:notify(Table, self(), {game, Cmd, Data}), - loop(State); - {srv_cmd,"define", _Headers, Data} -> - ggs_table:notify(Table, self(), {server, define, Data}), - loop(State); - {tcp_closed, _Socket} -> - io:format("Client disconnected, but THIS IS NOT SUPPORTED YET!~n"), - loop(State); - Other -> - io:format("Got UNKNOWN message: "), - erlang:display(Other), - io:format("~n") - end. +handle_call({notify, Message}, _From, #state { protocol = Protocol } = State) -> + ggs_protocol:send_command(Protocol, Message), + {noreplay, State}; + +handle_call({game_cmd, Command, _Headers, Data}, _From, #state { table = Table } = State) -> + ggs_table:notify(Table, self(), {game, Command, Data}), + {noreplay, State}; + +handle_call({srv_cmd, "define", _Headers, Data}, _From, #state { table = Table } = State) -> + ggs_table:notify(Table, self(), {server, define, Data}), + {noreplay, State}; + +handle_call(_Request, _From, St) -> {stop, unimplemented, St}. +handle_cast(_Request, St) -> {stop, unimplemented, St}. + +handle_info(_Info, St) -> {stop, unimplemented, St}. + +terminate(_Reason, State) -> + ggs_protocol:stop(State#state.protocol), + ggs_table:remove_player(State#state.table, self()), + % ggs_coordinator:remove_player(self(), self()), % not implemented yet + % TODO: release Socket + ok. + +code_change(_OldVsn, St, _Extra) -> {ok, St}. diff --git a/src/ggs_protocol.erl b/src/ggs_protocol.erl index 11cb2d0..f561ff7 100644 --- a/src/ggs_protocol.erl +++ b/src/ggs_protocol.erl @@ -1,11 +1,111 @@ +%%% @doc This module handles TCP incomming and outcommint. + -module(ggs_protocol). --export([parse/1, getToken/1, create_message/4]). +-export([start_link/2,stop/1]). +-behaviour(gen_server). +-export([init/1, handle_call/3, handle_cast/2, handle_info/2, + terminate/2, code_change/3]). +%% Old +-export([parse/1, getToken/1, create_message/4, send_command/2]). + +-vsn(1.0). + +-record(state, { + player, + socket, + header_string, + header_list, + body, + content_length}). + +start_link(Socket, Player) -> + gen_server:start_link(?MODULE, {Socket, Player}, []). + +stop(Protocol) -> + gen_server:cast(Protocol, stop). + +send_command(Protocol, {Command, Data}) -> + gen_server:cast(Protocol, {send, Command, Data}). + +init({Socket, Player}) -> + erlang:port_connect(Socket, self()), + State = #state{ + socket = Socket, + player = Player, + header_list = [], + header_string = "", + body = "", + content_length = -1 + }, + {ok, State}. + +handle_cast({tcp, _Socket, Data}, State) -> + case State#state.content_length of + -1 -> % its a header + TmpHeader = State#state.header_string ++ Data, + case string:str(TmpHeader, "\n\n") of + 0 -> % still in header + {reply, ok, State # state {header_string = TmpHeader}}; + _ -> % we left the header + {Header, Body} = parse(TmpHeader), + {_, ContentLengthString} = lists:keyfind(content_len, 1, Header), % find Content-Length + {ContentLength, []} = string:to_integer(ContentLengthString), + {reply, ok, State#state{ + header_list = Header, + header_string = "", + body = Body, + content_length = ContentLength}} + end; + Length -> % its a body + LBody = string:len(State#state.body), + LData = string:len(Data), + NewLength = LBody + LData, + if + NewLength < Length -> % not enough data + Body = State#state.body ++ Data, + {reply, ok, State#state {body = Body}}; + NewLength > Length -> % too much data + EndOfMessagePos = LBody + LData - Length, + Body = State#state.body ++ string:substr(Data, 0, EndOfMessagePos), + NextHeader = string:substr(Data, EndOfMessagePos, LData), + Message = prettify(State#state.header_list, Body), + gen_player:notify_game(State#state.player, Message), + {reply, ok, State#state { + header_string = NextHeader, + header_list = [], + body = "", + content_length = -1}}; + NewLength == Length -> % end of message + Message = prettify(State#state.header_list, State#state.body ++ Data), + gen_player:notify_game(State#state.player, Message), + {reply, ok, State#state { + header_string = "", + header_list = [], + body = "", + content_length = -1}} + end + end; + +handle_cast({send, Command, Data}, State) -> + Message = create_message(Command, "text", "text", Data), + gen_tcp:send(State#state.socket, Message), + {noreply, State}; + +handle_cast(_Request, St) -> {stop, unimplemented, St}. +handle_call(_Request, _From, St) -> {stop, unimplemented, St}. + +handle_info(_Info, St) -> {stop, unimplemented, St}. + + +terminate(_Reason, _St) -> ok. +code_change(_OldVsn, St, _Extra) -> {ok, St}. + + %% API Functions parse(Data) -> - Parsed = do_parse(Data, []), - prettify(Parsed). - + do_parse(Data, []). + getToken(Parsed) -> case lists:keyfind(token, 1, Parsed) of {_, Value} -> @@ -13,6 +113,8 @@ getToken(Parsed) -> false -> false end. + + create_message(Cmd, Enc, Acc, Data) -> Length = integer_to_list(string:len(Data)), @@ -26,18 +128,15 @@ create_message(Cmd, Enc, Acc, Data) -> Msg. %% Internal helpers -do_parse(Data, ParsedMessage) -> +do_parse(Data, Headers) -> NewLinePos = string:chr(Data, $\n), Line = string:substr(Data, 1, NewLinePos-1), Tokens = re:split(Line, ": ", [{return, list}]), case handle(Tokens) of {Command, more} -> - do_parse(string:substr(Data, NewLinePos+1), ParsedMessage ++ [Command]); + do_parse(string:substr(Data, NewLinePos+1), Headers ++ [Command]); {separator, data_next} -> - {_, Value} = lists:keyfind(content_len, 1, ParsedMessage), - {ContentLength, []} = string:to_integer(Value), - {data, ArgumentData} = handle_data(string:substr(Data, NewLinePos+1), ContentLength), - {ParsedMessage, ArgumentData} + {Headers, Data} end. handle([[]]) -> @@ -53,11 +152,11 @@ handle(["Token", Param]) -> handle(["Content-Type", Param]) -> {{content_type, Param}, more}. -handle_data(Data, Length) -> - {data, string:substr(Data,1,Length)}. +%handle_data(Data, Length) -> +% {data, string:substr(Data,1,Length)}. -prettify({Args, Data}) -> +prettify(Args, Data) -> case lists:keyfind(srv_cmd, 1, Args) of {_, Value} -> {srv_cmd, Value, Args, Data}; diff --git a/tests/ggs_player_test.erl b/tests/ggs_player_test.erl index efe7530..1782842 100644 --- a/tests/ggs_player_test.erl +++ b/tests/ggs_player_test.erl @@ -4,7 +4,7 @@ %% @doc start_link should always return ok for any valid socket. A valid socket %% should always return {ok, Pid} and {error, Reason} otherwise. start_link_test() -> - ggs_logger:not_implemented(). + {ok, Player} = ggs_player:start_link(Sock). %% @doc Given that start_link returned {ok, Player}. Notify shall always return ok and %% deliver a specified message through the socket. From cb24e00c6eb0b2fd23a2c1e89d2e18dea5d4d40f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 11 Apr 2011 16:27:53 +0200 Subject: [PATCH 119/192] Replaced old protocol with gen_fsm protocol parser --- doc/report | 2 +- games/GGSChat/chat.py | 2 +- src/ggs_player.erl | 2 +- src/ggs_protocol.erl | 135 +++++++++++++++++++++++++++++++----------- src/ggs_table.erl | 8 +-- 5 files changed, 107 insertions(+), 42 deletions(-) diff --git a/doc/report b/doc/report index aad268d..0031285 160000 --- a/doc/report +++ b/doc/report @@ -1 +1 @@ -Subproject commit aad268d03a3c23de917cfecf767d583d3cb32633 +Subproject commit 00312859714bef6e9a4fdb9931a41fef56eeb89a diff --git a/games/GGSChat/chat.py b/games/GGSChat/chat.py index e587570..aadf5d9 100644 --- a/games/GGSChat/chat.py +++ b/games/GGSChat/chat.py @@ -140,7 +140,7 @@ class GGSChat: "Content-Type: text\n" + "Content-Length: 0\n"+ "\n") - time.sleep(2) + #time.sleep(2) def updateUsers(self, text): evalNicks = eval(text) diff --git a/src/ggs_player.erl b/src/ggs_player.erl index d6e939e..0323bcc 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -21,6 +21,7 @@ start_link(Socket) -> % that arrives on it, we do not need to recv() manually. Since the socket % was opened in our parent process, we need to change the owner of it to % us, otherwise these messages end up in our parent. + ggs_protocol:start_link(), erlang:port_connect(Socket, self()), {ok, Token} = ggs_coordinator:join_lobby(), TableStatus = ggs_coordinator:join_table("1337"), @@ -62,7 +63,6 @@ loop(#pl_state{token = _Token, socket = Socket, table = Table} = State) -> receive {tcp, Socket, Data} -> % Just echo for now.. Parsed = ggs_protocol:parse(Data), - self() ! Parsed, loop(State); {notify, _From, Message} -> gen_tcp:send(Socket, Message), diff --git a/src/ggs_protocol.erl b/src/ggs_protocol.erl index d61dfc0..36a96d6 100644 --- a/src/ggs_protocol.erl +++ b/src/ggs_protocol.erl @@ -1,12 +1,50 @@ +%% Parse a string formatted with the GGS protocol using +%% an FSM. Each char is put into the FSM, which incrementally +%% builds a list of strings which represent the complete +%% message. + -module(ggs_protocol). --export([parse/1, getToken/1, create_message/4]). +-export([parse/1, getToken/1, create_message/4, + expect_headers/2, expect_data_section/2, + expect_headers/3, expect_data_section/3]). + +%% tests +-export([test/0, to_dictionary/2]). + +% gen_fsm callbacks.. +-export([init/1, handle_info/2, terminate/2, code_change/3, start_link/0]). + + +-define(SERVER, ?MODULE). + +%% JONTES TESTS +test() -> + start_link(), + parse("Token: %s\nServer-Command: define\nContent-Type: text\nContent-Length: 9\n\nHELLOWORLDToken: %s\nServer-Command: define\nContent-Type: text\nContent-Length: 9\n\nHELLOWORLDToken: %s\nServer-Command: define\n"), + to_dictionary(["Hello: world", "Hi: there!"], []). +%% END TESTS + %% API Functions parse(Data) -> - Parsed = do_parse(Data, []), - prettify(Parsed). + lists:foreach(fun(X) -> + gen_fsm:sync_send_event(?SERVER, {char, X}) + end, Data). + + +start_link() -> + gen_fsm:start_link({local, ?SERVER}, ?MODULE, [], []). + +% Start state: {[""],0}, meaning: +% - Start with no strings parsed +% - Start with a data-section-lengths of 0 +init([]) -> + {ok,expect_headers,{[""], 0}}. + + getToken(Parsed) -> + case lists:keyfind(token, 1, Parsed) of {_, Value} -> Value; @@ -14,6 +52,8 @@ getToken(Parsed) -> false end. +%% Assemble a message which can b +%e used as a reply to a client create_message(Cmd, Enc, Acc, Data) -> Length = integer_to_list(string:len(Data)), Msg = "Client-Command: " ++ Cmd ++ "\n" ++ @@ -25,45 +65,64 @@ create_message(Cmd, Enc, Acc, Data) -> Data, Msg. +%%% Transitions +expect_headers(_Event, State) -> + {next_state, expect_headers, State}. +expect_data_section(_Event, State) -> + {next_state, expect_data_section, State}. -%% Internal helpers -do_parse(Data, ParsedMessage) -> - NewLinePos = string:chr(Data, $\n), - Line = string:substr(Data, 1, NewLinePos-1), - Tokens = re:split(Line, ": ", [{return, list}]), - case handle(Tokens) of - {Command, more} -> - do_parse(string:substr(Data, NewLinePos+1), ParsedMessage ++ [Command]); - {separator, data_next} -> - {_, Value} = lists:keyfind(content_len, 1, ParsedMessage), - {ContentLength, []} = string:to_integer(Value), - {data, ArgumentData} = handle_data(string:substr(Data, NewLinePos+1), ContentLength), - {ParsedMessage, ArgumentData} + +%%% End transitions +expect_headers({char, $\n}, _From, {Strings, Remains}) -> + [LastMessage|_] = Strings, + case LastMessage of + "" -> % We have a data section.. Last line should thus be the content length. + [LastMessage, SecondLast | _] = Strings, + case re:split(SecondLast, ": ", [{return, list}]) of + ["Content-Length", X] -> + {Int,_} = string:to_integer(X), + {reply, ok, expect_data_section, {[""|Strings], Int}}; + Other -> ok + end; + Other -> + {reply,ok,expect_headers, {[""|Strings], Remains}} + end; + +expect_headers({char, Char}, _From, {[Current|Rest], Remains}) -> + NewCurrent = Current ++ [Char], + {reply,ok, expect_headers, {[NewCurrent|Rest], Remains}}. + + +expect_data_section({char, Char}, From, {Strings, Remains}) -> + case Remains of + 0 -> + [LastMsg,_|Rest] = Strings, + NewMsg = LastMsg ++ [Char], + Result = [NewMsg|Rest], + {Pid,_} = From, + erlang:display(From), + Pid ! (prettify(to_dictionary(Rest, []), NewMsg)), + {reply, ok, expect_headers, {[""], 0}}; + Other -> [LastMsg|Rest] = Strings, + NewMsg = LastMsg ++ [Char], + {reply, ok, expect_data_section, {[NewMsg|Rest], Remains-1}} end. - -handle([[]]) -> - {separator, data_next}; -handle(["Server-Command", Param]) -> - {{srv_cmd, Param}, more}; -handle(["Game-Command", Param]) -> - {{game_cmd, Param}, more}; -handle(["Content-Length", Param]) -> - {{content_len, Param}, more}; -handle(["Token", Param]) -> - {{token, Param}, more}; -handle(["Content-Type", Param]) -> - {{content_type, Param}, more}. - -handle_data(Data, Length) -> - {data, string:substr(Data,1,Length)}. +handle_call(_Msg, _From, State) -> + {noreply, State}. +handle_info(_Msg, State) -> + {noreply, State}. +terminate(_Reason, _State) -> + ok. +code_change(_OldVsn, State, _Extra) -> + {ok, State}. -prettify({Args, Data}) -> - case lists:keyfind(srv_cmd, 1, Args) of +prettify(Args, Data) -> + case lists:keyfind("Server-Command", 1, Args) of {_, Value} -> {srv_cmd, Value, Args, Data}; _Other -> - case lists:keyfind(game_cmd, 1, Args) of + case lists:keyfind("Game-Command", 1, Args) of {_, Value} -> {game_cmd, Value, Args, Data}; _ -> @@ -71,3 +130,9 @@ prettify({Args, Data}) -> end end. +to_dictionary([], Dict) -> + Dict; +to_dictionary([S|Strings], Dict) -> + [First, Snd] = re:split(S, ": ", [{return, list}]), + to_dictionary(Strings, [{First, Snd}|Dict]). + diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 909f789..7cdef80 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -74,7 +74,7 @@ send_command(TableToken, PlayerToken, Message) -> %% @private init([TableToken]) -> process_flag(trap_exit, true), - GameVM = ggs_gamevm_p:start_link(TableToken), + GameVM = ggs_gamevm_e:start_link(TableToken), {ok, #state { game_vm = GameVM, players = [] }}. @@ -100,14 +100,14 @@ handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> PlayerToken = ggs_coordinator:player_pid_to_token(Player), case Message of {server, define, Args} -> - ggs_gamevm_p:define(GameVM, Args); + ggs_gamevm_e:define(GameVM, Args); {game, Command, Args} -> - ggs_gamevm_p:player_command(GameVM, PlayerToken, Command, Args) + ggs_gamevm_e:player_command(GameVM, PlayerToken, Command, Args) end, {noreply, State}; handle_cast({notify_game, Message, From}, #state { game_vm = GameVM } = State) -> - ggs_gamevm_p:player_command(GameVM, From, Message, ""), + ggs_gamevm_e:player_command(GameVM, From, Message, ""), {noreply, State}; handle_cast({notify_all_players, Message}, #state{players = Players} = State) -> From 135caff0e9b82693459cb8fedf95cdbabac2e310 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 11 Apr 2011 16:48:40 +0200 Subject: [PATCH 120/192] changed player to gen_server --- Makefile | 1 + games/Pong/Classes/GGSNetwork.m | 2 +- .../UserInterfaceState.xcuserstate | 2713 +++++++++-------- src/ggs_player.erl | 19 +- src/ggs_protocol.erl | 224 +- src/ggs_protocol.erl.orig | 146 + src/ggs_server.erl | 13 +- 7 files changed, 1673 insertions(+), 1445 deletions(-) create mode 100644 src/ggs_protocol.erl.orig diff --git a/Makefile b/Makefile index a4934f9..eb5bf0f 100644 --- a/Makefile +++ b/Makefile @@ -26,6 +26,7 @@ endif clean: rm -rf $(BEAMDIR)/*.beam ; + rm -rf $(SRCDIR)/*.beam ; rm -rf erl_crush.dump ; echo "==> clean ggs" ; $(MAKE) -C erlang_js/ clean diff --git a/games/Pong/Classes/GGSNetwork.m b/games/Pong/Classes/GGSNetwork.m index ecc00d0..7b68fdc 100644 --- a/games/Pong/Classes/GGSNetwork.m +++ b/games/Pong/Classes/GGSNetwork.m @@ -32,7 +32,7 @@ @synthesize asyncSocket, delegate, gameToken, currentHeaders; - (id)initWithDelegate:(id)_delegate { - if (self = [super init]) { + if ((self = [super init])) { delegate = _delegate; asyncSocket = [[AsyncSocket alloc] initWithDelegate:self]; diff --git a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate index 7578947..b1bf0bc 100644 --- a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate +++ b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate @@ -11,7 +11,7 @@ $class CF$UID - 126 + 184 NS.keys @@ -32,7 +32,7 @@ CF$UID - 100 + 112 @@ -42,7 +42,7 @@ $class CF$UID - 37 + 39 NS.keys @@ -97,29 +97,29 @@ CF$UID 16 - - CF$UID - 48 - - - CF$UID - 49 - - - CF$UID - 54 - CF$UID 57 CF$UID - 90 + 58 CF$UID - 91 + 63 + + + CF$UID + 66 + + + CF$UID + 100 + + + CF$UID + 101 CF$UID @@ -146,7 +146,7 @@ $class CF$UID - 37 + 39 NS.keys @@ -168,7 +168,7 @@ $class CF$UID - 37 + 39 NS.keys @@ -188,24 +188,32 @@ CF$UID 27 + + CF$UID + 29 + NS.objects CF$UID - 29 + 31 CF$UID - 38 + 40 CF$UID - 42 + 47 CF$UID - 45 + 51 + + + CF$UID + 54 @@ -278,7 +286,7 @@ 21 NS.string - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m $class @@ -304,7 +312,7 @@ 21 NS.string - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m $class @@ -323,6 +331,32 @@ 28 + + $class + + CF$UID + 21 + + NS.string + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m + + + $class + + CF$UID + 22 + + NS.base + + CF$UID + 0 + + NS.relative + + CF$UID + 30 + + $class @@ -336,18 +370,10 @@ $class CF$UID - 37 + 39 NS.keys - - CF$UID - 30 - - - CF$UID - 31 - CF$UID 32 @@ -356,9 +382,6 @@ CF$UID 33 - - NS.objects - CF$UID 34 @@ -367,13 +390,24 @@ CF$UID 35 + + NS.objects + + + CF$UID + 36 + + + CF$UID + 37 + CF$UID 15 CF$UID - 36 + 38 @@ -398,77 +432,18 @@ $class CF$UID - 37 + 39 NS.keys - - CF$UID - 30 - - - CF$UID - 31 - - - CF$UID - 32 - - - CF$UID - 33 - - - NS.objects - - - CF$UID - 39 - - - CF$UID - 40 - - - CF$UID - 15 - CF$UID 41 - - - 322690356.257366 - {369, 1381} - {207, 0} - - $class - - CF$UID - 37 - - NS.keys - CF$UID - 30 + 42 - - CF$UID - 31 - - - CF$UID - 32 - - - CF$UID - 33 - - - NS.objects - CF$UID 43 @@ -477,34 +452,41 @@ CF$UID 44 + + NS.objects + + + CF$UID + 45 + + + CF$UID + 46 + CF$UID 15 CF$UID - 36 + 38 - 322646166.07745898 - {1704, 1033} + PrimaryDocumentTimestamp + PrimaryDocumentVisibleCharacterRange + HideAllIssues + PrimaryDocumentSelectedCharacterRange + 324225931.14446598 + {362, 1156} $class CF$UID - 37 + 39 NS.keys - - CF$UID - 30 - - - CF$UID - 31 - CF$UID 32 @@ -513,16 +495,24 @@ CF$UID 33 + + CF$UID + 34 + + + CF$UID + 35 + NS.objects CF$UID - 46 + 48 CF$UID - 47 + 49 CF$UID @@ -530,28 +520,36 @@ CF$UID - 36 + 50 - 322646160.93821901 - {0, 455} - 0 + 324221134.73035002 + {506, 1336} + {2711, 5} $class CF$UID - 37 + 39 NS.keys CF$UID - 50 + 32 CF$UID - 51 + 33 + + + CF$UID + 34 + + + CF$UID + 35 NS.objects @@ -564,47 +562,74 @@ CF$UID 53 + + CF$UID + 15 + + + CF$UID + 38 + - IDEDeviceLocation - IDEDeviceArchitecture - dvtdevice-iphonesimulator:/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.0.sdk-iPhone - i386 + 324221136.37834799 + {1697, 1040} $class CF$UID - 37 + 39 NS.keys CF$UID - 55 + 32 + + + CF$UID + 33 + + + CF$UID + 34 + + + CF$UID + 35 NS.objects + + CF$UID + 55 + CF$UID 56 + + CF$UID + 15 + + + CF$UID + 38 + - IDENameString - Pong + 322646160.93821901 + {0, 455} + 0 $class CF$UID - 37 + 39 NS.keys - - CF$UID - 58 - CF$UID 59 @@ -622,12 +647,72 @@ CF$UID - 89 + 62 + + + + IDEDeviceLocation + IDEDeviceArchitecture + dvtdevice-iphonesimulator:/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.0.sdk-iPhone + i386 + + $class + + CF$UID + 39 + + NS.keys + + + CF$UID + 64 + + + NS.objects + + + CF$UID + 65 + + + + IDENameString + Pong + + $class + + CF$UID + 39 + + NS.keys + + + CF$UID + 67 CF$UID 68 + + CF$UID + 69 + + + NS.objects + + + CF$UID + 70 + + + CF$UID + 98 + + + CF$UID + 99 + IDEActivityReportCompletionSummaryStringSegments @@ -637,62 +722,62 @@ $class CF$UID - 88 + 97 NS.objects CF$UID - 62 - - - CF$UID - 69 - - - CF$UID - 73 + 71 CF$UID 78 + + CF$UID + 82 + + + CF$UID + 87 + $class CF$UID - 37 + 39 NS.keys CF$UID - 63 + 72 CF$UID - 64 + 73 CF$UID - 65 + 74 NS.objects CF$UID - 66 + 75 CF$UID - 67 + 76 CF$UID - 68 + 77 @@ -706,36 +791,36 @@ $class CF$UID - 37 + 39 NS.keys CF$UID - 63 + 72 CF$UID - 64 + 73 CF$UID - 65 + 74 NS.objects CF$UID - 70 + 79 CF$UID - 71 + 80 CF$UID - 72 + 81 @@ -746,36 +831,36 @@ $class CF$UID - 37 + 39 NS.keys CF$UID - 63 + 72 CF$UID - 64 + 73 CF$UID - 65 + 74 NS.objects CF$UID - 74 + 83 CF$UID - 75 + 84 CF$UID - 76 + 85 @@ -785,7 +870,7 @@ $class CF$UID - 77 + 86 NS.data @@ -821,60 +906,60 @@ $class CF$UID - 37 + 39 NS.keys CF$UID - 63 + 72 CF$UID - 79 + 88 CF$UID - 80 + 89 CF$UID - 65 + 74 CF$UID - 81 + 90 CF$UID - 82 + 91 NS.objects CF$UID - 83 + 92 CF$UID - 84 + 93 CF$UID - 85 + 94 CF$UID - 87 + 96 CF$UID - 84 + 93 CF$UID - 84 + 93 @@ -888,10 +973,10 @@ $class CF$UID - 86 + 95 NS.time - 322656379.44809198 + 324225926.14380801 $classes @@ -902,7 +987,7 @@ $classname NSDate - Today at 11:46 + Today at 16:45 $classes @@ -914,11 +999,12 @@ NSMutableArray 106 + Pong $class CF$UID - 88 + 97 NS.objects @@ -932,25 +1018,29 @@ $class CF$UID - 88 + 97 NS.objects CF$UID - 92 + 102 CF$UID - 94 + 104 CF$UID - 96 + 106 CF$UID - 98 + 108 + + + CF$UID + 110 @@ -968,10 +1058,10 @@ NS.relative CF$UID - 93 + 103 - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m $class @@ -986,25 +1076,7 @@ NS.relative CF$UID - 95 - - - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.h - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 97 + 105 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m @@ -1022,7 +1094,43 @@ NS.relative CF$UID - 99 + 107 + + + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m + + $class + + CF$UID + 22 + + NS.base + + CF$UID + 0 + + NS.relative + + CF$UID + 109 + + + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.h + + $class + + CF$UID + 22 + + NS.base + + CF$UID + 0 + + NS.relative + + CF$UID + 111 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.h @@ -1030,44 +1138,21 @@ $class CF$UID - 37 + 39 NS.keys CF$UID - 101 + 113 CF$UID - 102 + 114 CF$UID - 103 - - - CF$UID - 104 - - - CF$UID - 105 - - - CF$UID - 106 - - - NS.objects - - - CF$UID - 107 - - - CF$UID - 274 + 115 CF$UID @@ -1075,11 +1160,34 @@ CF$UID - 101 + 117 CF$UID - 275 + 118 + + + NS.objects + + + CF$UID + 119 + + + CF$UID + 285 + + + CF$UID + 219 + + + CF$UID + 113 + + + CF$UID + 286 CF$UID @@ -1097,137 +1205,18 @@ $class CF$UID - 37 + 39 NS.keys - - - CF$UID - 108 - - - CF$UID - 109 - - - CF$UID - 110 - - - CF$UID - 111 - - - CF$UID - 112 - - - CF$UID - 113 - - - CF$UID - 114 - - - CF$UID - 115 - - - NS.objects - - - CF$UID - 48 - - - CF$UID - 116 - - - CF$UID - 117 - - - CF$UID - 118 - - - CF$UID - 129 - - - CF$UID - 171 - - - CF$UID - 15 - - - CF$UID - 180 - - - - AssistantEditorsLayout - IDEShowNavigator - IDETabLabel - IDEWorkspaceTabControllerUtilityAreaSplitView - IDENavigatorArea - IDEWorkspaceTabControllerDesignAreaSplitView - IDEShowUtilities - IDEEditorArea - - GGSNetwork.m - - $class - - CF$UID - 37 - - NS.keys - - - CF$UID - 119 - - - NS.objects CF$UID 120 - - - DVTSplitViewItems - - $class - - CF$UID - 88 - - NS.objects - CF$UID 121 - - CF$UID - 127 - - - - - $class - - CF$UID - 126 - - NS.keys - CF$UID 122 @@ -1236,9 +1225,6 @@ CF$UID 123 - - NS.objects - CF$UID 124 @@ -1247,59 +1233,71 @@ CF$UID 125 - - - DVTIdentifier - DVTViewMagnitude - - 478 - - $classes - - NSDictionary - NSObject - - $classname - NSDictionary - - - $class - - CF$UID - 126 - - NS.keys - CF$UID - 122 + 126 CF$UID - 123 + 127 NS.objects CF$UID - 124 + 128 CF$UID - 128 + 219 + + + CF$UID + 57 + + + CF$UID + 229 + + + CF$UID + 236 + + + CF$UID + 275 + + + CF$UID + 15 + + + CF$UID + 284 - 224 + IDEEditorArea + IDEShowNavigator + AssistantEditorsLayout + IDEWorkspaceTabControllerUtilityAreaSplitView + IDENavigatorArea + IDEWorkspaceTabControllerDesignAreaSplitView + IDEShowUtilities + IDETabLabel $class CF$UID - 37 + 39 NS.keys + + CF$UID + 129 + CF$UID 130 @@ -1312,34 +1310,10 @@ CF$UID 132 - - NS.objects - CF$UID 133 - - CF$UID - 132 - - - CF$UID - 151 - - - - Xcode.IDEKit.Navigator.Issues - SelectedNavigator - Xcode.IDEKit.Navigator.Structure - - $class - - CF$UID - 37 - - NS.keys - CF$UID 134 @@ -1352,546 +1326,40 @@ CF$UID 136 + + NS.objects + CF$UID 137 - - CF$UID - 138 - - - CF$UID - 139 - - - CF$UID - 140 - - - CF$UID - 141 - - - CF$UID - 142 - - - CF$UID - 143 - - - NS.objects - - - CF$UID - 15 - - - CF$UID - 144 - - - CF$UID - 145 - - - CF$UID - 147 - - - CF$UID - 148 - - - CF$UID - 15 - - - CF$UID - 15 - - - CF$UID - 149 - - - CF$UID - 15 - - - CF$UID - 150 - - - - IDEErrorFilteringEnabled - IDEVisibleRect - IDECollapsedFiles - IDEExpandedIssues - IDESelectedNavigables - IDEShowsByType - IDESchemeFilteringEnabled - IDECollapsedTypes - IDERecentFilteringEnabled - IDECollapsedGroups - {{0, 0}, {259, 636}} - - $class - - CF$UID - 146 - - NS.objects - - - - $classes - - NSMutableSet - NSSet - NSObject - - $classname - NSMutableSet - - - $class - - CF$UID - 146 - - NS.objects - - - - $class - - CF$UID - 88 - - NS.objects - - - - $class - - CF$UID - 146 - - NS.objects - - - - $class - - CF$UID - 146 - - NS.objects - - - - $class - - CF$UID - 37 - - NS.keys - - - CF$UID - 152 - - - CF$UID - 153 - - - CF$UID - 154 - - - CF$UID - 155 - - - CF$UID - 156 - CF$UID 157 CF$UID - 158 - - - NS.objects - - - CF$UID - 159 + 190 CF$UID - 15 + 219 CF$UID - 160 + 57 CF$UID - 15 + 220 CF$UID - 15 + 228 CF$UID - 162 - - - CF$UID - 168 - - - - IDEVisibleRect - IDEUnsavedDocumentFilteringEnabled - IDENavigatorExpandedItemsBeforeFilteringSet - IDERecentDocumentFilteringEnabled - IDESCMStatusFilteringEnabled - IDESelectedObjects - IDEExpandedItemsSet - {{0, 0}, {259, 658}} - - $class - - CF$UID - 161 - - NS.objects - - - - $classes - - NSSet - NSObject - - $classname - NSSet - - - $class - - CF$UID - 167 - - NS.objects - - - CF$UID - 163 - - - - - $class - - CF$UID - 88 - - NS.objects - - - CF$UID - 164 - - - CF$UID - 165 - - - CF$UID - 166 - - - - Pong - Classes - GGSNetwork.m - - $classes - - NSArray - NSObject - - $classname - NSArray - - - $class - - CF$UID - 161 - - NS.objects - - - CF$UID - 169 - - - CF$UID - 170 - - - - - $class - - CF$UID - 88 - - NS.objects - - - CF$UID - 164 - - - - - $class - - CF$UID - 88 - - NS.objects - - - CF$UID - 164 - - - CF$UID - 165 - - - - - $class - - CF$UID - 37 - - NS.keys - - - CF$UID - 119 - - - NS.objects - - - CF$UID - 172 - - - - - $class - - CF$UID - 88 - - NS.objects - - - CF$UID - 173 - - - CF$UID - 175 - - - CF$UID - 177 - - - - - $class - - CF$UID - 126 - - NS.keys - - - CF$UID - 122 - - - CF$UID - 123 - - - NS.objects - - - CF$UID - 112 - - - CF$UID - 174 - - - - 260 - - $class - - CF$UID - 126 - - NS.keys - - - CF$UID - 122 - - - CF$UID - 123 - - - NS.objects - - - CF$UID - 115 - - - CF$UID - 176 - - - - 1016 - - $class - - CF$UID - 126 - - NS.keys - - - CF$UID - 122 - - - CF$UID - 123 - - - NS.objects - - - CF$UID - 178 - - - CF$UID - 179 - - - - IDEUtilitiesArea - 260 - - $class - - CF$UID - 37 - - NS.keys - - - CF$UID - 181 - - - CF$UID - 182 - - - CF$UID - 183 - - - CF$UID - 184 - - - CF$UID - 185 - - - CF$UID - 186 - - - CF$UID - 187 - - - CF$UID - 188 - - - NS.objects - - - CF$UID - 189 - - - CF$UID - 206 - - - CF$UID - 239 - - - CF$UID - 116 - - - CF$UID - 48 - - - CF$UID - 265 - - - CF$UID - 273 - - - CF$UID - 116 + 219 @@ -1907,7 +1375,7 @@ $class CF$UID - 205 + 156 geniusEditorContextNode @@ -1917,19 +1385,19 @@ primaryEditorContextNode CF$UID - 190 + 138 rootLayoutTreeNode CF$UID - 202 + 153 $class CF$UID - 204 + 155 children @@ -1941,41 +1409,41 @@ documentArchivableRepresentation CF$UID - 191 + 139 orientation 0 parent CF$UID - 202 + 153 $class CF$UID - 201 + 152 DocumentLocation CF$UID - 199 + 150 DomainIdentifier CF$UID - 192 + 140 IdentifierPath CF$UID - 193 + 141 IndexOfDocumentIdentifier CF$UID - 48 + 57 Xcode.IDENavigableItemDomain.WorkspaceStructure @@ -1983,21 +1451,21 @@ $class CF$UID - 167 + 149 NS.objects CF$UID - 194 + 142 CF$UID - 196 + 145 CF$UID - 197 + 147 @@ -2005,14 +1473,15 @@ $class CF$UID - 195 + 144 Identifier CF$UID - 166 + 143 + PongViewController.m $classes @@ -2026,32 +1495,42 @@ $class CF$UID - 195 + 144 Identifier CF$UID - 165 + 146 + Classes $class CF$UID - 195 + 144 Identifier CF$UID - 198 + 148 Pong + + $classes + + NSArray + NSObject + + $classname + NSArray + $class CF$UID - 200 + 151 documentURL @@ -2086,12 +1565,12 @@ $class CF$UID - 204 + 155 children CF$UID - 203 + 154 contentType 0 @@ -2112,13 +1591,13 @@ $class CF$UID - 167 + 149 NS.objects CF$UID - 190 + 138 @@ -2144,20 +1623,20 @@ $class CF$UID - 37 + 39 NS.keys CF$UID - 207 + 158 NS.objects CF$UID - 208 + 159 @@ -2166,20 +1645,20 @@ $class CF$UID - 37 + 39 NS.keys CF$UID - 209 + 160 NS.objects CF$UID - 210 + 161 @@ -2188,36 +1667,36 @@ $class CF$UID - 126 + 184 NS.keys CF$UID - 211 + 162 CF$UID - 212 + 163 CF$UID - 213 + 164 NS.objects CF$UID - 214 + 165 CF$UID - 48 + 57 CF$UID - 237 + 188 @@ -2228,13 +1707,13 @@ $class CF$UID - 167 + 149 NS.objects CF$UID - 215 + 166 @@ -2242,68 +1721,68 @@ $class CF$UID - 37 + 39 NS.keys CF$UID - 216 + 167 CF$UID - 217 + 168 CF$UID - 218 + 169 CF$UID - 219 + 170 CF$UID - 220 + 171 CF$UID - 221 + 172 CF$UID - 222 + 173 NS.objects CF$UID - 223 + 174 CF$UID - 224 + 175 CF$UID - 230 + 181 CF$UID - 234 + 143 CF$UID - 166 + 143 CF$UID - 17 + 185 CF$UID - 235 + 186 @@ -2319,48 +1798,48 @@ $class CF$UID - 201 + 152 DocumentLocation CF$UID - 199 + 150 DomainIdentifier CF$UID - 192 + 140 IdentifierPath CF$UID - 225 + 176 IndexOfDocumentIdentifier CF$UID - 48 + 57 $class CF$UID - 167 + 149 NS.objects CF$UID - 226 + 177 CF$UID - 227 + 178 CF$UID - 228 + 179 @@ -2368,36 +1847,36 @@ $class CF$UID - 195 + 144 Identifier CF$UID - 166 + 143 $class CF$UID - 195 + 144 Identifier CF$UID - 165 + 146 $class CF$UID - 195 + 144 Identifier CF$UID - 229 + 180 Pong @@ -2405,36 +1884,36 @@ $class CF$UID - 126 + 184 NS.keys CF$UID - 30 + 41 CF$UID - 31 + 42 CF$UID - 32 + 43 CF$UID - 33 + 44 NS.objects CF$UID - 231 + 182 CF$UID - 232 + 183 CF$UID @@ -2442,14 +1921,22 @@ CF$UID - 233 + 38 - 322690356.25804502 - {369, 1381} - {207, 0} - @implementation GGSNetwork + 324225931.14565301 + {362, 1156} + + $classes + + NSDictionary + NSObject + + $classname + NSDictionary + + Xcode.IDEKit.EditorDocument.SourceCode $class @@ -2464,21 +1951,21 @@ NS.relative CF$UID - 236 + 187 - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m $class CF$UID - 167 + 149 NS.objects CF$UID - 238 + 189 @@ -2487,14 +1974,578 @@ $class CF$UID - 37 + 39 NS.keys + + + CF$UID + 191 + + + CF$UID + 192 + + + CF$UID + 193 + + + CF$UID + 194 + + + CF$UID + 195 + + + CF$UID + 196 + + + NS.objects + + + CF$UID + 93 + + + CF$UID + 197 + + + CF$UID + 199 + + + CF$UID + 93 + + + CF$UID + 202 + + + CF$UID + 213 + + + + LayoutFocusMode + console + variables + LayoutMode + IDEDebuggerAreaSplitView + IDEDebugArea_SplitView + + $class + + CF$UID + 39 + + NS.keys + + + CF$UID + 198 + + + NS.objects + + + CF$UID + 57 + + + + ConsoleFilterMode + + $class + + CF$UID + 39 + + NS.keys + + + CF$UID + 200 + + + NS.objects + + + CF$UID + 201 + + + + DBGVariablesViewFilterMode + 2 + + $class + + CF$UID + 39 + + NS.keys + + + CF$UID + 203 + + + NS.objects + + + CF$UID + 204 + + + + DVTSplitViewItems + + $class + + CF$UID + 97 + + NS.objects + + + CF$UID + 205 + + + CF$UID + 210 + + + + + $class + + CF$UID + 184 + + NS.keys + + + CF$UID + 206 + + + CF$UID + 207 + + + NS.objects + + + CF$UID + 208 + + + CF$UID + 209 + + + + DVTIdentifier + DVTViewMagnitude + VariablesView + 298 + + $class + + CF$UID + 184 + + NS.keys + + + CF$UID + 206 + + + CF$UID + 207 + + + NS.objects + + + CF$UID + 211 + + + CF$UID + 212 + + + + ConsoleArea + 717 + + $class + + CF$UID + 39 + + NS.keys + + + CF$UID + 203 + + + NS.objects + + + CF$UID + 214 + + + + + $class + + CF$UID + 97 + + NS.objects + + + CF$UID + 215 + + + CF$UID + 217 + + + + + $class + + CF$UID + 184 + + NS.keys + + + CF$UID + 206 + + + CF$UID + 207 + + + NS.objects + + + CF$UID + 208 + + + CF$UID + 216 + + + + 298 + + $class + + CF$UID + 184 + + NS.keys + + + CF$UID + 206 + + + CF$UID + 207 + + + NS.objects + + + CF$UID + 211 + + + CF$UID + 218 + + + + 717 + + + $class + + CF$UID + 39 + + NS.keys + + + CF$UID + 203 + + + NS.objects + + + CF$UID + 221 + + + + + $class + + CF$UID + 97 + + NS.objects + + + CF$UID + 222 + + + CF$UID + 225 + + + + + $class + + CF$UID + 184 + + NS.keys + + + CF$UID + 206 + + + CF$UID + 207 + + + NS.objects + + + CF$UID + 223 + + + CF$UID + 224 + + + + IDEEditor + 587 + + $class + + CF$UID + 184 + + NS.keys + + + CF$UID + 206 + + + CF$UID + 207 + + + NS.objects + + + CF$UID + 226 + + + CF$UID + 227 + + + + IDEDebuggerArea + 115 + + $class + + CF$UID + 39 + + NS.keys + + NS.objects + + + + $class + + CF$UID + 39 + + NS.keys + + + CF$UID + 203 + + + NS.objects + + + CF$UID + 230 + + + + + $class + + CF$UID + 97 + + NS.objects + + + CF$UID + 231 + + + CF$UID + 234 + + + + + $class + + CF$UID + 184 + + NS.keys + + + CF$UID + 206 + + + CF$UID + 207 + + + NS.objects + + + CF$UID + 232 + + + CF$UID + 233 + + + + + 478 + + $class + + CF$UID + 184 + + NS.keys + + + CF$UID + 206 + + + CF$UID + 207 + + + NS.objects + + + CF$UID + 232 + + + CF$UID + 235 + + + + 224 + + $class + + CF$UID + 39 + + NS.keys + + + CF$UID + 237 + + + CF$UID + 238 + + + CF$UID + 239 + + + NS.objects CF$UID 240 + + CF$UID + 239 + + + CF$UID + 258 + + + + Xcode.IDEKit.Navigator.Issues + SelectedNavigator + Xcode.IDEKit.Navigator.Structure + + $class + + CF$UID + 39 + + NS.keys + CF$UID 241 @@ -2515,144 +2566,41 @@ CF$UID 245 - - NS.objects - - - CF$UID - 84 - CF$UID 246 + + CF$UID + 247 + CF$UID 248 CF$UID - 84 + 249 + + + CF$UID + 250 + + + NS.objects + + + CF$UID + 15 CF$UID 251 - - CF$UID - 259 - - - - LayoutFocusMode - console - variables - LayoutMode - IDEDebugArea_SplitView - IDEDebuggerAreaSplitView - - $class - - CF$UID - 37 - - NS.keys - - - CF$UID - 247 - - - NS.objects - - - CF$UID - 48 - - - - ConsoleFilterMode - - $class - - CF$UID - 37 - - NS.keys - - - CF$UID - 249 - - - NS.objects - - - CF$UID - 250 - - - - DBGVariablesViewFilterMode - 2 - - $class - - CF$UID - 37 - - NS.keys - - - CF$UID - 119 - - - NS.objects - CF$UID 252 - - - - $class - - CF$UID - 88 - - NS.objects - - - CF$UID - 253 - - - CF$UID - 256 - - - - - $class - - CF$UID - 126 - - NS.keys - - - CF$UID - 122 - - - CF$UID - 123 - - - NS.objects - CF$UID 254 @@ -2661,151 +2609,129 @@ CF$UID 255 - - - VariablesView - 298 - - $class - - CF$UID - 126 - - NS.keys - CF$UID - 122 + 15 CF$UID - 123 + 15 + + + CF$UID + 256 + + + CF$UID + 15 - - NS.objects - CF$UID 257 - - CF$UID - 258 - - ConsoleArea - 717 + IDEErrorFilteringEnabled + IDEVisibleRect + IDECollapsedFiles + IDEExpandedIssues + IDESelectedNavigables + IDEShowsByType + IDESchemeFilteringEnabled + IDECollapsedTypes + IDERecentFilteringEnabled + IDECollapsedGroups + {{0, 0}, {259, 636}} $class CF$UID - 37 + 253 + + NS.objects + + + + $classes + + NSMutableSet + NSSet + NSObject + + $classname + NSMutableSet + + + $class + + CF$UID + 253 + + NS.objects + + + + $class + + CF$UID + 97 + + NS.objects + + + + $class + + CF$UID + 253 + + NS.objects + + + + $class + + CF$UID + 253 + + NS.objects + + + + $class + + CF$UID + 39 NS.keys CF$UID - 119 + 259 - - NS.objects - CF$UID 260 - - - - $class - - CF$UID - 88 - - NS.objects - CF$UID 261 - - CF$UID - 263 - - - - - $class - - CF$UID - 126 - - NS.keys - - - CF$UID - 122 - - - CF$UID - 123 - - - NS.objects - - - CF$UID - 254 - CF$UID 262 - - - 298 - - $class - - CF$UID - 126 - - NS.keys - CF$UID - 122 - - - CF$UID - 123 - - - NS.objects - - - CF$UID - 257 + 263 CF$UID 264 - - - 717 - - $class - - CF$UID - 37 - - NS.keys - CF$UID - 119 + 265 NS.objects @@ -2814,20 +2740,66 @@ CF$UID 266 + + CF$UID + 15 + + + CF$UID + 267 + + + CF$UID + 15 + + + CF$UID + 15 + + + CF$UID + 269 + + + CF$UID + 272 + + IDEVisibleRect + IDEUnsavedDocumentFilteringEnabled + IDENavigatorExpandedItemsBeforeFilteringSet + IDERecentDocumentFilteringEnabled + IDESCMStatusFilteringEnabled + IDESelectedObjects + IDEExpandedItemsSet + {{0, 0}, {259, 658}} + + $class + + CF$UID + 268 + + NS.objects + + + + $classes + + NSSet + NSObject + + $classname + NSSet + $class CF$UID - 88 + 149 NS.objects - - CF$UID - 267 - CF$UID 270 @@ -2838,50 +2810,8 @@ $class CF$UID - 126 + 97 - NS.keys - - - CF$UID - 122 - - - CF$UID - 123 - - - NS.objects - - - CF$UID - 268 - - - CF$UID - 269 - - - - IDEEditor - 587 - - $class - - CF$UID - 126 - - NS.keys - - - CF$UID - 122 - - - CF$UID - 123 - - NS.objects @@ -2890,34 +2820,211 @@ CF$UID - 272 + 146 + + + CF$UID + 143 - IDEDebuggerArea - 115 + Pong $class CF$UID - 37 - - NS.keys - - NS.objects - - - - $class - - CF$UID - 167 + 268 NS.objects CF$UID - 101 + 273 + + + CF$UID + 274 + + + + + $class + + CF$UID + 97 + + NS.objects + + + CF$UID + 271 + + + + + $class + + CF$UID + 97 + + NS.objects + + + CF$UID + 271 + + + CF$UID + 146 + + + + + $class + + CF$UID + 39 + + NS.keys + + + CF$UID + 203 + + + NS.objects + + + CF$UID + 276 + + + + + $class + + CF$UID + 97 + + NS.objects + + + CF$UID + 277 + + + CF$UID + 279 + + + CF$UID + 281 + + + + + $class + + CF$UID + 184 + + NS.keys + + + CF$UID + 206 + + + CF$UID + 207 + + + NS.objects + + + CF$UID + 124 + + + CF$UID + 278 + + + + 260 + + $class + + CF$UID + 184 + + NS.keys + + + CF$UID + 206 + + + CF$UID + 207 + + + NS.objects + + + CF$UID + 120 + + + CF$UID + 280 + + + + 1016 + + $class + + CF$UID + 184 + + NS.keys + + + CF$UID + 206 + + + CF$UID + 207 + + + NS.objects + + + CF$UID + 282 + + + CF$UID + 283 + + + + IDEUtilitiesArea + 260 + PongViewController.m + + $class + + CF$UID + 149 + + NS.objects + + + CF$UID + 113 diff --git a/src/ggs_player.erl b/src/ggs_player.erl index e80aeac..9b31d3d 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -25,11 +25,10 @@ %% identifying the player. %% @spec start_link(Socket::socket()) -> {ok, Pid} | {error, Reason} start(Socket) -> - erlang:display("start_link"), gen_server:start(?MODULE, [Socket], []). init([Socket]) -> - {ok, Protocol} = ggs_protocol:start_link(Socket, self()), + {ok, Protocol} = ggs_protocol:start_link(), {ok, Token} = ggs_coordinator:join_lobby(), case ggs_coordinator:join_table("1337") of @@ -75,20 +74,24 @@ stop(Player) -> gen_server:cast(Player, stop). %% Internals - -handle_call({notify, Message}, _From, #state { protocol = Protocol } = State) -> - ggs_protocol:send_command(Protocol, Message), - {noreplay, State}; +handle_call({notify, Message}, _From, #state { protocol = Protocol, socket = Socket } = State) -> + gen_tcp:send(Socket, ggs_protocol:create_message(Protocol, Message)), + {noreply, State}; handle_call({game_cmd, Command, _Headers, Data}, _From, #state { table = Table } = State) -> ggs_table:notify(Table, self(), {game, Command, Data}), - {noreplay, State}; + {noreply, State}; handle_call({srv_cmd, "define", _Headers, Data}, _From, #state { table = Table } = State) -> ggs_table:notify(Table, self(), {server, define, Data}), - {noreplay, State}; + {noreply, State}; + handle_call(_Request, _From, St) -> {stop, unimplemented, St}. + +handle_cast({tcp, _Socket, Data}, #state { protocol = Protocol } = _State) -> + ggs_protocol:parse(Protocol, Data); + handle_cast(_Request, St) -> {stop, unimplemented, St}. handle_info(_Info, St) -> {stop, unimplemented, St}. diff --git a/src/ggs_protocol.erl b/src/ggs_protocol.erl index f561ff7..b0c16e8 100644 --- a/src/ggs_protocol.erl +++ b/src/ggs_protocol.erl @@ -1,121 +1,62 @@ -%%% @doc This module handles TCP incomming and outcommint. +%% Parse a string formatted with the GGS protocol using +%% an FSM. Each char is put into the FSM, which incrementally +%% builds a list of strings which represent the complete +%% message. -module(ggs_protocol). --export([start_link/2,stop/1]). --behaviour(gen_server). --export([init/1, handle_call/3, handle_cast/2, handle_info/2, - terminate/2, code_change/3]). -%% Old --export([parse/1, getToken/1, create_message/4, send_command/2]). +-export([parse/2, getToken/1, create_message/4, + expect_headers/2, expect_data_section/2, + expect_headers/3, expect_data_section/3]). --vsn(1.0). +%% tests +-export([to_dictionary/2]). --record(state, { - player, - socket, - header_string, - header_list, - body, - content_length}). - -start_link(Socket, Player) -> - gen_server:start_link(?MODULE, {Socket, Player}, []). - -stop(Protocol) -> - gen_server:cast(Protocol, stop). - -send_command(Protocol, {Command, Data}) -> - gen_server:cast(Protocol, {send, Command, Data}). - -init({Socket, Player}) -> - erlang:port_connect(Socket, self()), - State = #state{ - socket = Socket, - player = Player, - header_list = [], - header_string = "", - body = "", - content_length = -1 - }, - {ok, State}. - -handle_cast({tcp, _Socket, Data}, State) -> - case State#state.content_length of - -1 -> % its a header - TmpHeader = State#state.header_string ++ Data, - case string:str(TmpHeader, "\n\n") of - 0 -> % still in header - {reply, ok, State # state {header_string = TmpHeader}}; - _ -> % we left the header - {Header, Body} = parse(TmpHeader), - {_, ContentLengthString} = lists:keyfind(content_len, 1, Header), % find Content-Length - {ContentLength, []} = string:to_integer(ContentLengthString), - {reply, ok, State#state{ - header_list = Header, - header_string = "", - body = Body, - content_length = ContentLength}} - end; - Length -> % its a body - LBody = string:len(State#state.body), - LData = string:len(Data), - NewLength = LBody + LData, - if - NewLength < Length -> % not enough data - Body = State#state.body ++ Data, - {reply, ok, State#state {body = Body}}; - NewLength > Length -> % too much data - EndOfMessagePos = LBody + LData - Length, - Body = State#state.body ++ string:substr(Data, 0, EndOfMessagePos), - NextHeader = string:substr(Data, EndOfMessagePos, LData), - Message = prettify(State#state.header_list, Body), - gen_player:notify_game(State#state.player, Message), - {reply, ok, State#state { - header_string = NextHeader, - header_list = [], - body = "", - content_length = -1}}; - NewLength == Length -> % end of message - Message = prettify(State#state.header_list, State#state.body ++ Data), - gen_player:notify_game(State#state.player, Message), - {reply, ok, State#state { - header_string = "", - header_list = [], - body = "", - content_length = -1}} - end - end; - -handle_cast({send, Command, Data}, State) -> - Message = create_message(Command, "text", "text", Data), - gen_tcp:send(State#state.socket, Message), - {noreply, State}; - -handle_cast(_Request, St) -> {stop, unimplemented, St}. -handle_call(_Request, _From, St) -> {stop, unimplemented, St}. - -handle_info(_Info, St) -> {stop, unimplemented, St}. +% gen_fsm callbacks.. +-export([init/1, handle_info/2, terminate/2, code_change/3, start_link/0]). -terminate(_Reason, _St) -> ok. -code_change(_OldVsn, St, _Extra) -> {ok, St}. +-define(SERVER, ?MODULE). +%% JONTES TESTS +%test() -> +% start_link(), +% parse("Token: %s\nServer-Command: define\nContent-Type: text\nContent-Length: 9\n\nHELLOWORLDToken: %s\nServer-Command: define\nContent-Type: text\nContent-Length: 9\n\nHELLOWORLDToken: %s\nServer-Command: define\n"), +% to_dictionary(["Hello: world", "Hi: there!"], []). +%% END TESTS %% API Functions -parse(Data) -> - do_parse(Data, []). - +parse(Protocol, Data) -> + lists:foreach(fun(X) -> + gen_fsm:sync_send_event(Protocol, {char, X}) + end, Data). + + +start_link() -> + gen_fsm:start_link({local, ?SERVER}, ?MODULE, [], []). + +% Start state: {[""],0}, meaning: +% - Start with no strings parsed +% - Start with a data-section-lengths of 0 +init([]) -> + {ok,expect_headers,{[""], 0}}. + + + getToken(Parsed) -> + case lists:keyfind(token, 1, Parsed) of {_, Value} -> Value; false -> false end. - +create_message({Command, Data}) -> + create_message(Command, "text", "text", Data). +%% Assemble a message which can b +%e used as a reply to a client create_message(Cmd, Enc, Acc, Data) -> Length = integer_to_list(string:len(Data)), Msg = "Client-Command: " ++ Cmd ++ "\n" ++ @@ -127,41 +68,64 @@ create_message(Cmd, Enc, Acc, Data) -> Data, Msg. -%% Internal helpers -do_parse(Data, Headers) -> - NewLinePos = string:chr(Data, $\n), - Line = string:substr(Data, 1, NewLinePos-1), - Tokens = re:split(Line, ": ", [{return, list}]), - case handle(Tokens) of - {Command, more} -> - do_parse(string:substr(Data, NewLinePos+1), Headers ++ [Command]); - {separator, data_next} -> - {Headers, Data} +%%% Transitions +expect_headers(_Event, State) -> + {next_state, expect_headers, State}. +expect_data_section(_Event, State) -> + {next_state, expect_data_section, State}. + + +%%% End transitions +expect_headers({char, $\n}, _From, {Strings, Remains}) -> + [LastMessage|_] = Strings, + case LastMessage of + "" -> % We have a data section.. Last line should thus be the content length. + [LastMessage, SecondLast | _] = Strings, + case re:split(SecondLast, ": ", [{return, list}]) of + ["Content-Length", X] -> + {Int,_} = string:to_integer(X), + {reply, ok, expect_data_section, {[""|Strings], Int}}; + Other -> ok + end; + Other -> + {reply,ok,expect_headers, {[""|Strings], Remains}} + end; + +expect_headers({char, Char}, _From, {[Current|Rest], Remains}) -> + NewCurrent = Current ++ [Char], + {reply,ok, expect_headers, {[NewCurrent|Rest], Remains}}. + + +expect_data_section({char, Char}, From, {Strings, Remains}) -> + case Remains of + 0 -> + [LastMsg,_|Rest] = Strings, + NewMsg = LastMsg ++ [Char], + Result = [NewMsg|Rest], + {Pid,_} = From, + erlang:display(From), + Pid ! (prettify(to_dictionary(Rest, []), NewMsg)), + {reply, ok, expect_headers, {[""], 0}}; + Other -> [LastMsg|Rest] = Strings, + NewMsg = LastMsg ++ [Char], + {reply, ok, expect_data_section, {[NewMsg|Rest], Remains-1}} end. - -handle([[]]) -> - {separator, data_next}; -handle(["Server-Command", Param]) -> - {{srv_cmd, Param}, more}; -handle(["Game-Command", Param]) -> - {{game_cmd, Param}, more}; -handle(["Content-Length", Param]) -> - {{content_len, Param}, more}; -handle(["Token", Param]) -> - {{token, Param}, more}; -handle(["Content-Type", Param]) -> - {{content_type, Param}, more}. - -%handle_data(Data, Length) -> -% {data, string:substr(Data,1,Length)}. +handle_call(_Msg, _From, State) -> + {noreply, State}. +handle_info(_Msg, State) -> + {noreply, State}. +terminate(_Reason, _State) -> + ok. +code_change(_OldVsn, State, _Extra) -> + {ok, State}. prettify(Args, Data) -> - case lists:keyfind(srv_cmd, 1, Args) of + case lists:keyfind("Server-Command", 1, Args) of {_, Value} -> {srv_cmd, Value, Args, Data}; _Other -> - case lists:keyfind(game_cmd, 1, Args) of + case lists:keyfind("Game-Command", 1, Args) of {_, Value} -> {game_cmd, Value, Args, Data}; _ -> @@ -169,3 +133,9 @@ prettify(Args, Data) -> end end. +to_dictionary([], Dict) -> + Dict; +to_dictionary([S|Strings], Dict) -> + [First, Snd] = re:split(S, ": ", [{return, list}]), + to_dictionary(Strings, [{First, Snd}|Dict]). + diff --git a/src/ggs_protocol.erl.orig b/src/ggs_protocol.erl.orig new file mode 100644 index 0000000..61d424b --- /dev/null +++ b/src/ggs_protocol.erl.orig @@ -0,0 +1,146 @@ +%% Parse a string formatted with the GGS protocol using +%% an FSM. Each char is put into the FSM, which incrementally +%% builds a list of strings which represent the complete +%% message. + +-module(ggs_protocol). +-export([parse/1, getToken/1, create_message/4, + expect_headers/2, expect_data_section/2, + expect_headers/3, expect_data_section/3]). + +%% tests +-export([test/0, to_dictionary/2]). + +% gen_fsm callbacks.. +-export([init/1, handle_info/2, terminate/2, code_change/3, start_link/0]). + + +-define(SERVER, ?MODULE). + +%% JONTES TESTS +test() -> + start_link(), + parse("Token: %s\nServer-Command: define\nContent-Type: text\nContent-Length: 9\n\nHELLOWORLDToken: %s\nServer-Command: define\nContent-Type: text\nContent-Length: 9\n\nHELLOWORLDToken: %s\nServer-Command: define\n"), + to_dictionary(["Hello: world", "Hi: there!"], []). +%% END TESTS + + +%% API Functions +parse(Data) -> + lists:foreach(fun(X) -> + gen_fsm:sync_send_event(?SERVER, {char, X}) + end, Data). + + +start_link() -> + gen_fsm:start_link({local, ?SERVER}, ?MODULE, [], []). + +% Start state: {[""],0}, meaning: +% - Start with no strings parsed +% - Start with a data-section-lengths of 0 +init([]) -> + {ok,expect_headers,{[""], 0}}. + + + +getToken(Parsed) -> + + case lists:keyfind(token, 1, Parsed) of + {_, Value} -> + Value; + false -> + false + end. +<<<<<<< Updated upstream +======= + + +create_message(Protocol, {Command, Data}) { + create_message(Command, "text", "text", Data), +} +>>>>>>> Stashed changes + +%% Assemble a message which can b +%e used as a reply to a client +create_message(Cmd, Enc, Acc, Data) -> + Length = integer_to_list(string:len(Data)), + Msg = "Client-Command: " ++ Cmd ++ "\n" ++ + "Client-Encoding: " ++ Enc ++ "\n" ++ + "Content-Size: " ++ Length ++ "\n" ++ + "GGS-Version: 1.0\n" ++ + "Accept: " ++ Acc ++ "\n" ++ + "\n" ++ + Data, + Msg. + +%%% Transitions +expect_headers(_Event, State) -> + {next_state, expect_headers, State}. +expect_data_section(_Event, State) -> + {next_state, expect_data_section, State}. + + +%%% End transitions +expect_headers({char, $\n}, _From, {Strings, Remains}) -> + [LastMessage|_] = Strings, + case LastMessage of + "" -> % We have a data section.. Last line should thus be the content length. + [LastMessage, SecondLast | _] = Strings, + case re:split(SecondLast, ": ", [{return, list}]) of + ["Content-Length", X] -> + {Int,_} = string:to_integer(X), + {reply, ok, expect_data_section, {[""|Strings], Int}}; + Other -> ok + end; + Other -> + {reply,ok,expect_headers, {[""|Strings], Remains}} + end; + +expect_headers({char, Char}, _From, {[Current|Rest], Remains}) -> + NewCurrent = Current ++ [Char], + {reply,ok, expect_headers, {[NewCurrent|Rest], Remains}}. + + +expect_data_section({char, Char}, From, {Strings, Remains}) -> + case Remains of + 0 -> + [LastMsg,_|Rest] = Strings, + NewMsg = LastMsg ++ [Char], + Result = [NewMsg|Rest], + {Pid,_} = From, + erlang:display(From), + Pid ! (prettify(to_dictionary(Rest, []), NewMsg)), + {reply, ok, expect_headers, {[""], 0}}; + Other -> [LastMsg|Rest] = Strings, + NewMsg = LastMsg ++ [Char], + {reply, ok, expect_data_section, {[NewMsg|Rest], Remains-1}} + end. +handle_call(_Msg, _From, State) -> + {noreply, State}. +handle_info(_Msg, State) -> + {noreply, State}. +terminate(_Reason, _State) -> + ok. +code_change(_OldVsn, State, _Extra) -> + {ok, State}. + + +prettify(Args, Data) -> + case lists:keyfind("Server-Command", 1, Args) of + {_, Value} -> + {srv_cmd, Value, Args, Data}; + _Other -> + case lists:keyfind("Game-Command", 1, Args) of + {_, Value} -> + {game_cmd, Value, Args, Data}; + _ -> + ok + end + end. + +to_dictionary([], Dict) -> + Dict; +to_dictionary([S|Strings], Dict) -> + [First, Snd] = re:split(S, ": ", [{return, list}]), + to_dictionary(Strings, [{First, Snd}|Dict]). + diff --git a/src/ggs_server.erl b/src/ggs_server.erl index 833feac..40bb88f 100644 --- a/src/ggs_server.erl +++ b/src/ggs_server.erl @@ -55,7 +55,7 @@ init([Port]) -> {ok, State#state{lsock = LSock}, 0} end. -handle_call({backup_state, OldState}, _From, State) -> +handle_call({backup_state, OldState}, _From, _State) -> io:format("Received old state from backup~n"), {noreply, OldState}. @@ -72,7 +72,7 @@ handle_info(timeout, #state{lsock = LSock} = State) -> {ok, _Sock} = gen_tcp:accept(LSock), {noreply, State}; -handle_info(Other, State) -> +handle_info(Other, _State) -> erlang:display(Other). terminate(_Reason, _State) -> @@ -106,13 +106,14 @@ handle_cast({srv_cmd, "call", Headers, Data}, State) -> % Set the new state to the reference generated, and JSVM associated %handle_cast({server, hello, Headers}, State) -> -handle_cast({srv_cmd, "hello", Headers, Data}, State) -> - GameToken = case proplist:get_value(game_token, Headers) of -> - undefined -> getNewToken(); - GT -> GT; +handle_cast({srv_cmd, "hello", Headers, _Data}, State) -> + GameToken = case proplist:get_value(game_token, Headers) of + undefined -> getNewToken(); + GT -> GT end, ClientToken = getNewToken(), OldMap = State#state.client_vm_map, + GameVM = getJSVM(ClientToken, State), NewState = State#state{client_vm_map = OldMap ++ [{ClientToken, GameVM, GameToken}]}, gen_server:cast(ggs_backup, {set_backup, NewState}), {noreply, NewState}. From 087dde8916de3d345550e3f87e772244af929dec Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 11 Apr 2011 17:33:33 +0200 Subject: [PATCH 121/192] removed fsm name --- src/ggs_protocol.erl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ggs_protocol.erl b/src/ggs_protocol.erl index b0c16e8..03acddd 100644 --- a/src/ggs_protocol.erl +++ b/src/ggs_protocol.erl @@ -33,8 +33,8 @@ parse(Protocol, Data) -> start_link() -> - gen_fsm:start_link({local, ?SERVER}, ?MODULE, [], []). - + gen_fsm:start_link(?MODULE, [], []). + % Start state: {[""],0}, meaning: % - Start with no strings parsed % - Start with a data-section-lengths of 0 From 739939dfac887cbcbe4b44ecdc744380d7835c50 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 11 Apr 2011 20:12:23 +0200 Subject: [PATCH 122/192] added more pong to gitignore --- .gitignore | 3 ++- doc/report | 2 +- .../project.xcworkspace/contents.xcworkspacedata | 7 +++++++ src/ggs_gamevm_p.erl | 10 ++++++++++ 4 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 games/Pong/Pong.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/.gitignore b/.gitignore index 44c7b7b..0d32ed9 100644 --- a/.gitignore +++ b/.gitignore @@ -5,4 +5,5 @@ Mnesia.* *.swo games/Pong/build/**/* *~ - +games/Pong/Pong.xcodeproj/project.xcworkspace/**/* +games/Pong/Pong.xcodeproj/xcuserdata/**/* diff --git a/doc/report b/doc/report index aad268d..eb8ebe0 160000 --- a/doc/report +++ b/doc/report @@ -1 +1 @@ -Subproject commit aad268d03a3c23de917cfecf767d583d3cb32633 +Subproject commit eb8ebe0347e1f75cbfe70b52f40a63d13741a89a diff --git a/games/Pong/Pong.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/games/Pong/Pong.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..2c44ce8 --- /dev/null +++ b/games/Pong/Pong.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/src/ggs_gamevm_p.erl b/src/ggs_gamevm_p.erl index 4d4cd67..92db3a9 100644 --- a/src/ggs_gamevm_p.erl +++ b/src/ggs_gamevm_p.erl @@ -119,11 +119,13 @@ intern_add_player(Table, Player) -> {ok, PlayerList} = ggs_table:get_player_list(Table), case length(PlayerList) of 1 -> + erlang:display("P1: joining"), ggs_db:setItem(Table, local_storage, Player, player1), ggs_db:setItem(Table, local_storage, player1_y, 50), ggs_table:send_command(Table, Player, {"welcome", int2str(1)}), ggs_table:notify_all_players(Table, {"player1_y", int2str(50)}); 2 -> + erlang:display("P2: joining"), ggs_db:setItem(Table, local_storage, Player, player2), ggs_db:setItem(Table, local_storage, player2_y, 50), ggs_table:send_command(Table, Player, {"welcome", int2str(2)}), @@ -137,6 +139,7 @@ intern_add_player(Table, Player) -> intern_up(Table, Player) -> case ggs_db:getItem(Table, local_storage, Player) of player1 -> + erlang:display("P1: command up"), Y = ggs_db:getItem(Table, local_storage, player1_y), NewY = Y - 10, case NewY >= 0 of @@ -147,6 +150,7 @@ intern_up(Table, Player) -> ggs_table:send_command(Table, Player, {"notice", "Already on top"}) end; player2 -> + erlang:display("P2: command up"), Y = ggs_db:getItem(Table, local_storage, player2_y), NewY = Y - 10, case NewY >= 0 of @@ -161,6 +165,7 @@ intern_up(Table, Player) -> intern_down(Table, Player) -> case ggs_db:getItem(Table, local_storage, Player) of player1 -> + erlang:display("P1: command down"), Y = ggs_db:getItem(Table, local_storage, player1_y), NewY = Y + 10, case NewY =< 100 of @@ -171,6 +176,7 @@ intern_down(Table, Player) -> ggs_table:send_command(Table, Player, {"notice", "Already on bottom"}) end; player2 -> + erlang:display("P2: command down"), Y = ggs_db:getItem(Table, local_storage, player2_y), NewY = Y + 10, case NewY =< 100 of @@ -189,11 +195,13 @@ intern_start(Table, Player) -> ggs_db:setItem(Table, local_storage, player1_points, 0), case ggs_db:getItem(Table, local_storage, player2_ready) of true -> + erlang:display("P1 ready, start game."), ggs_table:notify_all_players(Table, {"game", "start"}), ggs_db:setItem(Table, local_storage, ball, {50,50,1,1}), Pid = spawn(fun() -> game_loop([Table]) end), Pid ! tick; _Other -> + erlang:display("P1 ready, waiting."), ggs_table:send_command(Table, Player, {"game", "wait"}) end; player2 -> @@ -201,11 +209,13 @@ intern_start(Table, Player) -> ggs_db:setItem(Table, local_storage, player2_points, 0), case ggs_db:getItem(Table, local_storage, player1_ready) of true -> + erlang:display("P2 ready, start game."), ggs_table:notify_all_players(Table, {"game", "start"}), ggs_db:setItem(Table, local_storage, ball, {50,50,-1,-1}), GameLoop = spawn(fun() -> game_loop([Table]) end), GameLoop ! tick; _Other -> + erlang:display("P2 ready, waiting."), ggs_table:send_command(Table, Player, {"game", "wait"}) end end. From 9c8d04114c13da9f6048e080c2a4e388de249b18 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 12 Apr 2011 17:50:34 +0200 Subject: [PATCH 123/192] added initial pong bots --- games/Pong-bots/ggs-delegate.rb | 15 ++++++ games/Pong-bots/ggs-network.rb | 83 +++++++++++++++++++++++++++++++++ games/Pong-bots/pong-bot.rb | 29 ++++++++++++ 3 files changed, 127 insertions(+) create mode 100644 games/Pong-bots/ggs-delegate.rb create mode 100644 games/Pong-bots/ggs-network.rb create mode 100644 games/Pong-bots/pong-bot.rb diff --git a/games/Pong-bots/ggs-delegate.rb b/games/Pong-bots/ggs-delegate.rb new file mode 100644 index 0000000..be4cc47 --- /dev/null +++ b/games/Pong-bots/ggs-delegate.rb @@ -0,0 +1,15 @@ +module GGSDelegate + + def ggsNetworkReady(ggs_network, ready) + raise "ggsNetworkReady(ggs_network, ready) must be overridden" + end + + def ggsNetworkDefined(ggs_network, defined) + raise "ggsNetworkDefined(ggs_network, defined) must be overridden" + end + + def ggsNetworkReceivedCommandWithArgs(ggs_network, command, args) + raise "ggsNetworkReceivedCommandWithArgs(ggs_network, command, args) must be overridden" + end + +end \ No newline at end of file diff --git a/games/Pong-bots/ggs-network.rb b/games/Pong-bots/ggs-network.rb new file mode 100644 index 0000000..1a1e820 --- /dev/null +++ b/games/Pong-bots/ggs-network.rb @@ -0,0 +1,83 @@ +require 'socket' + +class GGSNetwork + + SERVER = "Server" + CLIENT = "Client" + + public + + attr_accessor :delegate + + def initialize(delegate, host='localhost', port=9000) + connect(host, port) + @delegate = delegate + end + + def define(source_code) + write( makeMessage(SERVER, "define", source_code) ) + end + + def sendCommand(command, args="") + write( makeMessage(CLIENT, command, args) ) + end + + protected + + def connect(host, port) + gs = TCPSocket.open(host, port) + @socket = gs.accept + Thread.start(@socket) { |s| read(s) } + end + + def write(message) + @socket.write(message) + end + + def read(s) + loop do + headers = {} + size = 0 + args = "" + + while (line = @socket.gets) != "\n" + key, value = line.split(": ") + headers[key] = value + end + + if headers.contains?("Content-Size") + headers["Content-Size"].to_i.times do + args << @socket.recv + end + end + + receivedCommand(headers, args) + end + end + + def receivedCommand(headers, data) + if headers.contains? "Client-Command" + command = headers["Client-Command"] + case command + when "hello" + @delegate.ggsNetworkReady(self, true) + when "defined" + @delegate.ggsNetworkDefined(self, true) + else + @delegate.ggsNetworkReceivedCommandWithArgs(self, command, data) + end + end + end + + def makeMessage(serverOrGame, command, args) + message =< Date: Tue, 12 Apr 2011 18:29:47 +0200 Subject: [PATCH 124/192] pong-bot bugfixes --- games/Pong-bots/ggs-network.rb | 13 ++++++------- games/Pong-bots/pong-bot.rb | 2 ++ games/Pong-bots/test.rb | 24 ++++++++++++++++++++++++ src/ggs_protocol.erl | 1 + 4 files changed, 33 insertions(+), 7 deletions(-) mode change 100644 => 100755 games/Pong-bots/pong-bot.rb create mode 100644 games/Pong-bots/test.rb diff --git a/games/Pong-bots/ggs-network.rb b/games/Pong-bots/ggs-network.rb index 1a1e820..7b61322 100644 --- a/games/Pong-bots/ggs-network.rb +++ b/games/Pong-bots/ggs-network.rb @@ -25,16 +25,15 @@ class GGSNetwork protected def connect(host, port) - gs = TCPSocket.open(host, port) - @socket = gs.accept - Thread.start(@socket) { |s| read(s) } + @socket = TCPSocket.new(host, port) + read end def write(message) @socket.write(message) end - def read(s) + def read loop do headers = {} size = 0 @@ -45,7 +44,7 @@ class GGSNetwork headers[key] = value end - if headers.contains?("Content-Size") + if headers.has_key?("Content-Size") headers["Content-Size"].to_i.times do args << @socket.recv end @@ -56,7 +55,7 @@ class GGSNetwork end def receivedCommand(headers, data) - if headers.contains? "Client-Command" + if headers.has_key? "Client-Command" command = headers["Client-Command"] case command when "hello" @@ -71,7 +70,7 @@ class GGSNetwork def makeMessage(serverOrGame, command, args) message =< [LastMessage|_] = Strings, case LastMessage of "" -> % We have a data section.. Last line should thus be the content length. + % FIXME: the Content-Length doesn't have to be the last Header line [LastMessage, SecondLast | Rest] = Strings, case re:split(SecondLast, ": ", [{return, list}]) of ["Content-Length", X] -> From 16045afb212d5a340d249c347c452243dee0a1f3 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 13 Apr 2011 03:44:00 +0200 Subject: [PATCH 125/192] working pong-bot --- games/Pong-bots/ggs-network.rb | 40 +-- games/Pong-bots/pong-bot.rb | 88 +++++- .../UserInterfaceState.xcuserstate | 254 +++++++++--------- src/ggs_player.erl | 2 +- src/ggs_protocol.erl | 2 +- 5 files changed, 237 insertions(+), 149 deletions(-) diff --git a/games/Pong-bots/ggs-network.rb b/games/Pong-bots/ggs-network.rb index 7b61322..b8cac8d 100644 --- a/games/Pong-bots/ggs-network.rb +++ b/games/Pong-bots/ggs-network.rb @@ -3,14 +3,13 @@ require 'socket' class GGSNetwork SERVER = "Server" - CLIENT = "Client" + CLIENT = "Game" public attr_accessor :delegate - def initialize(delegate, host='localhost', port=9000) - connect(host, port) + def initialize(delegate) @delegate = delegate end @@ -22,15 +21,16 @@ class GGSNetwork write( makeMessage(CLIENT, command, args) ) end - protected - - def connect(host, port) + def connect(host='localhost', port=9000) @socket = TCPSocket.new(host, port) read end + protected + def write(message) @socket.write(message) + puts message end def read @@ -39,26 +39,31 @@ class GGSNetwork size = 0 args = "" + select([@socket], nil, nil) + while (line = @socket.gets) != "\n" + break if line.nil? + key, value = line.split(": ") - headers[key] = value + headers[key] = value.strip end - + if headers.has_key?("Content-Size") - headers["Content-Size"].to_i.times do - args << @socket.recv - end + args = @socket.read(headers["Content-Size"].to_i) end - receivedCommand(headers, args) + receivedCommand(headers, args) end end def receivedCommand(headers, data) + puts [headers, data].inspect + if headers.has_key? "Client-Command" command = headers["Client-Command"] case command when "hello" + @game_token = data @delegate.ggsNetworkReady(self, true) when "defined" @delegate.ggsNetworkDefined(self, true) @@ -69,13 +74,12 @@ class GGSNetwork end def makeMessage(serverOrGame, command, args) - message =< 0 -#{args} -MESSAGE message end diff --git a/games/Pong-bots/pong-bot.rb b/games/Pong-bots/pong-bot.rb index de24dde..98b172f 100755 --- a/games/Pong-bots/pong-bot.rb +++ b/games/Pong-bots/pong-bot.rb @@ -9,11 +9,26 @@ class PongBot include GGSDelegate def initialize + @me = nil + @player1 = Pos.new + @player2 = Pos.new + @ball = Pos.new + @game_paused = true + @send_start = false + @ggs_network = GGSNetwork.new(self) + @ggs_network.connect() end def ggsNetworkReady(ggs_network, ready) @ggs_network.sendCommand("ready") + + t = Thread.new { + loop do + gameTick() + sleep 0.3 + end + } end def ggsNetworkDefined(ggs_network, defined) @@ -21,9 +36,78 @@ class PongBot end def ggsNetworkReceivedCommandWithArgs(ggs_network, command, args) - + case command + when "welcome" then welcome(args) + when "ball" then ball(args) + when "player1_y" then player1_y(args) + when "player2_y" then player2_y(args) + when "game" then game(args) + when "player1_points" then new_round() + when "player2_points" then new_round() + end end - + + protected + + def gameTick() + if @game_paused + unless @send_start + @ggs_network.sendCommand("start") + @send_start = true + end + else + puts "#{@ball.y}:#{@me.y}" + if @ball.y < @me.y - 5 + @ggs_network.sendCommand("up") + elsif @ball.y > @me.y - 5 + @ggs_network.sendCommand("down") + end + end + end + + def welcome(who_am_i) + if who_am_i == 1 + @me = @player1 + else + @me = @player2 + end + end + + def ball(pos_s) + x, y = pos_s.split(",") + @ball.x, @ball.y = x.to_i, y.to_i + end + + def player1_y(y) + @player1.y = y.to_i + end + + def player2_y(y) + @player2.y = y.to_i + end + + def game(wait_or_start) + if wait_or_start == "wait" + puts "Other ready" + else + @game_paused = false + end + end + + def new_round + @game_paused = true + @send_start = false + end + + + class Pos + attr_accessor :x, :y + def initialize + @x = 0 + @y = 0 + end + end + end if __FILE__ == $0 diff --git a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate index 2503cac..4d0530f 100644 --- a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate +++ b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate @@ -209,11 +209,11 @@ CF$UID - 50 + 46 CF$UID - 54 + 50 CF$UID @@ -449,7 +449,7 @@ PrimaryDocumentVisibleCharacterRange HideAllIssues PrimaryDocumentSelectedCharacterRange - 324249006.22126502 + 324349224.47908998 {0, 910} {797, 0} @@ -462,106 +462,6 @@ $classname NSMutableDictionary - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 43 - - - CF$UID - 44 - - - CF$UID - 45 - - - CF$UID - 46 - - - NS.objects - - - CF$UID - 47 - - - CF$UID - 48 - - - CF$UID - 15 - - - CF$UID - 49 - - - - PrimaryDocumentTimestamp - PrimaryDocumentVisibleCharacterRange - HideAllIssues - PrimaryDocumentSelectedCharacterRange - 324253828.95541298 - {2248, 1438} - {953, 0} - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 43 - - - CF$UID - 44 - - - CF$UID - 45 - - - CF$UID - 46 - - - NS.objects - - - CF$UID - 51 - - - CF$UID - 52 - - - CF$UID - 15 - - - CF$UID - 53 - - - - 324255376.074705 - {351, 2071} - {2942, 0} $class @@ -588,6 +488,102 @@ NS.objects + + + CF$UID + 43 + + + CF$UID + 44 + + + CF$UID + 15 + + + CF$UID + 45 + + + + 324351348.42624801 + {1190, 1757} + {953, 0} + + $class + + CF$UID + 41 + + NS.keys + + + CF$UID + 34 + + + CF$UID + 35 + + + CF$UID + 36 + + + CF$UID + 37 + + + NS.objects + + + CF$UID + 47 + + + CF$UID + 48 + + + CF$UID + 15 + + + CF$UID + 49 + + + + 324349919.87820297 + {1453, 2127} + {2942, 0} + + $class + + CF$UID + 41 + + NS.keys + + + CF$UID + 51 + + + CF$UID + 52 + + + CF$UID + 53 + + + CF$UID + 54 + + + NS.objects CF$UID @@ -607,6 +603,10 @@ + PrimaryDocumentTimestamp + PrimaryDocumentVisibleCharacterRange + HideAllIssues + PrimaryDocumentSelectedCharacterRange 324248959.37454498 {0, 531} {0, 0} @@ -655,8 +655,8 @@ - 324248237.36148798 - {423, 2314} + 324347076.57831001 + {328, 2297} $class @@ -667,19 +667,19 @@ CF$UID - 34 + 51 CF$UID - 35 + 52 CF$UID - 36 + 53 CF$UID - 37 + 54 NS.objects @@ -1059,7 +1059,7 @@ 102 NS.time - 324255371.33403099 + 324351343.54201001 $classes @@ -1070,7 +1070,7 @@ $classname NSDate - Today at 00:56 + Today at 03:35 $classes @@ -1147,7 +1147,7 @@ 109 - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m $class @@ -1165,7 +1165,7 @@ 111 - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m $class @@ -1201,7 +1201,7 @@ 115 - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSDelegate.h + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m $class @@ -1219,7 +1219,7 @@ 117 - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSDelegate.h $class @@ -1390,7 +1390,7 @@ IDEWorkspaceTabControllerDesignAreaSplitView IDEShowUtilities AssistantEditorsLayout - GGSNetwork.m + PongViewController.m $class @@ -1587,7 +1587,7 @@ 153 - GGSNetwork.m + PongViewController.m $classes @@ -1641,7 +1641,7 @@ documentURL CF$UID - 26 + 24 timestamp @@ -1996,19 +1996,19 @@ CF$UID - 43 + 34 CF$UID - 44 + 35 CF$UID - 45 + 36 CF$UID - 46 + 37 NS.objects @@ -2031,9 +2031,9 @@ - 324255376.07524002 - {351, 2071} - {2942, 0} + 324351348.42674202 + {1190, 1757} + {953, 0} $classes @@ -2043,7 +2043,7 @@ $classname NSDictionary - -onSocket:didReadData:withTag: + @implementation PongViewController Xcode.IDEKit.EditorDocument.SourceCode $class @@ -2062,7 +2062,7 @@ 199 - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m $class diff --git a/src/ggs_player.erl b/src/ggs_player.erl index b62c232..68c0a01 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -102,7 +102,7 @@ handle_cast({game_cmd, Command, _Headers, Data}, #state { table = Table } = Stat ggs_table:notify(Table, self(), {game, Command, Data}), {noreply, State}; -handle_cast(_Request, St) -> +handle_cast(Request, St) -> {stop, unimplemented1, St}. handle_info({tcp, _Socket, Data}, #state { protocol = Protocol } = State) -> diff --git a/src/ggs_protocol.erl b/src/ggs_protocol.erl index 3176429..92b7362 100644 --- a/src/ggs_protocol.erl +++ b/src/ggs_protocol.erl @@ -116,7 +116,7 @@ prettify(Args, Data) -> case lists:keyfind("Game-Command", 1, Args) of {_, Value} -> {game_cmd, Value, Args, Data}; - _ -> + Other -> ok end end. From 48506c69b7feb23ed80f3c9802dfdf1698dfe526 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 13 Apr 2011 03:57:18 +0200 Subject: [PATCH 126/192] removed test file --- games/Pong-bots/test.rb | 24 ------------------------ 1 file changed, 24 deletions(-) delete mode 100644 games/Pong-bots/test.rb diff --git a/games/Pong-bots/test.rb b/games/Pong-bots/test.rb deleted file mode 100644 index c690e04..0000000 --- a/games/Pong-bots/test.rb +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/ruby - -def func1 - i=0 - while i<=2 - puts "func1 at: #{Time.now}" - sleep(2) - i=i+1 - end -end - -def func2 - j=0 - while j<=2 - puts "func2 at: #{Time.now}" - sleep(1) - j=j+1 - end -end - -puts "Started At #{Time.now}" -t1=Thread.new{func1()} -t2=Thread.new{func2()} -puts "End at #{Time.now}" \ No newline at end of file From 901d4b724cd995d262347b2392214ae10d823a1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 13 Apr 2011 11:38:36 +0200 Subject: [PATCH 127/192] Now we have multi-table support. !!!CAP IS AT 2 PLAYERS!!! --- doc/report | 2 +- src/ggs_coordinator.erl | 13 ++++++++++--- src/ggs_player.erl | 24 +++++++++++++++--------- src/ggs_table.erl | 3 +++ 4 files changed, 29 insertions(+), 13 deletions(-) diff --git a/doc/report b/doc/report index eb8ebe0..0031285 160000 --- a/doc/report +++ b/doc/report @@ -1 +1 @@ -Subproject commit eb8ebe0347e1f75cbfe70b52f40a63d13741a89a +Subproject commit 00312859714bef6e9a4fdb9931a41fef56eeb89a diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 59d181a..be6e881 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -112,9 +112,15 @@ handle_call({join_table, Table}, From, State) -> Tables = State#co_state.tables, case lists:keyfind(Table, 1, Tables) of {_TableID, TablePID} -> - ggs_table:add_player(TablePID, FromPlayer), - back_up(State), - {reply, {ok, TablePID}, State}; + TP = TablePID, + {ok, Players} = (gen_server:call(TP, get_player_list_raw)), % Hack.. deadlock otherwise? + NumPlayers = length(Players), + case NumPlayers of + PN when (PN < 2) -> ggs_table:add_player(TablePID, FromPlayer), + back_up(State), + {reply, {ok, TablePID}, State}; + PN when (PN >= 2) -> {reply, {error, table_full}, State} % TODO: Fix this limit!! + end; false -> back_up(State), {reply, {error, no_such_table}, State} @@ -137,6 +143,7 @@ handle_call(get_all_players, _From, State) -> %% Conversion tools handle_call({table_token_to_pid, Token}, _From, State) -> Tables = State#co_state.tables, + erlang:display("Pre-keyfind"), {_, Pid} = lists:keyfind(Token, 1, Tables), {reply, Pid, State}; diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 68c0a01..e01574d 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -27,21 +27,27 @@ start(Socket) -> gen_server:start(?MODULE, [Socket], []). +join_table(Num) -> + case ggs_coordinator:join_table(integer_to_list(Num)) of + {ok, T} -> + io:format("Joining existing table: ~p~n", [T]), + T; + {error, no_such_table} -> + ggs_coordinator:create_table({force, integer_to_list(Num)}), + {ok, T} = ggs_coordinator:join_table(integer_to_list(Num)), + io:format("Creating new table: ~p~n", [T]), + T; + {error, table_full} -> + join_table(Num+1) + end. + init([Socket]) -> {ok, Protocol} = ggs_protocol:start_link(), {ok, Token} = ggs_coordinator:join_lobby(), erlang:port_connect(Socket, self()), - case ggs_coordinator:join_table("1337") of - {ok, T} -> - Table = T; - {error, no_such_table} -> - ggs_coordinator:create_table({force, "1337"}), - {ok, T} = ggs_coordinator:join_table("1337"), - Table = T - end, - + Table = join_table(1337), State = #state{ token = Token, socket = Socket, diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 909f789..5a60daa 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -91,6 +91,9 @@ handle_call(get_player_list, _From, #state { players = Players } = State) -> fun (Pid) -> ggs_coordinator:player_pid_to_token(Pid) end, Players), {reply, {ok, TokenPlayers}, State}; +handle_call(get_player_list_raw, _From, #state { players = Players } = State) -> + {reply, {ok, Players}, State}; + handle_call(Msg, _From, State) -> error_logger:error_report([unknown_msg, Msg]), {reply, ok, State}. From 231bbfdf16a0d10a69c3ea95d33871fcf967aede Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 13 Apr 2011 15:32:10 +0200 Subject: [PATCH 128/192] Added hackfix for join_table hangups --- src/ggs_coordinator.erl | 23 +++++++++++++++-------- src/ggs_player.erl | 16 +++++++++++----- src/ggs_table.erl | 7 ++++--- 3 files changed, 30 insertions(+), 16 deletions(-) diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index be6e881..8e060e4 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -112,14 +112,21 @@ handle_call({join_table, Table}, From, State) -> Tables = State#co_state.tables, case lists:keyfind(Table, 1, Tables) of {_TableID, TablePID} -> - TP = TablePID, - {ok, Players} = (gen_server:call(TP, get_player_list_raw)), % Hack.. deadlock otherwise? - NumPlayers = length(Players), - case NumPlayers of - PN when (PN < 2) -> ggs_table:add_player(TablePID, FromPlayer), - back_up(State), - {reply, {ok, TablePID}, State}; - PN when (PN >= 2) -> {reply, {error, table_full}, State} % TODO: Fix this limit!! +% TP = TablePID, +% {ok, Players} = (gen_server:call(TP, get_player_list_raw)), % Hack.. deadlock otherwise? +% %Players = [1], +% NumPlayers = length(Players), +% case NumPlayers of +% PN when (PN < 2) -> ggs_table:add_player(TablePID, FromPlayer), +% back_up(State), +% {reply, {ok, TablePID}, State}; +% PN when (PN >= 2) -> {reply, {error, table_full}, State} % TODO: Fix this limit!! +% end; + {PlayersAtTable,_} = string:to_integer(Table), + case ((length(State#co_state.players) / 2) < PlayersAtTable) and (length(State#co_state.players) > 1) of + true -> {reply , {error, table_full}, State}; + false -> ggs_table:add_player(TablePID, FromPlayer), + {reply, {ok, TablePID}, State} end; false -> back_up(State), diff --git a/src/ggs_player.erl b/src/ggs_player.erl index e01574d..3152893 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -33,11 +33,17 @@ join_table(Num) -> io:format("Joining existing table: ~p~n", [T]), T; {error, no_such_table} -> - ggs_coordinator:create_table({force, integer_to_list(Num)}), - {ok, T} = ggs_coordinator:join_table(integer_to_list(Num)), - io:format("Creating new table: ~p~n", [T]), - T; + case ggs_coordinator:create_table({force, integer_to_list(Num)}) of + {ok, TBToken} -> ok + end, + case ggs_coordinator:join_table(integer_to_list(Num)) of + {ok, T} -> io:format("Creating new table: ~p~n", [T]), + T; + {error, E} -> erlang:display(E), + join_table(Num+1) + end; {error, table_full} -> + erlang:display("Table full!"), join_table(Num+1) end. @@ -47,7 +53,7 @@ init([Socket]) -> erlang:port_connect(Socket, self()), - Table = join_table(1337), + Table = join_table(1), State = #state{ token = Token, socket = Socket, diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 5a60daa..60acb2a 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -35,7 +35,7 @@ call(Pid, Msg) -> % @doc adds a player to a table add_player(Table, Player) -> - call(Table, {add_player, Player}). + gen_server:cast(Table, {add_player, Player}). % @doc removes player form a table remove_player(Table, Player) -> @@ -80,8 +80,6 @@ init([TableToken]) -> players = [] }}. %% @private -handle_call({add_player, Player}, _From, #state { players = Players } = State) -> - {reply, ok, State#state { players = [Player | Players] }}; handle_call({remove_player, Player}, _From, #state { players = Players } = State) -> {reply, ok, State#state { players = Players -- [Player] }}; @@ -109,6 +107,9 @@ handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> end, {noreply, State}; +handle_cast({add_player, Player}, #state { players = Players } = State) -> + {noreply, State#state { players = [Player | Players] }}; + handle_cast({notify_game, Message, From}, #state { game_vm = GameVM } = State) -> ggs_gamevm_p:player_command(GameVM, From, Message, ""), {noreply, State}; From f013e75b5cb45086d54e7a61fb7978181a6bb4d1 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 13 Apr 2011 16:25:50 +0200 Subject: [PATCH 129/192] fixed problem with two concurrent players --- src/ggs_player.erl | 22 +--------------------- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 3152893..1406cc6 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -27,33 +27,13 @@ start(Socket) -> gen_server:start(?MODULE, [Socket], []). -join_table(Num) -> - case ggs_coordinator:join_table(integer_to_list(Num)) of - {ok, T} -> - io:format("Joining existing table: ~p~n", [T]), - T; - {error, no_such_table} -> - case ggs_coordinator:create_table({force, integer_to_list(Num)}) of - {ok, TBToken} -> ok - end, - case ggs_coordinator:join_table(integer_to_list(Num)) of - {ok, T} -> io:format("Creating new table: ~p~n", [T]), - T; - {error, E} -> erlang:display(E), - join_table(Num+1) - end; - {error, table_full} -> - erlang:display("Table full!"), - join_table(Num+1) - end. - init([Socket]) -> {ok, Protocol} = ggs_protocol:start_link(), {ok, Token} = ggs_coordinator:join_lobby(), erlang:port_connect(Socket, self()), - Table = join_table(1), + Table = ggs_coordinator:join_table(), State = #state{ token = Token, socket = Socket, From d9e95b2508d561ff6e5f5bb3abd147af530dcc2a Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 13 Apr 2011 16:31:11 +0200 Subject: [PATCH 130/192] fixed problem with two concurrent players --- src/ggs_gamevm_p.erl | 36 ++++++++++++++++++++---------------- src/ggs_player.erl | 24 ++++++++++++++++++++++-- 2 files changed, 42 insertions(+), 18 deletions(-) diff --git a/src/ggs_gamevm_p.erl b/src/ggs_gamevm_p.erl index b408acc..78aafda 100644 --- a/src/ggs_gamevm_p.erl +++ b/src/ggs_gamevm_p.erl @@ -36,7 +36,6 @@ define(GameVM, SourceCode) -> %% Command = a game command to run %% Args = arguments for the Command parameter player_command(GameVM, Player, Command, Args) -> - erlang:display(Command), gen_server:cast(GameVM, {player_command, Player, Command, Args}). %% @private @@ -118,23 +117,28 @@ intern_player_command(Table, Player, Command, _Args) -> intern_add_player(Table, Player) -> {ok, PlayerList} = ggs_table:get_player_list(Table), - erlang:display(PlayerList), case length(PlayerList) of - 1 -> - erlang:display("P1: joining"), - ggs_db:setItem(Table, local_storage, Player, player1), - erlang:display(ggs_db:getItem(Table, local_storage, Player)), - ggs_db:setItem(Table, local_storage, player1_y, 50), - ggs_table:send_command(Table, Player, {"welcome", int2str(1)}), - ggs_table:notify_all_players(Table, {"player1_y", int2str(50)}); + 1 -> + erlang:display("A player joined"); 2 -> - erlang:display("P2: joining"), - ggs_db:setItem(Table, local_storage, Player, player2), - erlang:display(ggs_db:getItem(Table, local_storage, Player)), - ggs_db:setItem(Table, local_storage, player2_y, 50), - ggs_table:send_command(Table, Player, {"welcome", int2str(2)}), - ggs_table:send_command(Table, Player, {"player1_y", int2str(50)}), - ggs_table:notify_all_players(Table, {"player2_y", int2str(50)}); + [First|_] = PlayerList, + case First == Player of + true -> + erlang:display("P1: joining"), + ggs_db:setItem(Table, local_storage, Player, player1), + erlang:display(ggs_db:getItem(Table, local_storage, Player)), + ggs_db:setItem(Table, local_storage, player1_y, 50), + ggs_table:send_command(Table, Player, {"welcome", int2str(1)}), + ggs_table:notify_all_players(Table, {"player1_y", int2str(50)}); + false -> + erlang:display("P2: joining"), + ggs_db:setItem(Table, local_storage, Player, player2), + erlang:display(ggs_db:getItem(Table, local_storage, Player)), + ggs_db:setItem(Table, local_storage, player2_y, 50), + ggs_table:send_command(Table, Player, {"welcome", int2str(2)}), + ggs_table:send_command(Table, Player, {"player1_y", int2str(50)}), + ggs_table:notify_all_players(Table, {"player2_y", int2str(50)}) + end; _Other -> ggs_table:send_command(Table, Player, {"not_welcome", ""}) end. diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 1406cc6..7057dbe 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -27,13 +27,33 @@ start(Socket) -> gen_server:start(?MODULE, [Socket], []). +join_table(Num) -> + case ggs_coordinator:join_table(integer_to_list(Num)) of + {ok, T} -> + io:format("Joining existing table: ~p~n", [T]), + T; + {error, no_such_table} -> + case ggs_coordinator:create_table({force, integer_to_list(Num)}) of + {ok, TBToken} -> ok + end, + case ggs_coordinator:join_table(integer_to_list(Num)) of + {ok, T} -> io:format("Creating new table: ~p~n", [T]), + T; + {error, E} -> erlang:display(E), + join_table(Num+1) + end; + {error, table_full} -> + erlang:display("Table full!"), + join_table(Num+1) + end. + init([Socket]) -> {ok, Protocol} = ggs_protocol:start_link(), {ok, Token} = ggs_coordinator:join_lobby(), erlang:port_connect(Socket, self()), - Table = ggs_coordinator:join_table(), + Table = join_table(1), State = #state{ token = Token, socket = Socket, @@ -108,4 +128,4 @@ terminate(Reason, State) -> % TODO: release Socket ok. -code_change(_OldVsn, St, _Extra) -> {ok, St}. +code_change(_OldVsn, St, _Extra) -> {ok, St}. \ No newline at end of file From e3152576a2e23343aa596318d23eb1e2d66f5e2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 13 Apr 2011 16:37:10 +0200 Subject: [PATCH 131/192] Added some join magic --- src/ggs_coordinator.erl | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index 8e060e4..dcd76e2 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -122,8 +122,14 @@ handle_call({join_table, Table}, From, State) -> % {reply, {ok, TablePID}, State}; % PN when (PN >= 2) -> {reply, {error, table_full}, State} % TODO: Fix this limit!! % end; - {PlayersAtTable,_} = string:to_integer(Table), - case ((length(State#co_state.players) / 2) < PlayersAtTable) and (length(State#co_state.players) > 1) of + {TableNum,_} = string:to_integer(Table), + erlang:display(State#co_state.players), + CurrentPlayers = length(State#co_state.players), + SmallestTable = case (CurrentPlayers rem 2) of + 0 -> CurrentPlayers / 2; + 1 -> (CurrentPlayers / 2)+1 + end, + case (TableNum < SmallestTable) of true -> {reply , {error, table_full}, State}; false -> ggs_table:add_player(TablePID, FromPlayer), {reply, {ok, TablePID}, State} From 8bd87d349aae0c273a2e8201c92f0cb7d226df1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 13 Apr 2011 16:52:27 +0200 Subject: [PATCH 132/192] Fulhack to fix concurrentcy issues --- src/ggs_coordinator.erl | 2 +- src/ggs_gamevm_p.erl | 15 ++++++--------- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index dcd76e2..fa6b4e4 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -129,7 +129,7 @@ handle_call({join_table, Table}, From, State) -> 0 -> CurrentPlayers / 2; 1 -> (CurrentPlayers / 2)+1 end, - case (TableNum < SmallestTable) of + case (TableNum =< SmallestTable) of true -> {reply , {error, table_full}, State}; false -> ggs_table:add_player(TablePID, FromPlayer), {reply, {ok, TablePID}, State} diff --git a/src/ggs_gamevm_p.erl b/src/ggs_gamevm_p.erl index 78aafda..fc4700f 100644 --- a/src/ggs_gamevm_p.erl +++ b/src/ggs_gamevm_p.erl @@ -121,24 +121,21 @@ intern_add_player(Table, Player) -> 1 -> erlang:display("A player joined"); 2 -> - [First|_] = PlayerList, - case First == Player of - true -> + [P1,P2] = PlayerList, + erlang:display(PlayerList), erlang:display("P1: joining"), - ggs_db:setItem(Table, local_storage, Player, player1), + ggs_db:setItem(Table, local_storage, P1, player1), erlang:display(ggs_db:getItem(Table, local_storage, Player)), ggs_db:setItem(Table, local_storage, player1_y, 50), ggs_table:send_command(Table, Player, {"welcome", int2str(1)}), - ggs_table:notify_all_players(Table, {"player1_y", int2str(50)}); - false -> + ggs_table:notify_all_players(Table, {"player1_y", int2str(50)}), erlang:display("P2: joining"), - ggs_db:setItem(Table, local_storage, Player, player2), + ggs_db:setItem(Table, local_storage, P2, player2), erlang:display(ggs_db:getItem(Table, local_storage, Player)), ggs_db:setItem(Table, local_storage, player2_y, 50), ggs_table:send_command(Table, Player, {"welcome", int2str(2)}), ggs_table:send_command(Table, Player, {"player1_y", int2str(50)}), - ggs_table:notify_all_players(Table, {"player2_y", int2str(50)}) - end; + ggs_table:notify_all_players(Table, {"player2_y", int2str(50)}); _Other -> ggs_table:send_command(Table, Player, {"not_welcome", ""}) end. From 31240b02b886a3e551cf45f5bd20e340a42b9a4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Wed, 13 Apr 2011 17:11:14 +0200 Subject: [PATCH 133/192] Added start script --- games/Pong-bots/start.sh | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 games/Pong-bots/start.sh diff --git a/games/Pong-bots/start.sh b/games/Pong-bots/start.sh new file mode 100644 index 0000000..1fed8a7 --- /dev/null +++ b/games/Pong-bots/start.sh @@ -0,0 +1,3 @@ +for ((i = 0; i<30; i++)); do + ruby pong-bot.rb & +done From 0c340f95d27accd60bc26452b5f1c64d71053105 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 13 Apr 2011 17:52:09 +0200 Subject: [PATCH 134/192] bugfix --- games/Pong-bots/bots.sh | 5 + games/Pong-bots/ggs-network.rb | 3 +- games/Pong-bots/pong-bot.rb | 19 +- games/Pong/Classes/GGSNetwork.m | 2 +- .../UserInterfaceState.xcuserstate | 2321 +++++++++-------- src/ggs_gamevm_p.erl | 31 +- 6 files changed, 1193 insertions(+), 1188 deletions(-) create mode 100755 games/Pong-bots/bots.sh diff --git a/games/Pong-bots/bots.sh b/games/Pong-bots/bots.sh new file mode 100755 index 0000000..8c18205 --- /dev/null +++ b/games/Pong-bots/bots.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +for (( i = 0; i < 2; i++ )); do + ./pong-bot.rb & +done \ No newline at end of file diff --git a/games/Pong-bots/ggs-network.rb b/games/Pong-bots/ggs-network.rb index b8cac8d..2a2c9e0 100644 --- a/games/Pong-bots/ggs-network.rb +++ b/games/Pong-bots/ggs-network.rb @@ -29,8 +29,8 @@ class GGSNetwork protected def write(message) + puts message.inspect @socket.write(message) - puts message end def read @@ -58,7 +58,6 @@ class GGSNetwork def receivedCommand(headers, data) puts [headers, data].inspect - if headers.has_key? "Client-Command" command = headers["Client-Command"] case command diff --git a/games/Pong-bots/pong-bot.rb b/games/Pong-bots/pong-bot.rb index 98b172f..04aa172 100755 --- a/games/Pong-bots/pong-bot.rb +++ b/games/Pong-bots/pong-bot.rb @@ -17,18 +17,12 @@ class PongBot @send_start = false @ggs_network = GGSNetwork.new(self) + #@ggs_network.connect("10.42.43.1") @ggs_network.connect() end - + def ggsNetworkReady(ggs_network, ready) @ggs_network.sendCommand("ready") - - t = Thread.new { - loop do - gameTick() - sleep 0.3 - end - } end def ggsNetworkDefined(ggs_network, defined) @@ -56,7 +50,6 @@ class PongBot @send_start = true end else - puts "#{@ball.y}:#{@me.y}" if @ball.y < @me.y - 5 @ggs_network.sendCommand("up") elsif @ball.y > @me.y - 5 @@ -71,6 +64,13 @@ class PongBot else @me = @player2 end + + Thread.new { + loop do + gameTick() + sleep 0.3 + end + } end def ball(pos_s) @@ -88,7 +88,6 @@ class PongBot def game(wait_or_start) if wait_or_start == "wait" - puts "Other ready" else @game_paused = false end diff --git a/games/Pong/Classes/GGSNetwork.m b/games/Pong/Classes/GGSNetwork.m index 191b058..32f53f0 100644 --- a/games/Pong/Classes/GGSNetwork.m +++ b/games/Pong/Classes/GGSNetwork.m @@ -11,7 +11,7 @@ @implementation GGSNetwork -#define GGS_HOST @"home.jeena.net" +#define GGS_HOST @"localhost" #define GGS_PORT 9000 #define NO_TIMEOUT -1 diff --git a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate index 4d0530f..f79dc54 100644 --- a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate +++ b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate @@ -11,7 +11,7 @@ $class CF$UID - 195 + 183 NS.keys @@ -32,7 +32,7 @@ CF$UID - 120 + 121 @@ -115,11 +115,11 @@ CF$UID - 106 + 107 CF$UID - 107 + 108 CF$UID @@ -217,7 +217,7 @@ CF$UID - 58 + 54 CF$UID @@ -449,7 +449,7 @@ PrimaryDocumentVisibleCharacterRange HideAllIssues PrimaryDocumentSelectedCharacterRange - 324349224.47908998 + 324400742.528961 {0, 910} {797, 0} @@ -507,8 +507,8 @@ - 324351348.42624801 - {1190, 1757} + 324400739.20572603 + {204, 801} {953, 0} $class @@ -555,61 +555,9 @@ - 324349919.87820297 - {1453, 2127} - {2942, 0} - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 51 - - - CF$UID - 52 - - - CF$UID - 53 - - - CF$UID - 54 - - - NS.objects - - - CF$UID - 55 - - - CF$UID - 56 - - - CF$UID - 15 - - - CF$UID - 57 - - - - PrimaryDocumentTimestamp - PrimaryDocumentVisibleCharacterRange - HideAllIssues - PrimaryDocumentSelectedCharacterRange - 324248959.37454498 - {0, 531} - {0, 0} + 324402616.78700799 + {0, 678} + {207, 0} $class @@ -636,6 +584,54 @@ NS.objects + + + CF$UID + 51 + + + CF$UID + 52 + + + CF$UID + 15 + + + CF$UID + 53 + + + + 324400740.10611397 + {0, 531} + {0, 0} + + $class + + CF$UID + 41 + + NS.keys + + + CF$UID + 55 + + + CF$UID + 56 + + + CF$UID + 57 + + + CF$UID + 58 + + + NS.objects CF$UID @@ -651,10 +647,14 @@ CF$UID - 57 + 53 + PrimaryDocumentTimestamp + PrimaryDocumentVisibleCharacterRange + HideAllIssues + PrimaryDocumentSelectedCharacterRange 324347076.57831001 {328, 2297} @@ -667,19 +667,19 @@ CF$UID - 51 + 55 CF$UID - 52 + 56 CF$UID - 53 + 57 CF$UID - 54 + 58 NS.objects @@ -698,7 +698,7 @@ CF$UID - 57 + 53 @@ -794,7 +794,7 @@ CF$UID - 84 + 106 @@ -1059,7 +1059,7 @@ 102 NS.time - 324351343.54201001 + 324402614.75854403 $classes @@ -1070,7 +1070,7 @@ $classname NSDate - Today at 03:35 + Today at 17:50 $classes @@ -1082,6 +1082,7 @@ NSMutableArray 106 + Pong $class @@ -1106,27 +1107,27 @@ CF$UID - 108 + 109 CF$UID - 110 + 111 CF$UID - 112 + 113 CF$UID - 114 + 115 CF$UID - 116 + 117 CF$UID - 118 + 119 @@ -1144,25 +1145,7 @@ NS.relative CF$UID - 109 - - - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 111 + 110 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m @@ -1180,7 +1163,7 @@ NS.relative CF$UID - 113 + 112 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.h @@ -1198,25 +1181,7 @@ NS.relative CF$UID - 115 - - - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 117 + 114 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSDelegate.h @@ -1234,7 +1199,43 @@ NS.relative CF$UID - 119 + 116 + + + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m + + $class + + CF$UID + 22 + + NS.base + + CF$UID + 0 + + NS.relative + + CF$UID + 118 + + + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m + + $class + + CF$UID + 22 + + NS.base + + CF$UID + 0 + + NS.relative + + CF$UID + 120 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.h @@ -1246,10 +1247,6 @@ NS.keys - - CF$UID - 121 - CF$UID 122 @@ -1270,29 +1267,33 @@ CF$UID 126 + + CF$UID + 127 + NS.objects CF$UID - 127 - - - CF$UID - 295 - - - CF$UID - 137 - - - CF$UID - 121 + 128 CF$UID 296 + + CF$UID + 146 + + + CF$UID + 122 + + + CF$UID + 297 + CF$UID 3 @@ -1313,10 +1314,6 @@ NS.keys - - CF$UID - 128 - CF$UID 129 @@ -1345,20 +1342,24 @@ CF$UID 135 - - NS.objects - CF$UID 136 + + NS.objects + CF$UID 137 CF$UID - 138 + 146 + + + CF$UID + 64 CF$UID @@ -1378,20 +1379,18 @@ CF$UID - 64 + 295 - IDETabLabel - IDEShowNavigator IDEEditorArea + IDEShowNavigator + AssistantEditorsLayout IDEWorkspaceTabControllerUtilityAreaSplitView IDENavigatorArea IDEWorkspaceTabControllerDesignAreaSplitView IDEShowUtilities - AssistantEditorsLayout - PongViewController.m - + IDETabLabel $class @@ -1400,6 +1399,10 @@ NS.keys + + CF$UID + 138 + CF$UID 139 @@ -1428,28 +1431,24 @@ CF$UID 145 + + NS.objects + CF$UID 146 - - NS.objects - CF$UID 147 CF$UID - 167 + 190 CF$UID - 202 - - - CF$UID - 137 + 146 CF$UID @@ -1457,94 +1456,222 @@ CF$UID - 231 + 219 CF$UID - 239 + 227 CF$UID - 137 + 228 - layoutTree + ShowDebuggerArea IDEEditorMode_Standard IDEEDitorArea_DebugArea IDEShowEditor EditorMode DebuggerSplitView DefaultPersistentRepresentations - ShowDebuggerArea + layoutTree + $class CF$UID - 166 + 41 - geniusEditorContextNode + NS.keys + + + CF$UID + 148 + + + NS.objects + + + CF$UID + 149 + + + + EditorLayout_PersistentRepresentation + + $class CF$UID - 0 + 41 - primaryEditorContextNode + NS.keys + + + CF$UID + 150 + + + NS.objects + + + CF$UID + 151 + + + + Main + + $class CF$UID - 148 + 183 - rootLayoutTreeNode + NS.keys + + + CF$UID + 152 + + + CF$UID + 153 + + + CF$UID + 154 + + + NS.objects + + + CF$UID + 155 + + + CF$UID + 64 + + + CF$UID + 188 + + + + EditorLayout_StateSavingStateDictionaries + EditorLayout_Selected + EditorLayout_Geometry + + $class CF$UID - 163 + 175 + NS.objects + + + CF$UID + 156 + + $class CF$UID - 165 - - children - - CF$UID - 0 - - contentType - 1 - documentArchivableRepresentation - - CF$UID - 149 - - orientation - 0 - parent - - CF$UID - 163 + 41 + NS.keys + + + CF$UID + 157 + + + CF$UID + 158 + + + CF$UID + 159 + + + CF$UID + 160 + + + CF$UID + 161 + + + CF$UID + 162 + + + CF$UID + 163 + + + NS.objects + + + CF$UID + 164 + + + CF$UID + 165 + + + CF$UID + 179 + + + CF$UID + 184 + + + CF$UID + 169 + + + CF$UID + 185 + + + CF$UID + 186 + + + FileDataType + ArchivableRepresentation + EditorState + NavigableItemName + DocumentNavigableItemName + DocumentExtensionIdentifier + DocumentURL + public.objective-c-source $class CF$UID - 162 + 178 DocumentLocation CF$UID - 160 + 176 DomainIdentifier CF$UID - 150 + 166 IdentifierPath CF$UID - 151 + 167 IndexOfDocumentIdentifier @@ -1557,21 +1684,21 @@ $class CF$UID - 159 + 175 NS.objects CF$UID - 152 + 168 CF$UID - 155 + 171 CF$UID - 157 + 173 @@ -1579,15 +1706,15 @@ $class CF$UID - 154 + 170 Identifier CF$UID - 153 + 169 - PongViewController.m + GGSNetwork.m $classes @@ -1601,12 +1728,12 @@ $class CF$UID - 154 + 170 Identifier CF$UID - 156 + 172 Classes @@ -1614,12 +1741,12 @@ $class CF$UID - 154 + 170 Identifier CF$UID - 158 + 174 Pong @@ -1636,12 +1763,12 @@ $class CF$UID - 161 + 177 documentURL CF$UID - 24 + 26 timestamp @@ -1671,12 +1798,665 @@ $class CF$UID - 165 + 183 + + NS.keys + + + CF$UID + 34 + + + CF$UID + 35 + + + CF$UID + 36 + + + CF$UID + 37 + + + NS.objects + + + CF$UID + 180 + + + CF$UID + 181 + + + CF$UID + 15 + + + CF$UID + 182 + + + + 324402616.78781998 + {0, 678} + {207, 0} + + $classes + + NSDictionary + NSObject + + $classname + NSDictionary + + @implementation GGSNetwork + Xcode.IDEKit.EditorDocument.SourceCode + + $class + + CF$UID + 22 + + NS.base + + CF$UID + 0 + + NS.relative + + CF$UID + 187 + + + file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m + + $class + + CF$UID + 175 + + NS.objects + + + CF$UID + 189 + + + + {{0, 0}, {902, 456}} + + $class + + CF$UID + 41 + + NS.keys + + + CF$UID + 191 + + + CF$UID + 192 + + + CF$UID + 193 + + + CF$UID + 194 + + + CF$UID + 195 + + + CF$UID + 196 + + + NS.objects + + + CF$UID + 100 + + + CF$UID + 197 + + + CF$UID + 199 + + + CF$UID + 100 + + + CF$UID + 210 + + + CF$UID + 216 + + + + LayoutFocusMode + console + IDEDebuggerAreaSplitView + LayoutMode + IDEDebugArea_SplitView + variables + + $class + + CF$UID + 41 + + NS.keys + + + CF$UID + 198 + + + NS.objects + + + CF$UID + 64 + + + + ConsoleFilterMode + + $class + + CF$UID + 41 + + NS.keys + + + CF$UID + 200 + + + NS.objects + + + CF$UID + 201 + + + + DVTSplitViewItems + + $class + + CF$UID + 104 + + NS.objects + + + CF$UID + 202 + + + CF$UID + 207 + + + + + $class + + CF$UID + 183 + + NS.keys + + + CF$UID + 203 + + + CF$UID + 204 + + + NS.objects + + + CF$UID + 205 + + + CF$UID + 206 + + + + DVTIdentifier + DVTViewMagnitude + VariablesView + 307 + + $class + + CF$UID + 183 + + NS.keys + + + CF$UID + 203 + + + CF$UID + 204 + + + NS.objects + + + CF$UID + 208 + + + CF$UID + 209 + + + + ConsoleArea + 594 + + $class + + CF$UID + 41 + + NS.keys + + + CF$UID + 200 + + + NS.objects + + + CF$UID + 211 + + + + + $class + + CF$UID + 104 + + NS.objects + + + CF$UID + 212 + + + CF$UID + 214 + + + + + $class + + CF$UID + 183 + + NS.keys + + + CF$UID + 203 + + + CF$UID + 204 + + + NS.objects + + + CF$UID + 205 + + + CF$UID + 213 + + + + 307 + + $class + + CF$UID + 183 + + NS.keys + + + CF$UID + 203 + + + CF$UID + 204 + + + NS.objects + + + CF$UID + 208 + + + CF$UID + 215 + + + + 594 + + $class + + CF$UID + 41 + + NS.keys + + + CF$UID + 217 + + + NS.objects + + + CF$UID + 218 + + + + DBGVariablesViewFilterMode + 2 + + $class + + CF$UID + 41 + + NS.keys + + + CF$UID + 200 + + + NS.objects + + + CF$UID + 220 + + + + + $class + + CF$UID + 104 + + NS.objects + + + CF$UID + 221 + + + CF$UID + 224 + + + + + $class + + CF$UID + 183 + + NS.keys + + + CF$UID + 203 + + + CF$UID + 204 + + + NS.objects + + + CF$UID + 222 + + + CF$UID + 223 + + + + IDEEditor + 478 + + $class + + CF$UID + 183 + + NS.keys + + + CF$UID + 203 + + + CF$UID + 204 + + + NS.objects + + + CF$UID + 225 + + + CF$UID + 226 + + + + IDEDebuggerArea + 224 + + $class + + CF$UID + 41 + + NS.keys + + NS.objects + + + + $class + + CF$UID + 239 + + geniusEditorContextNode + + CF$UID + 0 + + primaryEditorContextNode + + CF$UID + 229 + + rootLayoutTreeNode + + CF$UID + 236 + + + + $class + + CF$UID + 238 children CF$UID - 164 + 0 + + contentType + 1 + documentArchivableRepresentation + + CF$UID + 230 + + orientation + 0 + parent + + CF$UID + 236 + + + + $class + + CF$UID + 178 + + DocumentLocation + + CF$UID + 176 + + DomainIdentifier + + CF$UID + 166 + + IdentifierPath + + CF$UID + 231 + + IndexOfDocumentIdentifier + + CF$UID + 64 + + + + $class + + CF$UID + 175 + + NS.objects + + + CF$UID + 232 + + + CF$UID + 233 + + + CF$UID + 234 + + + + + $class + + CF$UID + 170 + + Identifier + + CF$UID + 169 + + + + $class + + CF$UID + 170 + + Identifier + + CF$UID + 172 + + + + $class + + CF$UID + 170 + + Identifier + + CF$UID + 235 + + + Pong + + $class + + CF$UID + 238 + + children + + CF$UID + 237 contentType 0 @@ -1697,13 +2477,13 @@ $class CF$UID - 159 + 175 NS.objects CF$UID - 148 + 229 @@ -1733,791 +2513,11 @@ NS.keys - - CF$UID - 168 - - - NS.objects - - - CF$UID - 169 - - - - EditorLayout_PersistentRepresentation - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 170 - - - NS.objects - - - CF$UID - 171 - - - - Main - - $class - - CF$UID - 195 - - NS.keys - - - CF$UID - 172 - - - CF$UID - 173 - - - CF$UID - 174 - - - NS.objects - - - CF$UID - 175 - - - CF$UID - 64 - CF$UID 200 - - EditorLayout_StateSavingStateDictionaries - EditorLayout_Selected - EditorLayout_Geometry - - $class - - CF$UID - 159 - - NS.objects - - - CF$UID - 176 - - - - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 177 - - - CF$UID - 178 - - - CF$UID - 179 - - - CF$UID - 180 - - - CF$UID - 181 - - - CF$UID - 182 - - - CF$UID - 183 - - - NS.objects - - - CF$UID - 184 - - - CF$UID - 185 - - - CF$UID - 191 - - - CF$UID - 196 - - - CF$UID - 153 - - - CF$UID - 197 - - - CF$UID - 198 - - - - FileDataType - ArchivableRepresentation - EditorState - NavigableItemName - DocumentNavigableItemName - DocumentExtensionIdentifier - DocumentURL - public.objective-c-source - - $class - - CF$UID - 162 - - DocumentLocation - - CF$UID - 160 - - DomainIdentifier - - CF$UID - 150 - - IdentifierPath - - CF$UID - 186 - - IndexOfDocumentIdentifier - - CF$UID - 64 - - - - $class - - CF$UID - 159 - - NS.objects - - - CF$UID - 187 - - - CF$UID - 188 - - - CF$UID - 189 - - - - - $class - - CF$UID - 154 - - Identifier - - CF$UID - 153 - - - - $class - - CF$UID - 154 - - Identifier - - CF$UID - 156 - - - - $class - - CF$UID - 154 - - Identifier - - CF$UID - 190 - - - Pong - - $class - - CF$UID - 195 - - NS.keys - - - CF$UID - 34 - - - CF$UID - 35 - - - CF$UID - 36 - - - CF$UID - 37 - - - NS.objects - - - CF$UID - 192 - - - CF$UID - 193 - - - CF$UID - 15 - - - CF$UID - 194 - - - - 324351348.42674202 - {1190, 1757} - {953, 0} - - $classes - - NSDictionary - NSObject - - $classname - NSDictionary - - @implementation PongViewController - Xcode.IDEKit.EditorDocument.SourceCode - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 199 - - - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m - - $class - - CF$UID - 159 - - NS.objects - - - CF$UID - 201 - - - - {{0, 0}, {902, 842}} - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 203 - - - CF$UID - 204 - - - CF$UID - 205 - - - CF$UID - 206 - - - CF$UID - 207 - - - CF$UID - 208 - - - NS.objects - - - CF$UID - 100 - - - CF$UID - 209 - - - CF$UID - 211 - - - CF$UID - 100 - - - CF$UID - 214 - - - CF$UID - 225 - - - - LayoutFocusMode - console - variables - LayoutMode - IDEDebugArea_SplitView - IDEDebuggerAreaSplitView - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 210 - - - NS.objects - - - CF$UID - 64 - - - - ConsoleFilterMode - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 212 - - - NS.objects - - - CF$UID - 213 - - - - DBGVariablesViewFilterMode - 2 - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 215 - - - NS.objects - - - CF$UID - 216 - - - - DVTSplitViewItems - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 217 - - - CF$UID - 222 - - - - - $class - - CF$UID - 195 - - NS.keys - - - CF$UID - 218 - - - CF$UID - 219 - - - NS.objects - - - CF$UID - 220 - - - CF$UID - 221 - - - - DVTIdentifier - DVTViewMagnitude - VariablesView - 307 - - $class - - CF$UID - 195 - - NS.keys - - - CF$UID - 218 - - - CF$UID - 219 - - - NS.objects - - - CF$UID - 223 - - - CF$UID - 224 - - - - ConsoleArea - 594 - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 215 - - - NS.objects - - - CF$UID - 226 - - - - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 227 - - - CF$UID - 229 - - - - - $class - - CF$UID - 195 - - NS.keys - - - CF$UID - 218 - - - CF$UID - 219 - - - NS.objects - - - CF$UID - 220 - - - CF$UID - 228 - - - - 307 - - $class - - CF$UID - 195 - - NS.keys - - - CF$UID - 218 - - - CF$UID - 219 - - - NS.objects - - - CF$UID - 223 - - - CF$UID - 230 - - - - 594 - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 215 - - - NS.objects - - - CF$UID - 232 - - - - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 233 - - - CF$UID - 236 - - - - - $class - - CF$UID - 195 - - NS.keys - - - CF$UID - 218 - - - CF$UID - 219 - - - NS.objects - - - CF$UID - 234 - - - CF$UID - 235 - - - - IDEEditor - 864 - - $class - - CF$UID - 195 - - NS.keys - - - CF$UID - 218 - - - CF$UID - 219 - - - NS.objects - - - CF$UID - 237 - - - CF$UID - 238 - - - - IDEDebuggerArea - 224 - - $class - - CF$UID - 41 - - NS.keys - - NS.objects - - - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 215 - - NS.objects @@ -2548,17 +2548,17 @@ $class CF$UID - 195 + 183 NS.keys CF$UID - 218 + 203 CF$UID - 219 + 204 NS.objects @@ -2574,22 +2574,22 @@ - 877 + 464 $class CF$UID - 195 + 183 NS.keys CF$UID - 218 + 203 CF$UID - 219 + 204 NS.objects @@ -2604,7 +2604,7 @@ - 211 + 238 $class @@ -2634,17 +2634,17 @@ CF$UID - 250 + 248 CF$UID - 269 + 268 - Xcode.IDEKit.Navigator.Issues - SelectedNavigator Xcode.IDEKit.Navigator.Structure + SelectedNavigator + Xcode.IDEKit.Navigator.Issues $class @@ -2681,21 +2681,25 @@ CF$UID 258 + + NS.objects + CF$UID 259 + + CF$UID + 15 + CF$UID 260 CF$UID - 261 + 15 - - NS.objects - CF$UID 15 @@ -2704,56 +2708,25 @@ CF$UID 262 - - CF$UID - 263 - CF$UID 265 - - CF$UID - 266 - - - CF$UID - 15 - - - CF$UID - 15 - - - CF$UID - 267 - - - CF$UID - 15 - - - CF$UID - 268 - - IDEErrorFilteringEnabled IDEVisibleRect - IDECollapsedFiles - IDEExpandedIssues - IDESelectedNavigables - IDEShowsByType - IDESchemeFilteringEnabled - IDECollapsedTypes - IDERecentFilteringEnabled - IDECollapsedGroups - {{0, 0}, {213, 1022}} + IDEUnsavedDocumentFilteringEnabled + IDENavigatorExpandedItemsBeforeFilteringSet + IDERecentDocumentFilteringEnabled + IDESCMStatusFilteringEnabled + IDESelectedObjects + IDEExpandedItemsSet + {{0, 0}, {213, 658}} $class CF$UID - 264 + 261 NS.objects @@ -2761,21 +2734,25 @@ $classes - NSMutableSet NSSet NSObject $classname - NSMutableSet + NSSet $class CF$UID - 264 + 175 NS.objects - + + + CF$UID + 263 + + $class @@ -2784,25 +2761,71 @@ 104 NS.objects - + + + CF$UID + 264 + + + CF$UID + 172 + + + CF$UID + 169 + + + + Pong + + $class + + CF$UID + 261 + + NS.objects + + + CF$UID + 266 + + + CF$UID + 267 + + $class CF$UID - 264 + 104 NS.objects - + + + CF$UID + 264 + + $class CF$UID - 264 + 104 NS.objects - + + + CF$UID + 264 + + + CF$UID + 172 + + $class @@ -2812,6 +2835,10 @@ NS.keys + + CF$UID + 269 + CF$UID 270 @@ -2840,133 +2867,97 @@ CF$UID 276 - - NS.objects - CF$UID 277 - - CF$UID - 15 - CF$UID 278 + + NS.objects + CF$UID 15 CF$UID - 15 + 279 CF$UID 280 - - CF$UID - 283 - - - - IDEVisibleRect - IDEUnsavedDocumentFilteringEnabled - IDENavigatorExpandedItemsBeforeFilteringSet - IDERecentDocumentFilteringEnabled - IDESCMStatusFilteringEnabled - IDESelectedObjects - IDEExpandedItemsSet - {{0, 0}, {213, 1044}} - - $class - - CF$UID - 279 - - NS.objects - - - - $classes - - NSSet - NSObject - - $classname - NSSet - - - $class - - CF$UID - 159 - - NS.objects - - - CF$UID - 281 - - - - - $class - - CF$UID - 104 - - NS.objects - CF$UID 282 CF$UID - 156 + 283 CF$UID - 153 + 15 + + + CF$UID + 15 - - - Pong - - $class - - CF$UID - 279 - - NS.objects - CF$UID 284 + + CF$UID + 15 + CF$UID 285 + IDEErrorFilteringEnabled + IDEVisibleRect + IDECollapsedFiles + IDEExpandedIssues + IDESelectedNavigables + IDEShowsByType + IDESchemeFilteringEnabled + IDECollapsedTypes + IDERecentFilteringEnabled + IDECollapsedGroups + {{0, 0}, {213, 636}} $class CF$UID - 104 + 281 NS.objects + + + + $classes - - CF$UID - 282 - + NSMutableSet + NSSet + NSObject + $classname + NSMutableSet + + + $class + + CF$UID + 281 + + NS.objects + $class @@ -2975,16 +2966,25 @@ 104 NS.objects - - - CF$UID - 282 - - - CF$UID - 156 - - + + + + $class + + CF$UID + 281 + + NS.objects + + + + $class + + CF$UID + 281 + + NS.objects + $class @@ -2996,7 +2996,7 @@ CF$UID - 215 + 200 NS.objects @@ -3033,24 +3033,24 @@ $class CF$UID - 195 + 183 NS.keys CF$UID - 218 + 203 CF$UID - 219 + 204 NS.objects CF$UID - 132 + 133 CF$UID @@ -3063,24 +3063,24 @@ $class CF$UID - 195 + 183 NS.keys CF$UID - 218 + 203 CF$UID - 219 + 204 NS.objects CF$UID - 130 + 129 CF$UID @@ -3093,17 +3093,17 @@ $class CF$UID - 195 + 183 NS.keys CF$UID - 218 + 203 CF$UID - 219 + 204 NS.objects @@ -3120,21 +3120,22 @@ IDEUtilitiesArea 260 + GGSNetwork.m $class CF$UID - 159 + 175 NS.objects CF$UID - 121 + 122 - {{2603, 7}, {1116, 1186}} + {{160, 0}, {1116, 778}} $top diff --git a/src/ggs_gamevm_p.erl b/src/ggs_gamevm_p.erl index fc4700f..dc669bf 100644 --- a/src/ggs_gamevm_p.erl +++ b/src/ggs_gamevm_p.erl @@ -121,21 +121,22 @@ intern_add_player(Table, Player) -> 1 -> erlang:display("A player joined"); 2 -> - [P1,P2] = PlayerList, - erlang:display(PlayerList), - erlang:display("P1: joining"), - ggs_db:setItem(Table, local_storage, P1, player1), - erlang:display(ggs_db:getItem(Table, local_storage, Player)), - ggs_db:setItem(Table, local_storage, player1_y, 50), - ggs_table:send_command(Table, Player, {"welcome", int2str(1)}), - ggs_table:notify_all_players(Table, {"player1_y", int2str(50)}), - erlang:display("P2: joining"), - ggs_db:setItem(Table, local_storage, P2, player2), - erlang:display(ggs_db:getItem(Table, local_storage, Player)), - ggs_db:setItem(Table, local_storage, player2_y, 50), - ggs_table:send_command(Table, Player, {"welcome", int2str(2)}), - ggs_table:send_command(Table, Player, {"player1_y", int2str(50)}), - ggs_table:notify_all_players(Table, {"player2_y", int2str(50)}); + erlang:display("Player 2 joined"), + [P1,P2] = PlayerList, + erlang:display(PlayerList), + erlang:display("P1: joining"), + ggs_db:setItem(Table, local_storage, P1, player1), + erlang:display(ggs_db:getItem(Table, local_storage, P1)), + ggs_db:setItem(Table, local_storage, player1_y, 50), + ggs_table:send_command(Table, P1, {"welcome", int2str(1)}), + ggs_table:notify_all_players(Table, {"player1_y", int2str(50)}), + erlang:display("P2: joining"), + ggs_db:setItem(Table, local_storage, P2, player2), + erlang:display(ggs_db:getItem(Table, local_storage, P2)), + ggs_db:setItem(Table, local_storage, player2_y, 50), + ggs_table:send_command(Table, P2, {"welcome", int2str(2)}), + ggs_table:send_command(Table, P2, {"player1_y", int2str(50)}), + ggs_table:notify_all_players(Table, {"player2_y", int2str(50)}); _Other -> ggs_table:send_command(Table, Player, {"not_welcome", ""}) end. From 5620b67c3488fb9ead7ed15071400507bf70512d Mon Sep 17 00:00:00 2001 From: niklas Date: Thu, 14 Apr 2011 17:47:55 +0200 Subject: [PATCH 135/192] removed output --- doc/report | 2 +- games/Pong-bots/pong-bot.rb | 6 +-- src/ggs_coordinator.erl | 4 +- src/ggs_dispatcher_backup.erl | 64 +++++++++++++++++++++++++++++++ src/ggs_gamevm_p.erl | 39 ++++++++++--------- src/ggs_player.erl | 10 ++--- tests/current_counterexample.eqc | Bin 0 -> 16 bytes tests/ggs_db_quickcheck_test.erl | 22 +++++++++++ texput.log | 21 ++++++++++ 9 files changed, 138 insertions(+), 30 deletions(-) create mode 100644 src/ggs_dispatcher_backup.erl create mode 100644 tests/current_counterexample.eqc create mode 100644 tests/ggs_db_quickcheck_test.erl create mode 100644 texput.log diff --git a/doc/report b/doc/report index 0031285..030e0ec 160000 --- a/doc/report +++ b/doc/report @@ -1 +1 @@ -Subproject commit 00312859714bef6e9a4fdb9931a41fef56eeb89a +Subproject commit 030e0ecafff27fff8e6918add47dfcdeec363e7c diff --git a/games/Pong-bots/pong-bot.rb b/games/Pong-bots/pong-bot.rb index 04aa172..cb7a1fe 100755 --- a/games/Pong-bots/pong-bot.rb +++ b/games/Pong-bots/pong-bot.rb @@ -17,8 +17,8 @@ class PongBot @send_start = false @ggs_network = GGSNetwork.new(self) - #@ggs_network.connect("10.42.43.1") - @ggs_network.connect() + @ggs_network.connect("192.168.0.1") + #@ggs_network.connect() end def ggsNetworkReady(ggs_network, ready) @@ -111,4 +111,4 @@ end if __FILE__ == $0 PongBot.new -end \ No newline at end of file +end diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index fa6b4e4..e90b0bb 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -123,7 +123,7 @@ handle_call({join_table, Table}, From, State) -> % PN when (PN >= 2) -> {reply, {error, table_full}, State} % TODO: Fix this limit!! % end; {TableNum,_} = string:to_integer(Table), - erlang:display(State#co_state.players), + %erlang:display(State#co_state.players), CurrentPlayers = length(State#co_state.players), SmallestTable = case (CurrentPlayers rem 2) of 0 -> CurrentPlayers / 2; @@ -156,7 +156,7 @@ handle_call(get_all_players, _From, State) -> %% Conversion tools handle_call({table_token_to_pid, Token}, _From, State) -> Tables = State#co_state.tables, - erlang:display("Pre-keyfind"), + %erlang:display("Pre-keyfind"), {_, Pid} = lists:keyfind(Token, 1, Tables), {reply, Pid, State}; diff --git a/src/ggs_dispatcher_backup.erl b/src/ggs_dispatcher_backup.erl new file mode 100644 index 0000000..63a0f53 --- /dev/null +++ b/src/ggs_dispatcher_backup.erl @@ -0,0 +1,64 @@ +-module(ggs_dispatcher_backup). + +-behaviour(gen_server). + +%% API Exports +-export([start_link/0, stop/1]). +-export([back_up/1, retrieve/0]). + +%% gen_server callback exports +-export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, + code_change/3]). + +-define(SERVER, ?MODULE). +%% @doc This module is responsible for keeping a backup of the coodinator +%% at all times. At any point in time a backup can be restored from this +%% module. +%% This module is started by the root supervisor, and is restarted when it +%% crashes. Upon a crash, the backup state is lost in this module, and must +%% be filled in from the ggs_coordinator. + +%% @doc Start a new ggs_coordinator backup instance, and register it under +%% this name. This means that there can only be one instance of this module +%% running. +start_link() -> + gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). + +%% @doc Stops the server with the specified reason. +%% @spec stop(Reason) -> ok. +%% Reason = String +stop(_Reason) -> ggs_logger:not_implemented(). + +%% API +back_up(State) -> + gen_server:cast(?SERVER, State). + +%% @doc Retrieve the state stored in this server. If there is a state stored +%% here, it is returned to the caller. If the backup server does not have a +%% state stored, it will return the no_state_stored atom. +retrieve() -> + gen_server:call(?SERVER, retrieve). + +%% gen_server callbacks + +%% @doc Initiate the server. This is called from gen_server +init([]) -> + {ok, no_state_stored}. + +handle_call(retrieve, _From, State) -> + {reply, State, State}. + +handle_cast(NewState, _State) -> + {noreply, NewState}. + +handle_info(Msg, State) -> + io:format("Received out of bounds message! "), + erlang:display(Msg), + io:format("~n"), + {noreply, State}. + +terminate(normal, _State) -> + ok. + +code_change(_OldVsn, State, _Extra) -> + {ok, State}. diff --git a/src/ggs_gamevm_p.erl b/src/ggs_gamevm_p.erl index dc669bf..bb63eb2 100644 --- a/src/ggs_gamevm_p.erl +++ b/src/ggs_gamevm_p.erl @@ -118,21 +118,21 @@ intern_player_command(Table, Player, Command, _Args) -> intern_add_player(Table, Player) -> {ok, PlayerList} = ggs_table:get_player_list(Table), case length(PlayerList) of - 1 -> - erlang:display("A player joined"); + 1 -> ok; + %erlang:display("A player joined"); 2 -> - erlang:display("Player 2 joined"), + %erlang:display("Player 2 joined"), [P1,P2] = PlayerList, - erlang:display(PlayerList), - erlang:display("P1: joining"), + %erlang:display(PlayerList), + %erlang:display("P1: joining"), ggs_db:setItem(Table, local_storage, P1, player1), - erlang:display(ggs_db:getItem(Table, local_storage, P1)), + %erlang:display(ggs_db:getItem(Table, local_storage, P1)), ggs_db:setItem(Table, local_storage, player1_y, 50), ggs_table:send_command(Table, P1, {"welcome", int2str(1)}), ggs_table:notify_all_players(Table, {"player1_y", int2str(50)}), - erlang:display("P2: joining"), + %erlang:display("P2: joining"), ggs_db:setItem(Table, local_storage, P2, player2), - erlang:display(ggs_db:getItem(Table, local_storage, P2)), + %erlang:display(ggs_db:getItem(Table, local_storage, P2)), ggs_db:setItem(Table, local_storage, player2_y, 50), ggs_table:send_command(Table, P2, {"welcome", int2str(2)}), ggs_table:send_command(Table, P2, {"player1_y", int2str(50)}), @@ -145,7 +145,7 @@ intern_add_player(Table, Player) -> intern_up(Table, Player) -> case ggs_db:getItem(Table, local_storage, Player) of player1 -> - erlang:display("P1: command up"), + %erlang:display("P1: command up"), Y = ggs_db:getItem(Table, local_storage, player1_y), NewY = Y - 10, case NewY >= 0 of @@ -156,7 +156,7 @@ intern_up(Table, Player) -> ggs_table:send_command(Table, Player, {"notice", "Already on top"}) end; player2 -> - erlang:display("P2: command up"), + %erlang:display("P2: command up"), Y = ggs_db:getItem(Table, local_storage, player2_y), NewY = Y - 10, case NewY >= 0 of @@ -171,7 +171,7 @@ intern_up(Table, Player) -> intern_down(Table, Player) -> case ggs_db:getItem(Table, local_storage, Player) of player1 -> - erlang:display("P1: command down"), + %erlang:display("P1: command down"), Y = ggs_db:getItem(Table, local_storage, player1_y), NewY = Y + 10, case NewY =< 100 of @@ -182,7 +182,7 @@ intern_down(Table, Player) -> ggs_table:send_command(Table, Player, {"notice", "Already on bottom"}) end; player2 -> - erlang:display("P2: command down"), + %erlang:display("P2: command down"), Y = ggs_db:getItem(Table, local_storage, player2_y), NewY = Y + 10, case NewY =< 100 of @@ -195,21 +195,21 @@ intern_down(Table, Player) -> end. intern_start(Table, Player) -> - erlang:display(Player), - erlang:display(ggs_db:getItem(Table, local_storage, Player)), + %erlang:display(Player), + %erlang:display(ggs_db:getItem(Table, local_storage, Player)), case ggs_db:getItem(Table, local_storage, Player) of player1 -> ggs_db:setItem(Table, local_storage, player1_ready, true), ggs_db:setItem(Table, local_storage, player1_points, 0), case ggs_db:getItem(Table, local_storage, player2_ready) of true -> - erlang:display("P1 ready, start game."), + %erlang:display("P1 ready, start game."), ggs_table:notify_all_players(Table, {"game", "start"}), ggs_db:setItem(Table, local_storage, ball, {50,50,1,1}), Pid = spawn(fun() -> game_loop([Table]) end), Pid ! tick; _Other -> - erlang:display("P1 ready, waiting."), + %erlang:display("P1 ready, waiting."), ggs_table:send_command(Table, Player, {"game", "wait"}) end; player2 -> @@ -217,17 +217,18 @@ intern_start(Table, Player) -> ggs_db:setItem(Table, local_storage, player2_points, 0), case ggs_db:getItem(Table, local_storage, player1_ready) of true -> - erlang:display("P2 ready, start game."), + %erlang:display("P2 ready, start game."), ggs_table:notify_all_players(Table, {"game", "start"}), ggs_db:setItem(Table, local_storage, ball, {50,50,-1,-1}), GameLoop = spawn(fun() -> game_loop([Table]) end), GameLoop ! tick; _Other -> - erlang:display("P2 ready, waiting."), + %erlang:display("P2 ready, waiting."), ggs_table:send_command(Table, Player, {"game", "wait"}) end; Other -> - erlang:display(Other) + ok + %erlang:display(Other) end. game_loop([Table]) -> diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 7057dbe..2e07527 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -30,20 +30,20 @@ start(Socket) -> join_table(Num) -> case ggs_coordinator:join_table(integer_to_list(Num)) of {ok, T} -> - io:format("Joining existing table: ~p~n", [T]), + %io:format("Joining existing table: ~p~n", [T]), T; {error, no_such_table} -> case ggs_coordinator:create_table({force, integer_to_list(Num)}) of {ok, TBToken} -> ok end, case ggs_coordinator:join_table(integer_to_list(Num)) of - {ok, T} -> io:format("Creating new table: ~p~n", [T]), + {ok, T} -> %io:format("Creating new table: ~p~n", [T]), T; - {error, E} -> erlang:display(E), + {error, E} -> %erlang:display(E), join_table(Num+1) end; {error, table_full} -> - erlang:display("Table full!"), + %erlang:display("Table full!"), join_table(Num+1) end. @@ -128,4 +128,4 @@ terminate(Reason, State) -> % TODO: release Socket ok. -code_change(_OldVsn, St, _Extra) -> {ok, St}. \ No newline at end of file +code_change(_OldVsn, St, _Extra) -> {ok, St}. diff --git a/tests/current_counterexample.eqc b/tests/current_counterexample.eqc new file mode 100644 index 0000000000000000000000000000000000000000..fdb1c3cfef60d0ac8a51344ff8c22ebc636b87b8 GIT binary patch literal 16 XcmZq9VPIfj%wS4n%w}L>WXu8p7|8;b literal 0 HcmV?d00001 diff --git a/tests/ggs_db_quickcheck_test.erl b/tests/ggs_db_quickcheck_test.erl new file mode 100644 index 0000000..e10789a --- /dev/null +++ b/tests/ggs_db_quickcheck_test.erl @@ -0,0 +1,22 @@ +-module(ggs_db_quickcheck_test). + +-include_lib("eqc/include/eqc.hrl"). + +-compile(export_all). + + +%prop_delete() -> +% ?FORALL({X, Xs}, {int(), list(int())}, +% not lists:member(X, lists:delete(X, Xs))). + +%test_delete() -> +% quickcheck(prop_delete()). + + +prop_getitem -> + ggs_db:init(), + ?FORALL({}). + + + + diff --git a/texput.log b/texput.log new file mode 100644 index 0000000..c116103 --- /dev/null +++ b/texput.log @@ -0,0 +1,21 @@ +This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) (format=latex 2011.3.22) 22 MAR 2011 15:09 +entering extended mode + restricted \write18 enabled. + %&-line parsing enabled. +**Hej + +! Emergency stop. +<*> Hej + +End of file on the terminal! + + +Here is how much of TeX's memory you used: + 3 strings out of 495062 + 104 string characters out of 1182644 + 45108 words of memory out of 3000000 + 3282 multiletter control sequences out of 15000+50000 + 3640 words of font info for 14 fonts, out of 3000000 for 9000 + 28 hyphenation exceptions out of 8191 + 0i,0n,0p,6b,6s stack positions out of 5000i,500n,10000p,200000b,50000s +No pages of output. From 9986a801aa8785a2c0846a32096de1515af8e809 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Sat, 16 Apr 2011 19:40:07 +0200 Subject: [PATCH 136/192] Pong bot for erlang. --- games/pong_bot_e/ggs_network.erl | 123 +++++++++++++++++++++ games/pong_bot_e/pong_bot.erl | 182 +++++++++++++++++++++++++++++++ 2 files changed, 305 insertions(+) create mode 100644 games/pong_bot_e/ggs_network.erl create mode 100644 games/pong_bot_e/pong_bot.erl diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl new file mode 100644 index 0000000..b590236 --- /dev/null +++ b/games/pong_bot_e/ggs_network.erl @@ -0,0 +1,123 @@ +-module(ggs_network). +-export([connect/0,append_key_value_strings_to_dict/2,key_value_string_to_list/1]). + +connect() -> + {ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]), + A = gen_tcp:recv(Socket,0), + read(A), + Socket. + +read(Message) -> + case Message of + {ok, M} -> + HeaderList = string:tokens(M, "\n"), + Headers = extract_headers(HeaderList), + Data = extract_data(HeaderList), + received_command(Headers, Data) + end. + +received_command(Headers, Data) -> + {ok, CommandList} = dict:find("Client-Command", Headers), + Command = lists:nth(1, CommandList), + case Command of + "hello" -> + io:format("Received command 'hello'~n"), + pong_bot:set_game_token(Data), + %gen_server:cast({global, pong_bot}, {game_token, Data}), + send_command("Ready", ""); + %pong_bot:ggsNetworkReady(); Unneccessary + "defined" -> + ok; + %pong_bot:ggsNetworkDefined(); Unneccessary + Command -> + gen_server:ggsNetworkReceivedCommandWithArgs(Command, Data) + end. + +make_message(ServerOrGame, Command, Args) -> + io:format("Make message~n"), + GameToken = pong_bot:get_game_token(), +% GameToken = gen_server:call({global, pong_bot}, game_token), + io:format("Make message2~n"), + StrGameToken = string:concat("Token: ", GameToken), + StrGameTokenln = string:concat(StrGameToken, "\n"), + StrCommand = string:concat("-Command: ", Command), + StrCommandln = string:concat(StrCommand, "\n"), + StrFullCommand = string:concat(ServerOrGame, StrCommandln), + StrContentLength = string:concat("Content-Length: ", integer_to_list(length(Args))), + StrContentLengthln = string:concat(StrContentLength, "\n\n"), + StrTokenCommand = string:concat(StrGameTokenln, StrFullCommand), + Message = string:concat(StrTokenCommand, StrContentLengthln), + + MessageWithArgs = string:concat(Message, list_concat(Args,[])), + MessageWithArgs. + +%define(SourceCode) -> +% write(make_message("Server", "define", SourceCode)). + + +send_command(Command, Args) -> + write(make_message("Client", Command, Args)). + +write(Message) -> + Socket = gen_server:call({global, pong_bot}, socket), + gen_tcp:send(Socket, Message). + +list_concat([],Ret) -> + Ret; +list_concat([E|ES],Ret) -> + NewRet = string:concat(Ret,E), + list_concat(ES,NewRet). + + + +%%%Packet parsing.%%% + + +extract_headers(Source) -> + key_value_strings_to_dict(Source). + + +extract_data([]) -> + []; +extract_data([E|ES]) -> + KeyValueList = key_value_string_to_list(E), + case length(KeyValueList) of + 2 -> + extract_data(ES); + _ -> + E + end. + + +%%%Low-level internals.%%% + + +%%["K1: V1","K2: V2","KN: VN" ...] -> Dict +key_value_strings_to_dict(Strings) -> + Dict = dict:new(), + append_key_value_strings_to_dict(Strings,Dict). + +%%["K1: V1","K2: V2","KN: VN" ...], Dict -> NewDict +append_key_value_strings_to_dict([Str|Strings],Dict) -> + KeyValueList = key_value_string_to_list(Str), + case length(KeyValueList) of + 2 -> + NewDict = append_string_pair_to_dict(Dict,lists:nth(1,KeyValueList),lists:nth(2,KeyValueList)), + append_key_value_strings_to_dict(Strings,NewDict); + _ -> + append_key_value_strings_to_dict(Strings,Dict) + end; +append_key_value_strings_to_dict([],Dict) -> + Dict. + + +%%"Hello: "World!" -> ["Hello","World!"] +key_value_string_to_list(KeyValueString) -> + string:tokens(KeyValueString, ": "). + + +%%Append a key str1 and a value str2 to the dict Dict +append_string_pair_to_dict(Dict, Str1, Str2) -> + dict:append(Str1, Str2, Dict). + + diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl new file mode 100644 index 0000000..c75ebc0 --- /dev/null +++ b/games/pong_bot_e/pong_bot.erl @@ -0,0 +1,182 @@ +-module(pong_bot). +-behaviour(gen_server). +-export([start_link/0]). +-export([init/1, handle_call/3, handle_cast/2]). +-export([ggsNetworkReceivedCommandWithArgs/2,set_game_token/1,get_game_token/0]). + +start_link() -> + gen_server:start_link({global, pong_bot}, pong_bot, [], []). + + +init(_Args) -> + Player1 = new_pos(), + Player2 = new_pos(), + Ball = new_pos(), + Paused = true, + SendStart = false, + GGSNetwork = ggs_network:connect(), %Localhost is set internally inside + %ggs_network. + State1 = dict:new(), + State2 = dict:store(player1, Player1, State1), + State3 = dict:store(player2, Player2, State2), + State4 = dict:store(ball, Ball, State3), + State5 = dict:store(paused, Paused, State4), + State6 = dict:store(send_start, SendStart, State5), + State = dict:store(ggs_network, GGSNetwork, State6), + State. + +new_pos() -> + {0, 0}. + + +ggsNetworkReceivedCommandWithArgs(Command, Args) -> + case Command of + "welcome" -> + welcome(Args); + "ball" -> + ball(Args); + "player1_y" -> + player1_y(Args); + "player2_y" -> + player2_y(Args); + "game" -> + game(Args); + "player1_points" -> + new_round(); + "player2_points" -> + new_round() + end. + +welcome(Who_am_I) -> + case Who_am_I of + 1 -> + Me = gen_server:call(pong_bot, player1), + gen_server:cast(pong_bot, {me, Me}); + 2 -> + Me = gen_server:call(pong_bot, player2), + gen_server:cast(pong_bot, {me, Me}) + end, + + loop(). + +loop() -> + timer:sleep(300), + gameTick(), + loop(). + +gameTick() -> + GamePaused = gen_server:call(pong_bot, paused), + SendStart = gen_server:call(pong_bot, send_start), + + case GamePaused of + true -> + case SendStart of + false -> + ggs_network:send_command("start"), + gen_server:cast(pong_bot, {send_start, true}) + end; + false -> + Ball = gen_server:call(pong_bot, ball), + {_, BallY} = Ball, + Me = gen_server:call(pong_bot, me), + {_, MeY} = Me, + + case BallY < (MeY - 5) of + true -> + ggs_network:send_command("up"); + false -> + ggs_network:send_command("down") + end + end. + + + + +ball(Pos_s) -> + PosList = string:tokens(Pos_s, ","), + XStr = lists:nth(1,PosList), + YStr = lists:nth(1,PosList), + X = string:to_integer(XStr), + Y = string:to_integer(YStr), + Pos = {X, Y}, + gen_server:cast(pong_bot, {ball, Pos}). + +player1_y(YStr) -> + Y = string:to_integer(YStr), + gen_server:cast(pong_bot, {player1_y, Y}). + +player2_y(YStr) -> + Y = string:to_integer(YStr), + gen_server:cast(pong_bot, {player2_y, Y}). + +game(WaitOrStart) -> + case WaitOrStart of + "wait" -> + ok; + _ -> + gen_server:cast(pong_bot, {paused, false}) + end. + + +new_round() -> + Paused = true, + SendStart = false, + gen_server:cast(pong_bot, {new_round, Paused, SendStart}). + + +set_game_token(GameToken) -> + gen_server:cast({global, pong_bot}, {game_token, GameToken}). + +get_game_token() -> + gen_server:call({global, pong_bot}, game_token). + +handle_call(player1, _From, State) -> + Player1 = dict:fetch(player1, State), + {reply, Player1, State}; + +handle_call(player1_y, _From, State) -> + {_,Y} = dict:fetch(player1, State), + {reply, Y, State}; + +handle_call(player2_y, _From, State) -> + {_,Y} = dict:fetch(player2, State), + {reply, Y, State}; + +handle_call(game_token, _From, State) -> + io:format("Handle call game_token~n"), + GameToken = dict:fetch(game_token, State), + {reply, GameToken, State}. + +handle_cast({me, Me}, State) -> + NewState = dict:store(me, Me, State), + {noreply, NewState}; + +handle_cast({ball, Pos}, State) -> + NewState = dict:store(ball, Pos, State), + {noreply, NewState}; + +handle_cast({player1_y, Y}, State) -> + {OldX, _} = dict:fetch(player1, State), + NewPlayer1 = {OldX, Y}, + NewState = dict:store(player1, NewPlayer1, State), + {noreply, NewState}; + +handle_cast({player2_y, Y}, State) -> + {OldX, _} = dict:fetch(player2, State), + NewPlayer2 = {OldX, Y}, + NewState = dict:store(player2, NewPlayer2, State), + {noreply, NewState}; + +handle_cast({paused, Paused}, State) -> + NewState = dict:store(paused, Paused, State), + {noreply, NewState}; + +handle_cast({new_rouned, Paused, SendStart}, State) -> + State1 = dict:store(paused, Paused, State), + NewState = dict:store(send_start, SendStart, State1), + {noreply, NewState}; + +handle_cast({game_token, Token}, State) -> + io:format("Handle cast game_token~n"), + NewState = dict:store(game_token, Token, State), + {noreply, NewState}. From 7f95d96cda49ba0d8a145741e1c4a5ecfeb044e5 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Mon, 18 Apr 2011 19:48:50 +0200 Subject: [PATCH 137/192] gen_server working. --- games/pong_bot_e/ggs_network.erl | 16 +++------- games/pong_bot_e/pong_bot.erl | 54 ++++++++++++++++++++++---------- 2 files changed, 43 insertions(+), 27 deletions(-) diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index b590236..fa3e401 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -1,12 +1,12 @@ -module(ggs_network). -export([connect/0,append_key_value_strings_to_dict/2,key_value_string_to_list/1]). +-export([read/1]). connect() -> {ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]), - A = gen_tcp:recv(Socket,0), - read(A), Socket. + read(Message) -> case Message of {ok, M} -> @@ -22,9 +22,10 @@ received_command(Headers, Data) -> case Command of "hello" -> io:format("Received command 'hello'~n"), + io:format("Game token: ~s~n", [Data]), pong_bot:set_game_token(Data), %gen_server:cast({global, pong_bot}, {game_token, Data}), - send_command("Ready", ""); + send_command("'ready'", ""); %pong_bot:ggsNetworkReady(); Unneccessary "defined" -> ok; @@ -34,10 +35,7 @@ received_command(Headers, Data) -> end. make_message(ServerOrGame, Command, Args) -> - io:format("Make message~n"), GameToken = pong_bot:get_game_token(), -% GameToken = gen_server:call({global, pong_bot}, game_token), - io:format("Make message2~n"), StrGameToken = string:concat("Token: ", GameToken), StrGameTokenln = string:concat(StrGameToken, "\n"), StrCommand = string:concat("-Command: ", Command), @@ -47,14 +45,10 @@ make_message(ServerOrGame, Command, Args) -> StrContentLengthln = string:concat(StrContentLength, "\n\n"), StrTokenCommand = string:concat(StrGameTokenln, StrFullCommand), Message = string:concat(StrTokenCommand, StrContentLengthln), - MessageWithArgs = string:concat(Message, list_concat(Args,[])), + io:format("Make message: ~n~n~s",[MessageWithArgs]), MessageWithArgs. -%define(SourceCode) -> -% write(make_message("Server", "define", SourceCode)). - - send_command(Command, Args) -> write(make_message("Client", Command, Args)). diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl index c75ebc0..03b26f6 100644 --- a/games/pong_bot_e/pong_bot.erl +++ b/games/pong_bot_e/pong_bot.erl @@ -3,27 +3,36 @@ -export([start_link/0]). -export([init/1, handle_call/3, handle_cast/2]). -export([ggsNetworkReceivedCommandWithArgs/2,set_game_token/1,get_game_token/0]). +-export([view/0, peek_socket/0]). + start_link() -> - gen_server:start_link({global, pong_bot}, pong_bot, [], []). + gen_server:start_link({global, pong_bot}, pong_bot, [], []), + Socket = peek_socket(), + A = gen_tcp:recv(Socket,0), + ggs_network:read(A). +peek_socket() -> + gen_server:call({global, pong_bot}, socket). + init(_Args) -> + io:format("State initialization.~n"), Player1 = new_pos(), Player2 = new_pos(), Ball = new_pos(), Paused = true, SendStart = false, - GGSNetwork = ggs_network:connect(), %Localhost is set internally inside - %ggs_network. + Socket = ggs_network:connect(), %Localhost is set internally inside ggs_network. State1 = dict:new(), State2 = dict:store(player1, Player1, State1), State3 = dict:store(player2, Player2, State2), State4 = dict:store(ball, Ball, State3), State5 = dict:store(paused, Paused, State4), State6 = dict:store(send_start, SendStart, State5), - State = dict:store(ggs_network, GGSNetwork, State6), - State. + State = dict:store(socket, Socket, State6), + io:format("End State initialization.~n"), + {ok, State}. new_pos() -> {0, 0}. @@ -48,6 +57,7 @@ ggsNetworkReceivedCommandWithArgs(Command, Args) -> end. welcome(Who_am_I) -> + io:format("Welcome begin~n"), case Who_am_I of 1 -> Me = gen_server:call(pong_bot, player1), @@ -130,6 +140,9 @@ set_game_token(GameToken) -> get_game_token() -> gen_server:call({global, pong_bot}, game_token). +view() -> + gen_server:call({global, pong_bot}, game_token). + handle_call(player1, _From, State) -> Player1 = dict:fetch(player1, State), {reply, Player1, State}; @@ -140,13 +153,26 @@ handle_call(player1_y, _From, State) -> handle_call(player2_y, _From, State) -> {_,Y} = dict:fetch(player2, State), - {reply, Y, State}; - -handle_call(game_token, _From, State) -> - io:format("Handle call game_token~n"), - GameToken = dict:fetch(game_token, State), - {reply, GameToken, State}. + {reply, Y, State}; +handle_call(game_token, _From, State) -> + GameToken = dict:fetch(game_token, State), + {reply, GameToken, State}; + +handle_call(view, _From, State) -> + io:format("View the state.~n"), +% StateFromList = lists:nth(1, State) + {reply, State, State}; + +handle_call(socket, _From, State) -> + Socket = dict:fetch(socket, State), + %Socket = lists:nth(1, SocketInList), + {reply, Socket, State}. + +handle_cast({game_token, GameToken}, State) -> + NewState = dict:store(game_token, GameToken, State), + {noreply, NewState}; + handle_cast({me, Me}, State) -> NewState = dict:store(me, Me, State), {noreply, NewState}; @@ -174,9 +200,5 @@ handle_cast({paused, Paused}, State) -> handle_cast({new_rouned, Paused, SendStart}, State) -> State1 = dict:store(paused, Paused, State), NewState = dict:store(send_start, SendStart, State1), - {noreply, NewState}; - -handle_cast({game_token, Token}, State) -> - io:format("Handle cast game_token~n"), - NewState = dict:store(game_token, Token, State), {noreply, NewState}. + From 77c6038ec83d1ae1731067c344ab152d403bfb0a Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Mon, 18 Apr 2011 21:13:56 +0200 Subject: [PATCH 138/192] 'ready' to ready --- games/pong_bot_e/ggs_network.erl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index fa3e401..3ff0913 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -25,7 +25,7 @@ received_command(Headers, Data) -> io:format("Game token: ~s~n", [Data]), pong_bot:set_game_token(Data), %gen_server:cast({global, pong_bot}, {game_token, Data}), - send_command("'ready'", ""); + send_command("ready", ""); %pong_bot:ggsNetworkReady(); Unneccessary "defined" -> ok; From 652d557582025d8fe58da7da796805dcdfeca10f Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 18 Apr 2011 21:22:45 +0200 Subject: [PATCH 139/192] minor change --- games/pong_bot_e/ggs_network.erl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index fa3e401..1b49507 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -25,7 +25,7 @@ received_command(Headers, Data) -> io:format("Game token: ~s~n", [Data]), pong_bot:set_game_token(Data), %gen_server:cast({global, pong_bot}, {game_token, Data}), - send_command("'ready'", ""); + send_command("ready", ""); %pong_bot:ggsNetworkReady(); Unneccessary "defined" -> ok; @@ -50,7 +50,7 @@ make_message(ServerOrGame, Command, Args) -> MessageWithArgs. send_command(Command, Args) -> - write(make_message("Client", Command, Args)). + write(make_message("Game", Command, Args)). write(Message) -> Socket = gen_server:call({global, pong_bot}, socket), From fb6457660b7aa71e0309d596721caa8792c826f5 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Tue, 19 Apr 2011 14:41:46 +0200 Subject: [PATCH 140/192] hello --- games/pong_bot_e/ggs_network.erl | 16 +++--- games/pong_bot_e/pong_bot.erl | 86 ++++++++++++++++++++------------ 2 files changed, 62 insertions(+), 40 deletions(-) diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index 3ff0913..038a77b 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -1,6 +1,6 @@ -module(ggs_network). -export([connect/0,append_key_value_strings_to_dict/2,key_value_string_to_list/1]). --export([read/1]). +-export([read/1, send_command/2]). connect() -> {ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]), @@ -10,9 +10,11 @@ connect() -> read(Message) -> case Message of {ok, M} -> + io:format("Message: ~n~n~s~n", [M]), HeaderList = string:tokens(M, "\n"), Headers = extract_headers(HeaderList), Data = extract_data(HeaderList), + io:format("Data: ~s~n", [Data]), received_command(Headers, Data) end. @@ -21,17 +23,13 @@ received_command(Headers, Data) -> Command = lists:nth(1, CommandList), case Command of "hello" -> - io:format("Received command 'hello'~n"), - io:format("Game token: ~s~n", [Data]), pong_bot:set_game_token(Data), - %gen_server:cast({global, pong_bot}, {game_token, Data}), send_command("ready", ""); - %pong_bot:ggsNetworkReady(); Unneccessary "defined" -> + io:format("Defined~n"), ok; - %pong_bot:ggsNetworkDefined(); Unneccessary Command -> - gen_server:ggsNetworkReceivedCommandWithArgs(Command, Data) + pong_bot:ggsNetworkReceivedCommandWithArgs(Command, Data) end. make_message(ServerOrGame, Command, Args) -> @@ -46,11 +44,10 @@ make_message(ServerOrGame, Command, Args) -> StrTokenCommand = string:concat(StrGameTokenln, StrFullCommand), Message = string:concat(StrTokenCommand, StrContentLengthln), MessageWithArgs = string:concat(Message, list_concat(Args,[])), - io:format("Make message: ~n~n~s",[MessageWithArgs]), MessageWithArgs. send_command(Command, Args) -> - write(make_message("Client", Command, Args)). + write(make_message("Game", Command, Args)). write(Message) -> Socket = gen_server:call({global, pong_bot}, socket), @@ -74,6 +71,7 @@ extract_headers(Source) -> extract_data([]) -> []; extract_data([E|ES]) -> + io:format("~n~s~n", [E]), KeyValueList = key_value_string_to_list(E), case length(KeyValueList) of 2 -> diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl index 03b26f6..f5a81c4 100644 --- a/games/pong_bot_e/pong_bot.erl +++ b/games/pong_bot_e/pong_bot.erl @@ -9,29 +9,33 @@ start_link() -> gen_server:start_link({global, pong_bot}, pong_bot, [], []), Socket = peek_socket(), - A = gen_tcp:recv(Socket,0), - ggs_network:read(A). + spawn(fun() -> communication_loop(Socket) end), + spawn(fun() -> game_loop() end ). + +communication_loop(Socket) -> + A = gen_tcp:recv(Socket, 0), + ggs_network:read(A), + communication_loop(Socket). + peek_socket() -> gen_server:call({global, pong_bot}, socket). init(_Args) -> - io:format("State initialization.~n"), Player1 = new_pos(), Player2 = new_pos(), Ball = new_pos(), Paused = true, - SendStart = false, + Start = false, Socket = ggs_network:connect(), %Localhost is set internally inside ggs_network. State1 = dict:new(), State2 = dict:store(player1, Player1, State1), State3 = dict:store(player2, Player2, State2), State4 = dict:store(ball, Ball, State3), State5 = dict:store(paused, Paused, State4), - State6 = dict:store(send_start, SendStart, State5), + State6 = dict:store(start, Start, State5), State = dict:store(socket, Socket, State6), - io:format("End State initialization.~n"), {ok, State}. new_pos() -> @@ -58,44 +62,47 @@ ggsNetworkReceivedCommandWithArgs(Command, Args) -> welcome(Who_am_I) -> io:format("Welcome begin~n"), + io:format("I am player: ~s~n", [Who_am_I]), case Who_am_I of - 1 -> - Me = gen_server:call(pong_bot, player1), - gen_server:cast(pong_bot, {me, Me}); - 2 -> - Me = gen_server:call(pong_bot, player2), - gen_server:cast(pong_bot, {me, Me}) - end, + "1" -> + Me = gen_server:call({global, pong_bot}, player1), + gen_server:cast({global, pong_bot}, {me, Me}); + "2" -> + Me = gen_server:call({global, pong_bot}, player2), + gen_server:cast({global, pong_bot}, {me, Me}) + end. - loop(). + -loop() -> +game_loop() -> timer:sleep(300), gameTick(), - loop(). + game_loop(). gameTick() -> - GamePaused = gen_server:call(pong_bot, paused), - SendStart = gen_server:call(pong_bot, send_start), + GamePaused = gen_server:call({global, pong_bot}, paused), + SendStart = gen_server:call({global, pong_bot}, start), case GamePaused of true -> case SendStart of false -> - ggs_network:send_command("start"), - gen_server:cast(pong_bot, {send_start, true}) + ggs_network:send_command("start", ""), + gen_server:cast({global, pong_bot}, {start, true}); + true -> + ok end; false -> - Ball = gen_server:call(pong_bot, ball), + Ball = gen_server:call({global, pong_bot}, ball), {_, BallY} = Ball, - Me = gen_server:call(pong_bot, me), + Me = gen_server:call({global, pong_bot}, me), {_, MeY} = Me, case BallY < (MeY - 5) of true -> - ggs_network:send_command("up"); + ggs_network:send_command("up", ""); false -> - ggs_network:send_command("down") + ggs_network:send_command("down", "") end end. @@ -109,29 +116,29 @@ ball(Pos_s) -> X = string:to_integer(XStr), Y = string:to_integer(YStr), Pos = {X, Y}, - gen_server:cast(pong_bot, {ball, Pos}). + gen_server:cast({global, pong_bot}, {ball, Pos}). player1_y(YStr) -> Y = string:to_integer(YStr), - gen_server:cast(pong_bot, {player1_y, Y}). + gen_server:cast({global, pong_bot}, {player1_y, Y}). player2_y(YStr) -> Y = string:to_integer(YStr), - gen_server:cast(pong_bot, {player2_y, Y}). + gen_server:cast({global, pong_bot}, {player2_y, Y}). game(WaitOrStart) -> case WaitOrStart of "wait" -> ok; _ -> - gen_server:cast(pong_bot, {paused, false}) + gen_server:cast({global, pong_bot}, {paused, false}) end. new_round() -> Paused = true, SendStart = false, - gen_server:cast(pong_bot, {new_round, Paused, SendStart}). + gen_server:cast({global, pong_bot}, {new_round, Paused, SendStart}). set_game_token(GameToken) -> @@ -144,9 +151,15 @@ view() -> gen_server:call({global, pong_bot}, game_token). handle_call(player1, _From, State) -> + io:format("Player1 before~n"), Player1 = dict:fetch(player1, State), + io:format("Player1 after~n"), {reply, Player1, State}; +handle_call(player2, _From, State) -> + Player2 = dict:fetch(player2, State), + {reply, Player2, State}; + handle_call(player1_y, _From, State) -> {_,Y} = dict:fetch(player1, State), {reply, Y, State}; @@ -167,7 +180,15 @@ handle_call(view, _From, State) -> handle_call(socket, _From, State) -> Socket = dict:fetch(socket, State), %Socket = lists:nth(1, SocketInList), - {reply, Socket, State}. + {reply, Socket, State}; + +handle_call(paused, _From, State) -> + Paused = dict:fetch(paused, State), + {reply, Paused, State}; + +handle_call(start, _From, State) -> + Start = dict:fetch(start, State), + {reply, Start, State}. handle_cast({game_token, GameToken}, State) -> NewState = dict:store(game_token, GameToken, State), @@ -200,5 +221,8 @@ handle_cast({paused, Paused}, State) -> handle_cast({new_rouned, Paused, SendStart}, State) -> State1 = dict:store(paused, Paused, State), NewState = dict:store(send_start, SendStart, State1), - {noreply, NewState}. + {noreply, NewState}; +handle_cast({start, Start}, State) -> + NewState = dict:store(start, Start, State), + {noreply, NewState}. From 1ec145efa867f19628045128c67cce324a428b0c Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Wed, 20 Apr 2011 04:51:46 +0200 Subject: [PATCH 141/192] Data correctly extracted. --- games/pong_bot_e/ggs_network.erl | 65 +++++++++++++++++++++----------- games/pong_bot_e/pong_bot.erl | 8 +++- 2 files changed, 50 insertions(+), 23 deletions(-) diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index 038a77b..4203498 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -5,24 +5,44 @@ connect() -> {ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]), Socket. + +read(Socket) -> + Content = receive_content(Socket), + Headers = extract_headers(Content), + ContentSize = dict:fetch("Content-Size", Headers), + ContentSizeI = list_to_integer(lists:nth(1, ContentSize)), + Data = receive_data(Socket, ContentSizeI, ""), + io:format("Headers: ~s~n", [Content]), + io:format("Data: ~s~n", [Data]), + received_command(Headers, Data). +receive_content(Socket) -> + receive_content_(0, "", Socket). -read(Message) -> - case Message of - {ok, M} -> - io:format("Message: ~n~n~s~n", [M]), - HeaderList = string:tokens(M, "\n"), - Headers = extract_headers(HeaderList), - Data = extract_data(HeaderList), - io:format("Data: ~s~n", [Data]), - received_command(Headers, Data) +receive_content_(Amount, Headers, Socket) -> + {ok, Char1} = gen_tcp:recv(Socket, 1), + case Char1 of + "\n" -> case Amount of + 1 -> Headers; + _ -> receive_content_(Amount + 1, + Headers ++ Char1, + Socket) + end; + _ -> receive_content_(0, Headers ++ Char1, Socket) end. + +receive_data(_, 0, Headers) -> + Headers; +receive_data(Socket, ContentSize, Headers) -> + {ok, Char} = gen_tcp:recv(Socket, 1), + receive_data(Socket, ContentSize - 1, Headers ++ Char). received_command(Headers, Data) -> {ok, CommandList} = dict:find("Client-Command", Headers), Command = lists:nth(1, CommandList), case Command of "hello" -> + io:format("Set game token~n"), pong_bot:set_game_token(Data), send_command("ready", ""); "defined" -> @@ -33,7 +53,9 @@ received_command(Headers, Data) -> end. make_message(ServerOrGame, Command, Args) -> + io:format("Before fetch gametoken~n"), GameToken = pong_bot:get_game_token(), + io:format("After fetch gametoken~n"), StrGameToken = string:concat("Token: ", GameToken), StrGameTokenln = string:concat(StrGameToken, "\n"), StrCommand = string:concat("-Command: ", Command), @@ -65,20 +87,21 @@ list_concat([E|ES],Ret) -> extract_headers(Source) -> - key_value_strings_to_dict(Source). + HeaderList = string:tokens(Source, "\n"), + key_value_strings_to_dict(HeaderList). -extract_data([]) -> - []; -extract_data([E|ES]) -> - io:format("~n~s~n", [E]), - KeyValueList = key_value_string_to_list(E), - case length(KeyValueList) of - 2 -> - extract_data(ES); - _ -> - E - end. +%extract_data([]) -> +% []; +%extract_data([E|ES]) -> +% io:format("~n~s~n~n~n~n", [E]), +% KeyValueList = key_value_string_to_list(E), +% case length(KeyValueList) of +% 2 -> +% extract_data(ES); +% _ -> +% E +% end. %%%Low-level internals.%%% diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl index f5a81c4..42dc4cf 100644 --- a/games/pong_bot_e/pong_bot.erl +++ b/games/pong_bot_e/pong_bot.erl @@ -13,9 +13,13 @@ start_link() -> spawn(fun() -> game_loop() end ). communication_loop(Socket) -> - A = gen_tcp:recv(Socket, 0), - ggs_network:read(A), + ggs_network:read(Socket), communication_loop(Socket). + + + % A = gen_tcp:recv(Socket, 0), + % ggs_network:read(A), + %communication_loop(Socket). peek_socket() -> From f827795dd89412090c857dabd2f8bea030f9379c Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Wed, 20 Apr 2011 05:50:51 +0200 Subject: [PATCH 142/192] Game going, pads moving up. --- games/pong_bot_e/ggs_network.erl | 2 -- games/pong_bot_e/pong_bot.erl | 39 ++++++++++++++++++++------------ 2 files changed, 25 insertions(+), 16 deletions(-) diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index 4203498..dd9c7f9 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -53,9 +53,7 @@ received_command(Headers, Data) -> end. make_message(ServerOrGame, Command, Args) -> - io:format("Before fetch gametoken~n"), GameToken = pong_bot:get_game_token(), - io:format("After fetch gametoken~n"), StrGameToken = string:concat("Token: ", GameToken), StrGameTokenln = string:concat(StrGameToken, "\n"), StrCommand = string:concat("-Command: ", Command), diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl index 42dc4cf..1f9a89c 100644 --- a/games/pong_bot_e/pong_bot.erl +++ b/games/pong_bot_e/pong_bot.erl @@ -15,13 +15,8 @@ start_link() -> communication_loop(Socket) -> ggs_network:read(Socket), communication_loop(Socket). - - - % A = gen_tcp:recv(Socket, 0), - % ggs_network:read(A), - %communication_loop(Socket). - - + + peek_socket() -> gen_server:call({global, pong_bot}, socket). @@ -62,16 +57,18 @@ ggsNetworkReceivedCommandWithArgs(Command, Args) -> new_round(); "player2_points" -> new_round() - end. + end. welcome(Who_am_I) -> io:format("Welcome begin~n"), io:format("I am player: ~s~n", [Who_am_I]), case Who_am_I of "1" -> + io:format("I made myself into player 1~n"), Me = gen_server:call({global, pong_bot}, player1), gen_server:cast({global, pong_bot}, {me, Me}); "2" -> + io:format("I made myself into player 2~n"), Me = gen_server:call({global, pong_bot}, player2), gen_server:cast({global, pong_bot}, {me, Me}) end. @@ -91,6 +88,7 @@ gameTick() -> true -> case SendStart of false -> + io:format("Command start sent~n"), ggs_network:send_command("start", ""), gen_server:cast({global, pong_bot}, {start, true}); true -> @@ -114,20 +112,25 @@ gameTick() -> ball(Pos_s) -> + io:format("Ball~n"), PosList = string:tokens(Pos_s, ","), XStr = lists:nth(1,PosList), - YStr = lists:nth(1,PosList), - X = string:to_integer(XStr), - Y = string:to_integer(YStr), + YStr = lists:nth(2,PosList), + X = list_to_integer(XStr), + Y = list_to_integer(YStr), + io:format("X~B~n", [X]), + io:format("Y~B~n", [Y]), Pos = {X, Y}, gen_server:cast({global, pong_bot}, {ball, Pos}). player1_y(YStr) -> - Y = string:to_integer(YStr), + Y = list_to_integer(YStr), + io:format("Y in integer: ~B~n", [Y]), gen_server:cast({global, pong_bot}, {player1_y, Y}). player2_y(YStr) -> - Y = string:to_integer(YStr), + Y = list_to_integer(YStr), + io:format("Y in integer: ~B~n", [Y]), gen_server:cast({global, pong_bot}, {player2_y, Y}). game(WaitOrStart) -> @@ -170,7 +173,15 @@ handle_call(player1_y, _From, State) -> handle_call(player2_y, _From, State) -> {_,Y} = dict:fetch(player2, State), - {reply, Y, State}; + {reply, Y, State}; + +handle_call(ball, _From, State) -> + Ball = dict:fetch(ball, State), + {reply, Ball, State}; + +handle_call(me, _From, State) -> + Me = dict:fetch(me, State), + {reply, Me, State}; handle_call(game_token, _From, State) -> GameToken = dict:fetch(game_token, State), From c7b2d5e8c595363d38eb66019c0407c09bf8c4b5 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Wed, 20 Apr 2011 06:11:35 +0200 Subject: [PATCH 143/192] Bots playing a full round. --- games/pong_bot_e/pong_bot.erl | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl index 1f9a89c..03c9f47 100644 --- a/games/pong_bot_e/pong_bot.erl +++ b/games/pong_bot_e/pong_bot.erl @@ -56,7 +56,8 @@ ggsNetworkReceivedCommandWithArgs(Command, Args) -> "player1_points" -> new_round(); "player2_points" -> - new_round() + new_round(); + _ -> ok end. welcome(Who_am_I) -> @@ -103,8 +104,11 @@ gameTick() -> case BallY < (MeY - 5) of true -> ggs_network:send_command("up", ""); - false -> - ggs_network:send_command("down", "") + _ -> case BallY > ( MeY - 5) of + true -> + ggs_network:send_command("down", ""); + _ -> ok + end end end. @@ -233,7 +237,7 @@ handle_cast({paused, Paused}, State) -> NewState = dict:store(paused, Paused, State), {noreply, NewState}; -handle_cast({new_rouned, Paused, SendStart}, State) -> +handle_cast({new_round, Paused, SendStart}, State) -> State1 = dict:store(paused, Paused, State), NewState = dict:store(send_start, SendStart, State1), {noreply, NewState}; From 078ba9979e95046e9e3982fce1d21c0e455217ed Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Wed, 20 Apr 2011 06:23:56 +0200 Subject: [PATCH 144/192] The bots are playing infinitely. --- games/pong_bot_e/pong_bot.erl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl index 03c9f47..35a168e 100644 --- a/games/pong_bot_e/pong_bot.erl +++ b/games/pong_bot_e/pong_bot.erl @@ -148,8 +148,8 @@ game(WaitOrStart) -> new_round() -> Paused = true, - SendStart = false, - gen_server:cast({global, pong_bot}, {new_round, Paused, SendStart}). + Start = false, + gen_server:cast({global, pong_bot}, {new_round, Paused, Start}). set_game_token(GameToken) -> @@ -237,9 +237,9 @@ handle_cast({paused, Paused}, State) -> NewState = dict:store(paused, Paused, State), {noreply, NewState}; -handle_cast({new_round, Paused, SendStart}, State) -> +handle_cast({new_round, Paused, Start}, State) -> State1 = dict:store(paused, Paused, State), - NewState = dict:store(send_start, SendStart, State1), + NewState = dict:store(start, Start, State1), {noreply, NewState}; handle_cast({start, Start}, State) -> From c8e6bebce740e6ed9583682b1af554269defca1e Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Wed, 20 Apr 2011 06:29:15 +0200 Subject: [PATCH 145/192] Unnecessary comments removed. Tcp comments are left to verify program correctness --- games/pong_bot_e/ggs_network.erl | 16 ---------------- games/pong_bot_e/pong_bot.erl | 15 --------------- 2 files changed, 31 deletions(-) diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index dd9c7f9..cfa4a8e 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -42,11 +42,9 @@ received_command(Headers, Data) -> Command = lists:nth(1, CommandList), case Command of "hello" -> - io:format("Set game token~n"), pong_bot:set_game_token(Data), send_command("ready", ""); "defined" -> - io:format("Defined~n"), ok; Command -> pong_bot:ggsNetworkReceivedCommandWithArgs(Command, Data) @@ -88,20 +86,6 @@ extract_headers(Source) -> HeaderList = string:tokens(Source, "\n"), key_value_strings_to_dict(HeaderList). - -%extract_data([]) -> -% []; -%extract_data([E|ES]) -> -% io:format("~n~s~n~n~n~n", [E]), -% KeyValueList = key_value_string_to_list(E), -% case length(KeyValueList) of -% 2 -> -% extract_data(ES); -% _ -> -% E -% end. - - %%%Low-level internals.%%% diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl index 35a168e..f1d4225 100644 --- a/games/pong_bot_e/pong_bot.erl +++ b/games/pong_bot_e/pong_bot.erl @@ -61,15 +61,11 @@ ggsNetworkReceivedCommandWithArgs(Command, Args) -> end. welcome(Who_am_I) -> - io:format("Welcome begin~n"), - io:format("I am player: ~s~n", [Who_am_I]), case Who_am_I of "1" -> - io:format("I made myself into player 1~n"), Me = gen_server:call({global, pong_bot}, player1), gen_server:cast({global, pong_bot}, {me, Me}); "2" -> - io:format("I made myself into player 2~n"), Me = gen_server:call({global, pong_bot}, player2), gen_server:cast({global, pong_bot}, {me, Me}) end. @@ -89,7 +85,6 @@ gameTick() -> true -> case SendStart of false -> - io:format("Command start sent~n"), ggs_network:send_command("start", ""), gen_server:cast({global, pong_bot}, {start, true}); true -> @@ -116,25 +111,20 @@ gameTick() -> ball(Pos_s) -> - io:format("Ball~n"), PosList = string:tokens(Pos_s, ","), XStr = lists:nth(1,PosList), YStr = lists:nth(2,PosList), X = list_to_integer(XStr), Y = list_to_integer(YStr), - io:format("X~B~n", [X]), - io:format("Y~B~n", [Y]), Pos = {X, Y}, gen_server:cast({global, pong_bot}, {ball, Pos}). player1_y(YStr) -> Y = list_to_integer(YStr), - io:format("Y in integer: ~B~n", [Y]), gen_server:cast({global, pong_bot}, {player1_y, Y}). player2_y(YStr) -> Y = list_to_integer(YStr), - io:format("Y in integer: ~B~n", [Y]), gen_server:cast({global, pong_bot}, {player2_y, Y}). game(WaitOrStart) -> @@ -162,9 +152,7 @@ view() -> gen_server:call({global, pong_bot}, game_token). handle_call(player1, _From, State) -> - io:format("Player1 before~n"), Player1 = dict:fetch(player1, State), - io:format("Player1 after~n"), {reply, Player1, State}; handle_call(player2, _From, State) -> @@ -192,13 +180,10 @@ handle_call(game_token, _From, State) -> {reply, GameToken, State}; handle_call(view, _From, State) -> - io:format("View the state.~n"), -% StateFromList = lists:nth(1, State) {reply, State, State}; handle_call(socket, _From, State) -> Socket = dict:fetch(socket, State), - %Socket = lists:nth(1, SocketInList), {reply, Socket, State}; handle_call(paused, _From, State) -> From 762698945d4ec9e781409cf1211fb8d4e50888a1 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Wed, 20 Apr 2011 15:35:51 +0200 Subject: [PATCH 146/192] Start multiple times on same terminal --- games/pong_bot_e/ggs_network.erl | 32 +++++---- games/pong_bot_e/pong_bot.erl | 107 +++++++++++++++---------------- 2 files changed, 68 insertions(+), 71 deletions(-) diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index cfa4a8e..343465f 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -1,20 +1,20 @@ -module(ggs_network). -export([connect/0,append_key_value_strings_to_dict/2,key_value_string_to_list/1]). --export([read/1, send_command/2]). +-export([read/2, send_command/3]). connect() -> {ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]), Socket. -read(Socket) -> +read(Socket, Ref) -> Content = receive_content(Socket), Headers = extract_headers(Content), ContentSize = dict:fetch("Content-Size", Headers), ContentSizeI = list_to_integer(lists:nth(1, ContentSize)), Data = receive_data(Socket, ContentSizeI, ""), - io:format("Headers: ~s~n", [Content]), - io:format("Data: ~s~n", [Data]), - received_command(Headers, Data). + %io:format("Headers: ~s~n", [Content]), + %io:format("Data: ~s~n", [Data]), + received_command(Headers, Data, Ref). receive_content(Socket) -> receive_content_(0, "", Socket). @@ -37,21 +37,21 @@ receive_data(Socket, ContentSize, Headers) -> {ok, Char} = gen_tcp:recv(Socket, 1), receive_data(Socket, ContentSize - 1, Headers ++ Char). -received_command(Headers, Data) -> +received_command(Headers, Data, Ref) -> {ok, CommandList} = dict:find("Client-Command", Headers), Command = lists:nth(1, CommandList), case Command of "hello" -> - pong_bot:set_game_token(Data), - send_command("ready", ""); + pong_bot:set_game_token(Data, Ref), + send_command("ready", "", Ref); "defined" -> ok; Command -> - pong_bot:ggsNetworkReceivedCommandWithArgs(Command, Data) + pong_bot:ggsNetworkReceivedCommandWithArgs(Command, Data, Ref) end. -make_message(ServerOrGame, Command, Args) -> - GameToken = pong_bot:get_game_token(), +make_message(ServerOrGame, Command, Args, Ref) -> + GameToken = pong_bot:get_game_token(Ref), StrGameToken = string:concat("Token: ", GameToken), StrGameTokenln = string:concat(StrGameToken, "\n"), StrCommand = string:concat("-Command: ", Command), @@ -64,11 +64,11 @@ make_message(ServerOrGame, Command, Args) -> MessageWithArgs = string:concat(Message, list_concat(Args,[])), MessageWithArgs. -send_command(Command, Args) -> - write(make_message("Game", Command, Args)). +send_command(Command, Args, Ref) -> + write(make_message("Game", Command, Args, Ref), Ref). -write(Message) -> - Socket = gen_server:call({global, pong_bot}, socket), +write(Message, Ref) -> + Socket = gen_server:call({global, {pong_bot, Ref}}, socket), gen_tcp:send(Socket, Message). list_concat([],Ret) -> @@ -76,8 +76,6 @@ list_concat([],Ret) -> list_concat([E|ES],Ret) -> NewRet = string:concat(Ret,E), list_concat(ES,NewRet). - - %%%Packet parsing.%%% diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl index f1d4225..cdf4af9 100644 --- a/games/pong_bot_e/pong_bot.erl +++ b/games/pong_bot_e/pong_bot.erl @@ -2,23 +2,24 @@ -behaviour(gen_server). -export([start_link/0]). -export([init/1, handle_call/3, handle_cast/2]). --export([ggsNetworkReceivedCommandWithArgs/2,set_game_token/1,get_game_token/0]). --export([view/0, peek_socket/0]). +-export([ggsNetworkReceivedCommandWithArgs/3,set_game_token/2,get_game_token/1]). +-export([view/1, peek_socket/1]). start_link() -> - gen_server:start_link({global, pong_bot}, pong_bot, [], []), - Socket = peek_socket(), - spawn(fun() -> communication_loop(Socket) end), - spawn(fun() -> game_loop() end ). + Ref = make_ref(), + gen_server:start_link({global, {pong_bot, Ref}}, pong_bot, [], []), + Socket = peek_socket(Ref), + spawn(fun() -> communication_loop(Socket, Ref) end), + spawn(fun() -> game_loop(Ref) end ). -communication_loop(Socket) -> - ggs_network:read(Socket), - communication_loop(Socket). +communication_loop(Socket, Ref) -> + ggs_network:read(Socket, Ref), + communication_loop(Socket, Ref). -peek_socket() -> - gen_server:call({global, pong_bot}, socket). +peek_socket(Ref) -> + gen_server:call({global, {pong_bot, Ref}}, socket). init(_Args) -> @@ -41,115 +42,113 @@ new_pos() -> {0, 0}. -ggsNetworkReceivedCommandWithArgs(Command, Args) -> +ggsNetworkReceivedCommandWithArgs(Command, Args, Ref) -> case Command of "welcome" -> - welcome(Args); + welcome(Args, Ref); "ball" -> - ball(Args); + ball(Args, Ref); "player1_y" -> - player1_y(Args); + player1_y(Args, Ref); "player2_y" -> - player2_y(Args); + player2_y(Args, Ref); "game" -> - game(Args); + game(Args, Ref); "player1_points" -> - new_round(); + new_round(Ref); "player2_points" -> - new_round(); + new_round(Ref); _ -> ok end. -welcome(Who_am_I) -> +welcome(Who_am_I, Ref) -> case Who_am_I of "1" -> - Me = gen_server:call({global, pong_bot}, player1), - gen_server:cast({global, pong_bot}, {me, Me}); + Me = gen_server:call({global, {pong_bot, Ref}}, player1), + gen_server:cast({global, {pong_bot, Ref}}, {me, Me}); "2" -> - Me = gen_server:call({global, pong_bot}, player2), - gen_server:cast({global, pong_bot}, {me, Me}) + Me = gen_server:call({global, {pong_bot, Ref}}, player2), + gen_server:cast({global, {pong_bot, Ref}}, {me, Me}) end. -game_loop() -> +game_loop(Ref) -> timer:sleep(300), - gameTick(), - game_loop(). + gameTick(Ref), + game_loop(Ref). -gameTick() -> - GamePaused = gen_server:call({global, pong_bot}, paused), - SendStart = gen_server:call({global, pong_bot}, start), +gameTick(Ref) -> + GamePaused = gen_server:call({global, {pong_bot, Ref}}, paused), + SendStart = gen_server:call({global, {pong_bot, Ref}}, start), case GamePaused of true -> case SendStart of false -> - ggs_network:send_command("start", ""), - gen_server:cast({global, pong_bot}, {start, true}); + ggs_network:send_command("start", "", Ref), + gen_server:cast({global, {pong_bot, Ref}}, {start, true}); true -> ok end; false -> - Ball = gen_server:call({global, pong_bot}, ball), + Ball = gen_server:call({global, {pong_bot, Ref}}, ball), {_, BallY} = Ball, - Me = gen_server:call({global, pong_bot}, me), + Me = gen_server:call({global, {pong_bot, Ref}}, me), {_, MeY} = Me, case BallY < (MeY - 5) of true -> - ggs_network:send_command("up", ""); + ggs_network:send_command("up", "", Ref); _ -> case BallY > ( MeY - 5) of true -> - ggs_network:send_command("down", ""); + ggs_network:send_command("down", "", Ref); _ -> ok end end end. - - -ball(Pos_s) -> +ball(Pos_s, Ref) -> PosList = string:tokens(Pos_s, ","), XStr = lists:nth(1,PosList), YStr = lists:nth(2,PosList), X = list_to_integer(XStr), Y = list_to_integer(YStr), Pos = {X, Y}, - gen_server:cast({global, pong_bot}, {ball, Pos}). + gen_server:cast({global, {pong_bot, Ref}}, {ball, Pos}). -player1_y(YStr) -> +player1_y(YStr, Ref) -> Y = list_to_integer(YStr), - gen_server:cast({global, pong_bot}, {player1_y, Y}). + gen_server:cast({global, {pong_bot, Ref}}, {player1_y, Y}). -player2_y(YStr) -> +player2_y(YStr, Ref) -> Y = list_to_integer(YStr), - gen_server:cast({global, pong_bot}, {player2_y, Y}). + gen_server:cast({global, {pong_bot, Ref}}, {player2_y, Y}). -game(WaitOrStart) -> +game(WaitOrStart, Ref) -> case WaitOrStart of "wait" -> ok; _ -> - gen_server:cast({global, pong_bot}, {paused, false}) + gen_server:cast({global, {pong_bot, Ref}}, {paused, false}) end. -new_round() -> +new_round(Ref) -> Paused = true, Start = false, - gen_server:cast({global, pong_bot}, {new_round, Paused, Start}). + gen_server:cast({global, {pong_bot, Ref}}, {new_round, Paused, Start}). -set_game_token(GameToken) -> - gen_server:cast({global, pong_bot}, {game_token, GameToken}). +set_game_token(GameToken, Ref) -> + gen_server:cast({global, {pong_bot, Ref}}, {game_token, GameToken}). -get_game_token() -> - gen_server:call({global, pong_bot}, game_token). +get_game_token(Ref) -> + gen_server:call({global, {pong_bot, Ref}}, game_token). -view() -> - gen_server:call({global, pong_bot}, game_token). +view(Ref) -> + gen_server:call({global, {pong_bot, Ref}}, game_token). handle_call(player1, _From, State) -> Player1 = dict:fetch(player1, State), From 2059bc72825297782785c8831158cd834fd8da6d Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Wed, 20 Apr 2011 16:10:59 +0200 Subject: [PATCH 147/192] Added pong_bot:start(N) to start N games. --- games/pong_bot_e/pong_bot.erl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl index cdf4af9..585022c 100644 --- a/games/pong_bot_e/pong_bot.erl +++ b/games/pong_bot_e/pong_bot.erl @@ -1,10 +1,16 @@ -module(pong_bot). -behaviour(gen_server). --export([start_link/0]). +-export([start/1, start_link/0]). -export([init/1, handle_call/3, handle_cast/2]). -export([ggsNetworkReceivedCommandWithArgs/3,set_game_token/2,get_game_token/1]). -export([view/1, peek_socket/1]). +start(0) -> + ok; +start(N) -> + start_link(), + timer:sleep(50), + start(N - 1). start_link() -> Ref = make_ref(), From 492ec949a3e723e54a9eea620de896e6653c2861 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Tue, 26 Apr 2011 13:59:30 +0200 Subject: [PATCH 148/192] start_ggs:start now also starts ggs_stats. --- src/start_ggs.erl | 1 + 1 file changed, 1 insertion(+) diff --git a/src/start_ggs.erl b/src/start_ggs.erl index 3f2f23b..161d20e 100644 --- a/src/start_ggs.erl +++ b/src/start_ggs.erl @@ -4,5 +4,6 @@ start() -> application:start(inets), application:start(erlang_js), + ggs_stats:start_link(), ggs_db:init(), application:start(ggs). From 3a2a95855d838b5354a31c9e6c0ddf06232a6d79 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 26 Apr 2011 14:11:18 +0200 Subject: [PATCH 149/192] added stats module --- doc/report | 2 +- games/pong_bot_e/ggs_network.erl | 2 +- src/ggs_player.erl | 1 + src/ggs_stats.erl | 47 ++++++++++++++++++++++++++++++++ 4 files changed, 50 insertions(+), 2 deletions(-) create mode 100644 src/ggs_stats.erl diff --git a/doc/report b/doc/report index 030e0ec..0031285 160000 --- a/doc/report +++ b/doc/report @@ -1 +1 @@ -Subproject commit 030e0ecafff27fff8e6918add47dfcdeec363e7c +Subproject commit 00312859714bef6e9a4fdb9931a41fef56eeb89a diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index 343465f..f108c23 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -3,7 +3,7 @@ -export([read/2, send_command/3]). connect() -> - {ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]), + {ok,Socket} = gen_tcp:connect("ggs.jeena.net", 9000,[{active, false}]), Socket. read(Socket, Ref) -> diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 2e07527..a9c898b 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -111,6 +111,7 @@ handle_cast({srv_cmd, "define", _Headers, Data}, #state { table = Table } = Stat {noreply, State}; handle_cast({game_cmd, Command, _Headers, Data}, #state { table = Table } = State) -> + ggs_stats:message(), ggs_table:notify(Table, self(), {game, Command, Data}), {noreply, State}; diff --git a/src/ggs_stats.erl b/src/ggs_stats.erl new file mode 100644 index 0000000..c3a94b6 --- /dev/null +++ b/src/ggs_stats.erl @@ -0,0 +1,47 @@ +-module(ggs_stats). +-export([start_link/0, message/0, print/0, tick/0]). +-behaviour(gen_server). +-export([init/1, handle_call/3, handle_cast/2, handle_info/2, + terminate/2, code_change/3]). +-vsn(0). + +-record(ate, { count = 0 }). +-define(SERVER, ?MODULE). + +message() -> + gen_server:cast(ggs_stats, add_one). + +print() -> + gen_server:cast(ggs_stats, print). + +tick() -> + print(), + gen_server:cast(ggs_stats, tick), + timer:apply_after(1000, ggs_stats, tick, []). + +start_link() -> + gen_server:start_link({local, ?SERVER}, ?MODULE, [0], []). + + +init([Count]) -> + St = #ate{ count = Count }, + {ok, St}. + +handle_cast(add_one, St) -> + NewSt = #ate { count = St#ate.count + 1}, + {noreply, NewSt}; + +handle_cast(print, St) -> + erlang:display(St#ate.count), + {noreply, St}; + +handle_cast(tick, _St) -> + NewSt = #ate { count = 0 }, + {noreply, NewSt}. + + + +handle_call(_Request, _From, St) -> {stop, unimplemented, St}. +handle_info(_Info, St) -> {stop, unimplemented, St}. +terminate(_Reason, _St) -> ok. +code_change(_OldVsn, St, _Extra) -> {ok, St}. From 28ef543265cccadbdd4f7c91f01c961bc04c4f59 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 26 Apr 2011 14:13:45 +0200 Subject: [PATCH 150/192] moved stats to protocol for message --- src/ggs_player.erl | 1 - src/ggs_protocol.erl | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/ggs_player.erl b/src/ggs_player.erl index a9c898b..2e07527 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -111,7 +111,6 @@ handle_cast({srv_cmd, "define", _Headers, Data}, #state { table = Table } = Stat {noreply, State}; handle_cast({game_cmd, Command, _Headers, Data}, #state { table = Table } = State) -> - ggs_stats:message(), ggs_table:notify(Table, self(), {game, Command, Data}), {noreply, State}; diff --git a/src/ggs_protocol.erl b/src/ggs_protocol.erl index 92b7362..a0f68a3 100644 --- a/src/ggs_protocol.erl +++ b/src/ggs_protocol.erl @@ -43,6 +43,7 @@ create_message({Command, Data}) -> %% Assemble a message which can b %e used as a reply to a client create_message(Cmd, Enc, Acc, Data) -> + ggs_stats:message(), Length = integer_to_list(string:len(Data)), Msg = "Client-Command: " ++ Cmd ++ "\n" ++ "Client-Encoding: " ++ Enc ++ "\n" ++ @@ -109,6 +110,7 @@ code_change(_OldVsn, State, _Extra) -> prettify(Args, Data) -> + ggs_stats:message(), case lists:keyfind("Server-Command", 1, Args) of {_, Value} -> {srv_cmd, Value, Args, Data}; From f8b383232b70fed22ef95a4397aa1fec9e5319d8 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Tue, 26 Apr 2011 16:13:56 +0200 Subject: [PATCH 151/192] players are actually doing something --- games/pong_bot_e/ggs_network.erl | 1 + games/pong_bot_e/pong_bot.erl | 42 ++++++++++++++++++++++---------- 2 files changed, 30 insertions(+), 13 deletions(-) diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index 343465f..b2506cb 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -3,6 +3,7 @@ -export([read/2, send_command/3]). connect() -> + %{ok,Socket} = gen_tcp:connect("ggs.jeena.net", 9000,[{active, false}]), {ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]), Socket. diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl index 585022c..48c2104 100644 --- a/games/pong_bot_e/pong_bot.erl +++ b/games/pong_bot_e/pong_bot.erl @@ -68,14 +68,15 @@ ggsNetworkReceivedCommandWithArgs(Command, Args, Ref) -> end. welcome(Who_am_I, Ref) -> - case Who_am_I of - "1" -> - Me = gen_server:call({global, {pong_bot, Ref}}, player1), - gen_server:cast({global, {pong_bot, Ref}}, {me, Me}); - "2" -> - Me = gen_server:call({global, {pong_bot, Ref}}, player2), - gen_server:cast({global, {pong_bot, Ref}}, {me, Me}) - end. + gen_server:cast({global, {pong_bot, Ref}}, {me, Who_am_I}). + %case Who_am_I of + % "1" -> + % Me = gen_server:call({global, {pong_bot, Ref}}, player1), + % gen_server:cast({global, {pong_bot, Ref}}, {me, Me}); + % "2" -> + % Me = gen_server:call({global, {pong_bot, Ref}}, player2), + % gen_server:cast({global, {pong_bot, Ref}}, {me, Me}) + %end. @@ -101,14 +102,27 @@ gameTick(Ref) -> Ball = gen_server:call({global, {pong_bot, Ref}}, ball), {_, BallY} = Ball, Me = gen_server:call({global, {pong_bot, Ref}}, me), - {_, MeY} = Me, + case Me of + "1" -> + PlayerMe = gen_server:call({global, {pong_bot, Ref}}, player1); + "2" -> + PlayerMe = gen_server:call({global, {pong_bot, Ref}}, player2) + end, + + {_, MeY} = PlayerMe, - case BallY < (MeY - 5) of + case ((BallY - MeY) < 0) of true -> - ggs_network:send_command("up", "", Ref); - _ -> case BallY > ( MeY - 5) of + ggs_network:send_command("up", "", Ref), + io:format("Player down sent to server~n"), + io:format("Ball: ~B~n", [BallY]), + io:format("Player: ~B~n", [MeY]); + _ -> case ((BallY - MeY) > 0) of true -> - ggs_network:send_command("down", "", Ref); + ggs_network:send_command("down", "", Ref), + io:format("Player up sent to server~n"), + io:format("Ball: ~B~n", [BallY]), + io:format("Player: ~B~n", [MeY]); _ -> ok end end @@ -126,10 +140,12 @@ ball(Pos_s, Ref) -> player1_y(YStr, Ref) -> Y = list_to_integer(YStr), + io:format("Player1_y~n~n~n~n"), gen_server:cast({global, {pong_bot, Ref}}, {player1_y, Y}). player2_y(YStr, Ref) -> Y = list_to_integer(YStr), + io:format("Player2_y~n~n~n~n"), gen_server:cast({global, {pong_bot, Ref}}, {player2_y, Y}). game(WaitOrStart, Ref) -> From 68e97023c61d0d79d4d7a163a76c6ec3088fcb8a Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Tue, 26 Apr 2011 16:28:44 +0200 Subject: [PATCH 152/192] pong_bots smarter and starting with ggs.jeena.net --- games/pong_bot_e/ggs_network.erl | 4 ++-- games/pong_bot_e/pong_bot.erl | 22 ++++++++++++---------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index b2506cb..c97c776 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -3,8 +3,8 @@ -export([read/2, send_command/3]). connect() -> - %{ok,Socket} = gen_tcp:connect("ggs.jeena.net", 9000,[{active, false}]), - {ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]), + {ok,Socket} = gen_tcp:connect("ggs.jeena.net", 9000,[{active, false}]), + %{ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]), Socket. read(Socket, Ref) -> diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl index 48c2104..4006303 100644 --- a/games/pong_bot_e/pong_bot.erl +++ b/games/pong_bot_e/pong_bot.erl @@ -61,8 +61,10 @@ ggsNetworkReceivedCommandWithArgs(Command, Args, Ref) -> "game" -> game(Args, Ref); "player1_points" -> + %io:format("Player1 win~n"), new_round(Ref); "player2_points" -> + %io:format("Player2 win~n"), new_round(Ref); _ -> ok end. @@ -113,16 +115,16 @@ gameTick(Ref) -> case ((BallY - MeY) < 0) of true -> - ggs_network:send_command("up", "", Ref), - io:format("Player down sent to server~n"), - io:format("Ball: ~B~n", [BallY]), - io:format("Player: ~B~n", [MeY]); + ggs_network:send_command("up", "", Ref); + %io:format("Player down sent to server~n"), + %io:format("Ball: ~B~n", [BallY]), + %io:format("Player: ~B~n", [MeY]); _ -> case ((BallY - MeY) > 0) of true -> - ggs_network:send_command("down", "", Ref), - io:format("Player up sent to server~n"), - io:format("Ball: ~B~n", [BallY]), - io:format("Player: ~B~n", [MeY]); + ggs_network:send_command("down", "", Ref); + %io:format("Player up sent to server~n"), + %io:format("Ball: ~B~n", [BallY]), + %io:format("Player: ~B~n", [MeY]); _ -> ok end end @@ -140,12 +142,12 @@ ball(Pos_s, Ref) -> player1_y(YStr, Ref) -> Y = list_to_integer(YStr), - io:format("Player1_y~n~n~n~n"), + %io:format("Player1_y~n~n~n~n"), gen_server:cast({global, {pong_bot, Ref}}, {player1_y, Y}). player2_y(YStr, Ref) -> Y = list_to_integer(YStr), - io:format("Player2_y~n~n~n~n"), + %io:format("Player2_y~n~n~n~n"), gen_server:cast({global, {pong_bot, Ref}}, {player2_y, Y}). game(WaitOrStart, Ref) -> From f705aa40b91200803b0598d83d005aea23fa1863 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 26 Apr 2011 16:55:48 +0200 Subject: [PATCH 153/192] added different stats messages --- games/Pong/Classes/GGSNetwork.m | 2 +- .../UserInterfaceState.xcuserstate | 726 +++++++++--------- src/ggs_protocol.erl | 6 +- src/ggs_stats.erl | 33 +- 4 files changed, 392 insertions(+), 375 deletions(-) diff --git a/games/Pong/Classes/GGSNetwork.m b/games/Pong/Classes/GGSNetwork.m index 32f53f0..45e7719 100644 --- a/games/Pong/Classes/GGSNetwork.m +++ b/games/Pong/Classes/GGSNetwork.m @@ -11,7 +11,7 @@ @implementation GGSNetwork -#define GGS_HOST @"localhost" +#define GGS_HOST @"ggs.jeena.net" #define GGS_PORT 9000 #define NO_TIMEOUT -1 diff --git a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate index f79dc54..03c6390 100644 --- a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate +++ b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate @@ -11,7 +11,7 @@ $class CF$UID - 183 + 184 NS.keys @@ -213,11 +213,11 @@ CF$UID - 50 + 54 CF$UID - 54 + 58 CF$UID @@ -517,25 +517,6 @@ 41 NS.keys - - - CF$UID - 34 - - - CF$UID - 35 - - - CF$UID - 36 - - - CF$UID - 37 - - - NS.objects CF$UID @@ -545,42 +526,13 @@ CF$UID 48 - - CF$UID - 15 - CF$UID 49 - - - 324402616.78700799 - {0, 678} - {207, 0} - - $class - - CF$UID - 41 - - NS.keys - CF$UID - 34 - - - CF$UID - 35 - - - CF$UID - 36 - - - CF$UID - 37 + 50 NS.objects @@ -603,6 +555,58 @@ + PrimaryDocumentTimestamp + PrimaryDocumentVisibleCharacterRange + HideAllIssues + PrimaryDocumentSelectedCharacterRange + 325520518.22232997 + {0, 682} + {211, 0} + + $class + + CF$UID + 41 + + NS.keys + + + CF$UID + 34 + + + CF$UID + 35 + + + CF$UID + 36 + + + CF$UID + 37 + + + NS.objects + + + CF$UID + 55 + + + CF$UID + 56 + + + CF$UID + 15 + + + CF$UID + 57 + + + 324400740.10611397 {0, 531} {0, 0} @@ -616,19 +620,19 @@ CF$UID - 55 + 34 CF$UID - 56 + 35 CF$UID - 57 + 36 CF$UID - 58 + 37 NS.objects @@ -647,14 +651,10 @@ CF$UID - 53 + 57 - PrimaryDocumentTimestamp - PrimaryDocumentVisibleCharacterRange - HideAllIssues - PrimaryDocumentSelectedCharacterRange 324347076.57831001 {328, 2297} @@ -667,19 +667,19 @@ CF$UID - 55 + 34 CF$UID - 56 + 35 CF$UID - 57 + 36 CF$UID - 58 + 37 NS.objects @@ -698,7 +698,7 @@ CF$UID - 53 + 57 @@ -1059,7 +1059,7 @@ 102 NS.time - 324402614.75854403 + 325520486.09508002 $classes @@ -1070,7 +1070,7 @@ $classname NSDate - Today at 17:50 + Today at 16:21 $classes @@ -1280,11 +1280,11 @@ CF$UID - 296 + 298 CF$UID - 146 + 138 CF$UID @@ -1292,7 +1292,7 @@ CF$UID - 297 + 299 CF$UID @@ -1355,23 +1355,23 @@ CF$UID - 146 + 138 CF$UID - 64 + 139 CF$UID - 240 + 241 CF$UID - 247 + 248 CF$UID - 286 + 289 CF$UID @@ -1379,18 +1379,20 @@ CF$UID - 295 + 64 - IDEEditorArea + IDETabLabel IDEShowNavigator - AssistantEditorsLayout + IDEEditorArea IDEWorkspaceTabControllerUtilityAreaSplitView IDENavigatorArea IDEWorkspaceTabControllerDesignAreaSplitView IDEShowUtilities - IDETabLabel + AssistantEditorsLayout + GGSNetwork.m + $class @@ -1399,14 +1401,6 @@ NS.keys - - CF$UID - 138 - - - CF$UID - 139 - CF$UID 140 @@ -1431,9 +1425,6 @@ CF$UID 145 - - NS.objects - CF$UID 146 @@ -1442,13 +1433,24 @@ CF$UID 147 + + NS.objects + CF$UID - 190 + 138 CF$UID - 146 + 148 + + + CF$UID + 191 + + + CF$UID + 138 CF$UID @@ -1456,16 +1458,16 @@ CF$UID - 219 - - - CF$UID - 227 + 220 CF$UID 228 + + CF$UID + 229 + ShowDebuggerArea @@ -1476,7 +1478,6 @@ DebuggerSplitView DefaultPersistentRepresentations layoutTree - $class @@ -1487,14 +1488,14 @@ CF$UID - 148 + 149 NS.objects CF$UID - 149 + 150 @@ -1509,14 +1510,14 @@ CF$UID - 150 + 151 NS.objects CF$UID - 151 + 152 @@ -1525,14 +1526,10 @@ $class CF$UID - 183 + 184 NS.keys - - CF$UID - 152 - CF$UID 153 @@ -1541,12 +1538,16 @@ CF$UID 154 + + CF$UID + 155 + NS.objects CF$UID - 155 + 156 CF$UID @@ -1554,7 +1555,7 @@ CF$UID - 188 + 189 @@ -1565,13 +1566,13 @@ $class CF$UID - 175 + 176 NS.objects CF$UID - 156 + 157 @@ -1583,10 +1584,6 @@ NS.keys - - CF$UID - 157 - CF$UID 158 @@ -1611,37 +1608,41 @@ CF$UID 163 - - NS.objects - CF$UID 164 + + NS.objects + CF$UID 165 CF$UID - 179 + 166 CF$UID - 184 - - - CF$UID - 169 + 180 CF$UID 185 + + CF$UID + 170 + CF$UID 186 + + CF$UID + 187 + FileDataType @@ -1656,22 +1657,22 @@ $class CF$UID - 178 + 179 DocumentLocation CF$UID - 176 + 177 DomainIdentifier CF$UID - 166 + 167 IdentifierPath CF$UID - 167 + 168 IndexOfDocumentIdentifier @@ -1684,21 +1685,21 @@ $class CF$UID - 175 + 176 NS.objects CF$UID - 168 + 169 CF$UID - 171 + 172 CF$UID - 173 + 174 @@ -1706,12 +1707,12 @@ $class CF$UID - 170 + 171 Identifier CF$UID - 169 + 170 GGSNetwork.m @@ -1728,12 +1729,12 @@ $class CF$UID - 170 + 171 Identifier CF$UID - 172 + 173 Classes @@ -1741,12 +1742,12 @@ $class CF$UID - 170 + 171 Identifier CF$UID - 174 + 175 Pong @@ -1763,7 +1764,7 @@ $class CF$UID - 177 + 178 documentURL @@ -1798,36 +1799,36 @@ $class CF$UID - 183 + 184 NS.keys CF$UID - 34 + 47 CF$UID - 35 + 48 CF$UID - 36 + 49 CF$UID - 37 + 50 NS.objects CF$UID - 180 + 181 CF$UID - 181 + 182 CF$UID @@ -1835,13 +1836,13 @@ CF$UID - 182 + 183 - 324402616.78781998 - {0, 678} - {207, 0} + 325520518.22270298 + {0, 682} + {211, 0} $classes @@ -1867,7 +1868,7 @@ NS.relative CF$UID - 187 + 188 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m @@ -1875,13 +1876,13 @@ $class CF$UID - 175 + 176 NS.objects CF$UID - 189 + 190 @@ -1894,10 +1895,6 @@ NS.keys - - CF$UID - 191 - CF$UID 192 @@ -1918,6 +1915,10 @@ CF$UID 196 + + CF$UID + 197 + NS.objects @@ -1927,11 +1928,11 @@ CF$UID - 197 + 198 CF$UID - 199 + 200 CF$UID @@ -1939,19 +1940,19 @@ CF$UID - 210 + 211 CF$UID - 216 + 217 LayoutFocusMode console - IDEDebuggerAreaSplitView - LayoutMode IDEDebugArea_SplitView + LayoutMode + IDEDebuggerAreaSplitView variables $class @@ -1963,7 +1964,7 @@ CF$UID - 198 + 199 NS.objects @@ -1985,14 +1986,14 @@ CF$UID - 200 + 201 NS.objects CF$UID - 201 + 202 @@ -2007,11 +2008,11 @@ CF$UID - 202 + 203 CF$UID - 207 + 208 @@ -2019,28 +2020,28 @@ $class CF$UID - 183 + 184 NS.keys CF$UID - 203 + 204 CF$UID - 204 + 205 NS.objects CF$UID - 205 + 206 CF$UID - 206 + 207 @@ -2052,28 +2053,28 @@ $class CF$UID - 183 + 184 NS.keys CF$UID - 203 + 204 CF$UID - 204 + 205 NS.objects CF$UID - 208 + 209 CF$UID - 209 + 210 @@ -2089,14 +2090,14 @@ CF$UID - 200 + 201 NS.objects CF$UID - 211 + 212 @@ -2110,11 +2111,11 @@ CF$UID - 212 + 213 CF$UID - 214 + 215 @@ -2122,28 +2123,28 @@ $class CF$UID - 183 + 184 NS.keys CF$UID - 203 + 204 CF$UID - 204 + 205 NS.objects CF$UID - 205 + 206 CF$UID - 213 + 214 @@ -2152,28 +2153,28 @@ $class CF$UID - 183 + 184 NS.keys CF$UID - 203 + 204 CF$UID - 204 + 205 NS.objects CF$UID - 208 + 209 CF$UID - 215 + 216 @@ -2188,14 +2189,14 @@ CF$UID - 217 + 218 NS.objects CF$UID - 218 + 219 @@ -2211,14 +2212,14 @@ CF$UID - 200 + 201 NS.objects CF$UID - 220 + 221 @@ -2232,11 +2233,11 @@ CF$UID - 221 + 222 CF$UID - 224 + 225 @@ -2244,28 +2245,28 @@ $class CF$UID - 183 + 184 NS.keys CF$UID - 203 + 204 CF$UID - 204 + 205 NS.objects CF$UID - 222 + 223 CF$UID - 223 + 224 @@ -2275,33 +2276,33 @@ $class CF$UID - 183 + 184 NS.keys CF$UID - 203 + 204 CF$UID - 204 + 205 NS.objects CF$UID - 225 + 226 CF$UID - 226 + 227 IDEDebuggerArea - 224 + 202 $class @@ -2317,7 +2318,7 @@ $class CF$UID - 239 + 240 geniusEditorContextNode @@ -2327,19 +2328,19 @@ primaryEditorContextNode CF$UID - 229 + 230 rootLayoutTreeNode CF$UID - 236 + 237 $class CF$UID - 238 + 239 children @@ -2351,36 +2352,36 @@ documentArchivableRepresentation CF$UID - 230 + 231 orientation 0 parent CF$UID - 236 + 237 $class CF$UID - 178 + 179 DocumentLocation CF$UID - 176 + 177 DomainIdentifier CF$UID - 166 + 167 IdentifierPath CF$UID - 231 + 232 IndexOfDocumentIdentifier @@ -2392,14 +2393,10 @@ $class CF$UID - 175 + 176 NS.objects - - CF$UID - 232 - CF$UID 233 @@ -2408,42 +2405,46 @@ CF$UID 234 + + CF$UID + 235 + $class CF$UID - 170 + 171 Identifier CF$UID - 169 + 170 $class CF$UID - 170 + 171 Identifier CF$UID - 172 + 173 $class CF$UID - 170 + 171 Identifier CF$UID - 235 + 236 Pong @@ -2451,12 +2452,12 @@ $class CF$UID - 238 + 239 children CF$UID - 237 + 238 contentType 0 @@ -2477,13 +2478,13 @@ $class CF$UID - 175 + 176 NS.objects CF$UID - 229 + 230 @@ -2515,14 +2516,14 @@ CF$UID - 200 + 201 NS.objects CF$UID - 241 + 242 @@ -2536,11 +2537,11 @@ CF$UID - 242 + 243 CF$UID - 245 + 246 @@ -2548,28 +2549,28 @@ $class CF$UID - 183 + 184 NS.keys CF$UID - 203 + 204 CF$UID - 204 + 205 NS.objects CF$UID - 243 + 244 CF$UID - 244 + 245 @@ -2579,32 +2580,32 @@ $class CF$UID - 183 + 184 NS.keys CF$UID - 203 + 204 CF$UID - 204 + 205 NS.objects CF$UID - 243 + 244 CF$UID - 246 + 247 - 238 + 216 $class @@ -2613,10 +2614,6 @@ NS.keys - - CF$UID - 248 - CF$UID 249 @@ -2625,20 +2622,24 @@ CF$UID 250 + + CF$UID + 251 + NS.objects + + CF$UID + 252 + CF$UID 251 CF$UID - 248 - - - CF$UID - 268 + 271 @@ -2653,10 +2654,6 @@ NS.keys - - CF$UID - 252 - CF$UID 253 @@ -2681,17 +2678,13 @@ CF$UID 258 - - NS.objects - CF$UID 259 - - CF$UID - 15 - + + NS.objects + CF$UID 260 @@ -2700,17 +2693,25 @@ CF$UID 15 + + CF$UID + 261 + CF$UID 15 CF$UID - 262 + 15 CF$UID - 265 + 263 + + + CF$UID + 268 @@ -2721,12 +2722,12 @@ IDESCMStatusFilteringEnabled IDESelectedObjects IDEExpandedItemsSet - {{0, 0}, {213, 658}} + {{0, 0}, {213, 636}} $class CF$UID - 261 + 262 NS.objects @@ -2744,13 +2745,13 @@ $class CF$UID - 175 + 176 NS.objects CF$UID - 263 + 264 @@ -2764,27 +2765,8 @@ CF$UID - 264 + 265 - - CF$UID - 172 - - - CF$UID - 169 - - - - Pong - - $class - - CF$UID - 261 - - NS.objects - CF$UID 266 @@ -2795,17 +2777,24 @@ + Pong + Classes + GGSNetwork.m $class CF$UID - 104 + 262 NS.objects CF$UID - 264 + 269 + + + CF$UID + 270 @@ -2819,11 +2808,25 @@ CF$UID - 264 + 265 + + + + + $class + + CF$UID + 104 + + NS.objects + + + CF$UID + 265 CF$UID - 172 + 266 @@ -2835,18 +2838,6 @@ NS.keys - - CF$UID - 269 - - - CF$UID - 270 - - - CF$UID - 271 - CF$UID 272 @@ -2875,13 +2866,6 @@ CF$UID 278 - - NS.objects - - - CF$UID - 15 - CF$UID 279 @@ -2890,6 +2874,17 @@ CF$UID 280 + + CF$UID + 281 + + + NS.objects + + + CF$UID + 15 + CF$UID 282 @@ -2898,26 +2893,34 @@ CF$UID 283 - - CF$UID - 15 - - - CF$UID - 15 - - - CF$UID - 284 - - - CF$UID - 15 - CF$UID 285 + + CF$UID + 286 + + + CF$UID + 15 + + + CF$UID + 15 + + + CF$UID + 287 + + + CF$UID + 15 + + + CF$UID + 288 + IDEErrorFilteringEnabled @@ -2930,12 +2933,12 @@ IDECollapsedTypes IDERecentFilteringEnabled IDECollapsedGroups - {{0, 0}, {213, 636}} + {{0, 0}, {213, 614}} $class CF$UID - 281 + 284 NS.objects @@ -2954,7 +2957,7 @@ $class CF$UID - 281 + 284 NS.objects @@ -2972,7 +2975,7 @@ $class CF$UID - 281 + 284 NS.objects @@ -2981,7 +2984,7 @@ $class CF$UID - 281 + 284 NS.objects @@ -2996,14 +2999,14 @@ CF$UID - 200 + 201 NS.objects CF$UID - 287 + 290 @@ -3017,15 +3020,15 @@ CF$UID - 288 + 291 CF$UID - 290 + 293 CF$UID - 292 + 295 @@ -3033,17 +3036,17 @@ $class CF$UID - 183 + 184 NS.keys CF$UID - 203 + 204 CF$UID - 204 + 205 NS.objects @@ -3054,7 +3057,7 @@ CF$UID - 289 + 292 @@ -3063,28 +3066,28 @@ $class CF$UID - 183 + 184 NS.keys CF$UID - 203 + 204 CF$UID - 204 + 205 NS.objects CF$UID - 129 + 131 CF$UID - 291 + 294 @@ -3093,39 +3096,38 @@ $class CF$UID - 183 + 184 NS.keys CF$UID - 203 + 204 CF$UID - 204 + 205 NS.objects CF$UID - 293 + 296 CF$UID - 294 + 297 IDEUtilitiesArea 260 - GGSNetwork.m $class CF$UID - 175 + 176 NS.objects @@ -3135,7 +3137,7 @@ - {{160, 0}, {1116, 778}} + {{1411, -567}, {1116, 778}} $top diff --git a/src/ggs_protocol.erl b/src/ggs_protocol.erl index a0f68a3..39e0a6f 100644 --- a/src/ggs_protocol.erl +++ b/src/ggs_protocol.erl @@ -43,7 +43,7 @@ create_message({Command, Data}) -> %% Assemble a message which can b %e used as a reply to a client create_message(Cmd, Enc, Acc, Data) -> - ggs_stats:message(), + ggs_stats:message(server), Length = integer_to_list(string:len(Data)), Msg = "Client-Command: " ++ Cmd ++ "\n" ++ "Client-Encoding: " ++ Enc ++ "\n" ++ @@ -110,7 +110,7 @@ code_change(_OldVsn, State, _Extra) -> prettify(Args, Data) -> - ggs_stats:message(), + ggs_stats:message(client), case lists:keyfind("Server-Command", 1, Args) of {_, Value} -> {srv_cmd, Value, Args, Data}; @@ -118,7 +118,7 @@ prettify(Args, Data) -> case lists:keyfind("Game-Command", 1, Args) of {_, Value} -> {game_cmd, Value, Args, Data}; - Other -> + _Other -> ok end end. diff --git a/src/ggs_stats.erl b/src/ggs_stats.erl index c3a94b6..1d5888e 100644 --- a/src/ggs_stats.erl +++ b/src/ggs_stats.erl @@ -1,15 +1,18 @@ -module(ggs_stats). --export([start_link/0, message/0, print/0, tick/0]). +-export([start_link/0, message/1, print/0, tick/0]). -behaviour(gen_server). -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]). -vsn(0). --record(ate, { count = 0 }). +-record(ate, { + server_messages = 0, + client_messages = 0 + }). -define(SERVER, ?MODULE). -message() -> - gen_server:cast(ggs_stats, add_one). +message(Type) -> + gen_server:cast(ggs_stats, {add_one, Type}). print() -> gen_server:cast(ggs_stats, print). @@ -20,15 +23,27 @@ tick() -> timer:apply_after(1000, ggs_stats, tick, []). start_link() -> - gen_server:start_link({local, ?SERVER}, ?MODULE, [0], []). + gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). -init([Count]) -> - St = #ate{ count = Count }, +init(_Args) -> + St = #ate{ + server_messages = 0, + client_messages = 0 + }, {ok, St}. -handle_cast(add_one, St) -> - NewSt = #ate { count = St#ate.count + 1}, +handle_cast({add_one, Type}, St) -> + case Type of + server -> NewSt = #ate { + server_messages = St#ate.server_messages + 1, + client_messages = St#ate.client_messages + }; + client -> NewSt = #ate { + server_messages = St#ate.server_messages, + client_messages = St#ate.client_messages + 1 + } + end, {noreply, NewSt}; handle_cast(print, St) -> From 612811614a1e063c4723ca23d766b7710402c99f Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 26 Apr 2011 16:56:58 +0200 Subject: [PATCH 154/192] added different stats messages --- doc/report | 2 +- src/ggs_stats.erl | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/doc/report b/doc/report index 030e0ec..0031285 160000 --- a/doc/report +++ b/doc/report @@ -1 +1 @@ -Subproject commit 030e0ecafff27fff8e6918add47dfcdeec363e7c +Subproject commit 00312859714bef6e9a4fdb9931a41fef56eeb89a diff --git a/src/ggs_stats.erl b/src/ggs_stats.erl index 1d5888e..228da7d 100644 --- a/src/ggs_stats.erl +++ b/src/ggs_stats.erl @@ -46,12 +46,14 @@ handle_cast({add_one, Type}, St) -> end, {noreply, NewSt}; -handle_cast(print, St) -> - erlang:display(St#ate.count), +handle_cast(print, #ate { server_messages = SM, client_messages = CM } = St) -> + CS = length(ggs_coordinator:get_all_players()), + format:print("CS:~i | CM:~i | SM:~i~n", [CS, SM, CM]), {noreply, St}; handle_cast(tick, _St) -> - NewSt = #ate { count = 0 }, + NewSt = #ate { server_messages = 0, + client_messages = 0 }, {noreply, NewSt}. From e5f2652ae6677f3874a8010ab284ed3fef04973b Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 26 Apr 2011 17:16:27 +0200 Subject: [PATCH 155/192] added better print --- games/Pong/Classes/GGSNetwork.m | 2 +- .../UserInterfaceState.xcuserstate | 687 +++++++++--------- games/pong_bot_e/ggs_network.erl | 4 +- src/ggs_stats.erl | 4 +- src/start_ggs.erl | 2 +- 5 files changed, 349 insertions(+), 350 deletions(-) diff --git a/games/Pong/Classes/GGSNetwork.m b/games/Pong/Classes/GGSNetwork.m index 45e7719..32f53f0 100644 --- a/games/Pong/Classes/GGSNetwork.m +++ b/games/Pong/Classes/GGSNetwork.m @@ -11,7 +11,7 @@ @implementation GGSNetwork -#define GGS_HOST @"ggs.jeena.net" +#define GGS_HOST @"localhost" #define GGS_PORT 9000 #define NO_TIMEOUT -1 diff --git a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate index 03c6390..ab2b7a0 100644 --- a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate +++ b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate @@ -11,7 +11,7 @@ $class CF$UID - 184 + 183 NS.keys @@ -32,7 +32,7 @@ CF$UID - 121 + 120 @@ -115,11 +115,11 @@ CF$UID - 107 + 106 CF$UID - 108 + 107 CF$UID @@ -559,9 +559,9 @@ PrimaryDocumentVisibleCharacterRange HideAllIssues PrimaryDocumentSelectedCharacterRange - 325520518.22232997 - {0, 682} - {211, 0} + 325523158.10638702 + {0, 678} + {207, 0} $class @@ -794,7 +794,7 @@ CF$UID - 106 + 84 @@ -1059,7 +1059,7 @@ 102 NS.time - 325520486.09508002 + 325523153.65744901 $classes @@ -1070,7 +1070,7 @@ $classname NSDate - Today at 16:21 + Today at 17:05 $classes @@ -1082,7 +1082,6 @@ NSMutableArray 106 - Pong $class @@ -1107,27 +1106,27 @@ CF$UID - 109 + 108 CF$UID - 111 + 110 CF$UID - 113 + 112 CF$UID - 115 + 114 CF$UID - 117 + 116 CF$UID - 119 + 118 @@ -1145,7 +1144,7 @@ NS.relative CF$UID - 110 + 109 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m @@ -1163,7 +1162,7 @@ NS.relative CF$UID - 112 + 111 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.h @@ -1181,7 +1180,7 @@ NS.relative CF$UID - 114 + 113 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSDelegate.h @@ -1199,7 +1198,7 @@ NS.relative CF$UID - 116 + 115 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m @@ -1217,7 +1216,7 @@ NS.relative CF$UID - 118 + 117 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m @@ -1235,7 +1234,7 @@ NS.relative CF$UID - 120 + 119 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.h @@ -1247,6 +1246,10 @@ NS.keys + + CF$UID + 121 + CF$UID 122 @@ -1267,33 +1270,29 @@ CF$UID 126 - - CF$UID - 127 - NS.objects CF$UID - 128 + 127 + + + CF$UID + 297 + + + CF$UID + 137 + + + CF$UID + 121 CF$UID 298 - - CF$UID - 138 - - - CF$UID - 122 - - - CF$UID - 299 - CF$UID 3 @@ -1314,6 +1313,10 @@ NS.keys + + CF$UID + 128 + CF$UID 129 @@ -1342,13 +1345,13 @@ CF$UID 135 + + NS.objects + CF$UID 136 - - NS.objects - CF$UID 137 @@ -1359,19 +1362,15 @@ CF$UID - 139 + 240 CF$UID - 241 + 247 CF$UID - 248 - - - CF$UID - 289 + 288 CF$UID @@ -1401,6 +1400,10 @@ NS.keys + + CF$UID + 139 + CF$UID 140 @@ -1429,28 +1432,24 @@ CF$UID 146 - - CF$UID - 147 - NS.objects CF$UID - 138 + 137 CF$UID - 148 + 147 CF$UID - 191 + 190 CF$UID - 138 + 137 CF$UID @@ -1458,16 +1457,16 @@ CF$UID - 220 + 219 + + + CF$UID + 227 CF$UID 228 - - CF$UID - 229 - ShowDebuggerArea @@ -1488,14 +1487,14 @@ CF$UID - 149 + 148 NS.objects CF$UID - 150 + 149 @@ -1510,14 +1509,14 @@ CF$UID - 151 + 150 NS.objects CF$UID - 152 + 151 @@ -1526,10 +1525,14 @@ $class CF$UID - 184 + 183 NS.keys + + CF$UID + 152 + CF$UID 153 @@ -1538,16 +1541,12 @@ CF$UID 154 - - CF$UID - 155 - NS.objects CF$UID - 156 + 155 CF$UID @@ -1555,7 +1554,7 @@ CF$UID - 189 + 188 @@ -1566,13 +1565,13 @@ $class CF$UID - 176 + 175 NS.objects CF$UID - 157 + 156 @@ -1584,6 +1583,10 @@ NS.keys + + CF$UID + 157 + CF$UID 158 @@ -1608,41 +1611,37 @@ CF$UID 163 + + NS.objects + CF$UID 164 - - NS.objects - CF$UID 165 CF$UID - 166 + 179 CF$UID - 180 + 184 + + + CF$UID + 169 CF$UID 185 - - CF$UID - 170 - CF$UID 186 - - CF$UID - 187 - FileDataType @@ -1657,22 +1656,22 @@ $class CF$UID - 179 + 178 DocumentLocation CF$UID - 177 + 176 DomainIdentifier CF$UID - 167 + 166 IdentifierPath CF$UID - 168 + 167 IndexOfDocumentIdentifier @@ -1685,21 +1684,21 @@ $class CF$UID - 176 + 175 NS.objects CF$UID - 169 + 168 CF$UID - 172 + 171 CF$UID - 174 + 173 @@ -1707,12 +1706,12 @@ $class CF$UID - 171 + 170 Identifier CF$UID - 170 + 169 GGSNetwork.m @@ -1729,12 +1728,12 @@ $class CF$UID - 171 + 170 Identifier CF$UID - 173 + 172 Classes @@ -1742,12 +1741,12 @@ $class CF$UID - 171 + 170 Identifier CF$UID - 175 + 174 Pong @@ -1764,7 +1763,7 @@ $class CF$UID - 178 + 177 documentURL @@ -1799,7 +1798,7 @@ $class CF$UID - 184 + 183 NS.keys @@ -1824,11 +1823,11 @@ CF$UID - 181 + 180 CF$UID - 182 + 181 CF$UID @@ -1836,13 +1835,13 @@ CF$UID - 183 + 182 - 325520518.22270298 - {0, 682} - {211, 0} + 325523158.10676903 + {0, 678} + {207, 0} $classes @@ -1868,7 +1867,7 @@ NS.relative CF$UID - 188 + 187 file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m @@ -1876,13 +1875,13 @@ $class CF$UID - 176 + 175 NS.objects CF$UID - 190 + 189 @@ -1895,6 +1894,10 @@ NS.keys + + CF$UID + 191 + CF$UID 192 @@ -1915,10 +1918,6 @@ CF$UID 196 - - CF$UID - 197 - NS.objects @@ -1928,11 +1927,11 @@ CF$UID - 198 + 197 CF$UID - 200 + 199 CF$UID @@ -1940,11 +1939,11 @@ CF$UID - 211 + 210 CF$UID - 217 + 216 @@ -1964,7 +1963,7 @@ CF$UID - 199 + 198 NS.objects @@ -1986,14 +1985,14 @@ CF$UID - 201 + 200 NS.objects CF$UID - 202 + 201 @@ -2008,11 +2007,11 @@ CF$UID - 203 + 202 CF$UID - 208 + 207 @@ -2020,28 +2019,28 @@ $class CF$UID - 184 + 183 NS.keys CF$UID - 204 + 203 CF$UID - 205 + 204 NS.objects CF$UID - 206 + 205 CF$UID - 207 + 206 @@ -2053,28 +2052,28 @@ $class CF$UID - 184 + 183 NS.keys CF$UID - 204 + 203 CF$UID - 205 + 204 NS.objects CF$UID - 209 + 208 CF$UID - 210 + 209 @@ -2090,14 +2089,14 @@ CF$UID - 201 + 200 NS.objects CF$UID - 212 + 211 @@ -2111,11 +2110,11 @@ CF$UID - 213 + 212 CF$UID - 215 + 214 @@ -2123,28 +2122,28 @@ $class CF$UID - 184 + 183 NS.keys CF$UID - 204 + 203 CF$UID - 205 + 204 NS.objects CF$UID - 206 + 205 CF$UID - 214 + 213 @@ -2153,28 +2152,28 @@ $class CF$UID - 184 + 183 NS.keys CF$UID - 204 + 203 CF$UID - 205 + 204 NS.objects CF$UID - 209 + 208 CF$UID - 216 + 215 @@ -2189,14 +2188,14 @@ CF$UID - 218 + 217 NS.objects CF$UID - 219 + 218 @@ -2212,14 +2211,14 @@ CF$UID - 201 + 200 NS.objects CF$UID - 221 + 220 @@ -2233,11 +2232,11 @@ CF$UID - 222 + 221 CF$UID - 225 + 224 @@ -2245,28 +2244,28 @@ $class CF$UID - 184 + 183 NS.keys CF$UID - 204 + 203 CF$UID - 205 + 204 NS.objects CF$UID - 223 + 222 CF$UID - 224 + 223 @@ -2276,28 +2275,28 @@ $class CF$UID - 184 + 183 NS.keys CF$UID - 204 + 203 CF$UID - 205 + 204 NS.objects CF$UID - 226 + 225 CF$UID - 227 + 226 @@ -2318,7 +2317,7 @@ $class CF$UID - 240 + 239 geniusEditorContextNode @@ -2328,19 +2327,19 @@ primaryEditorContextNode CF$UID - 230 + 229 rootLayoutTreeNode CF$UID - 237 + 236 $class CF$UID - 239 + 238 children @@ -2352,36 +2351,36 @@ documentArchivableRepresentation CF$UID - 231 + 230 orientation 0 parent CF$UID - 237 + 236 $class CF$UID - 179 + 178 DocumentLocation CF$UID - 177 + 176 DomainIdentifier CF$UID - 167 + 166 IdentifierPath CF$UID - 232 + 231 IndexOfDocumentIdentifier @@ -2393,10 +2392,14 @@ $class CF$UID - 176 + 175 NS.objects + + CF$UID + 232 + CF$UID 233 @@ -2405,46 +2408,42 @@ CF$UID 234 - - CF$UID - 235 - $class CF$UID - 171 + 170 Identifier + + CF$UID + 169 + + + + $class CF$UID 170 - - - $class - - CF$UID - 171 - Identifier CF$UID - 173 + 172 $class CF$UID - 171 + 170 Identifier CF$UID - 236 + 235 Pong @@ -2452,12 +2451,12 @@ $class CF$UID - 239 + 238 children CF$UID - 238 + 237 contentType 0 @@ -2478,13 +2477,13 @@ $class CF$UID - 176 + 175 NS.objects CF$UID - 230 + 229 @@ -2516,14 +2515,14 @@ CF$UID - 201 + 200 NS.objects CF$UID - 242 + 241 @@ -2537,11 +2536,11 @@ CF$UID - 243 + 242 CF$UID - 246 + 245 @@ -2549,28 +2548,28 @@ $class CF$UID - 184 + 183 NS.keys CF$UID - 204 + 203 CF$UID - 205 + 204 NS.objects CF$UID - 244 + 243 CF$UID - 245 + 244 @@ -2580,28 +2579,28 @@ $class CF$UID - 184 + 183 NS.keys CF$UID - 204 + 203 CF$UID - 205 + 204 NS.objects CF$UID - 244 + 243 CF$UID - 247 + 246 @@ -2614,6 +2613,10 @@ NS.keys + + CF$UID + 248 + CF$UID 249 @@ -2622,24 +2625,20 @@ CF$UID 250 + + NS.objects + + + CF$UID + 251 + + + CF$UID + 250 + CF$UID - 251 - - - NS.objects - - - CF$UID - 252 - - - CF$UID - 251 - - - CF$UID - 271 + 270 @@ -2654,6 +2653,10 @@ NS.keys + + CF$UID + 252 + CF$UID 253 @@ -2678,13 +2681,17 @@ CF$UID 258 + + NS.objects + CF$UID 259 - - NS.objects - + + CF$UID + 15 + CF$UID 260 @@ -2693,25 +2700,17 @@ CF$UID 15 - - CF$UID - 261 - CF$UID 15 CF$UID - 15 + 262 CF$UID - 263 - - - CF$UID - 268 + 267 @@ -2727,7 +2726,7 @@ $class CF$UID - 262 + 261 NS.objects @@ -2745,7 +2744,64 @@ $class CF$UID - 176 + 175 + + NS.objects + + + CF$UID + 263 + + + + + $class + + CF$UID + 104 + + NS.objects + + + CF$UID + 264 + + + CF$UID + 265 + + + CF$UID + 266 + + + + Pong + Classes + GGSNetwork.m + + $class + + CF$UID + 261 + + NS.objects + + + CF$UID + 268 + + + CF$UID + 269 + + + + + $class + + CF$UID + 104 NS.objects @@ -2765,71 +2821,14 @@ CF$UID - 265 + 264 - - CF$UID - 266 - - - CF$UID - 267 - - - - Pong - Classes - GGSNetwork.m - - $class - - CF$UID - 262 - - NS.objects - - - CF$UID - 269 - - - CF$UID - 270 - - - - - $class - - CF$UID - 104 - - NS.objects - CF$UID 265 - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 265 - - - CF$UID - 266 - - - $class @@ -2838,6 +2837,10 @@ NS.keys + + CF$UID + 271 + CF$UID 272 @@ -2874,10 +2877,6 @@ CF$UID 280 - - CF$UID - 281 - NS.objects @@ -2885,18 +2884,30 @@ CF$UID 15 + + CF$UID + 281 + CF$UID 282 CF$UID - 283 + 284 CF$UID 285 + + CF$UID + 15 + + + CF$UID + 15 + CF$UID 286 @@ -2905,22 +2916,10 @@ CF$UID 15 - - CF$UID - 15 - CF$UID 287 - - CF$UID - 15 - - - CF$UID - 288 - IDEErrorFilteringEnabled @@ -2938,7 +2937,7 @@ $class CF$UID - 284 + 283 NS.objects @@ -2957,7 +2956,7 @@ $class CF$UID - 284 + 283 NS.objects @@ -2975,7 +2974,7 @@ $class CF$UID - 284 + 283 NS.objects @@ -2984,7 +2983,7 @@ $class CF$UID - 284 + 283 NS.objects @@ -2999,14 +2998,14 @@ CF$UID - 201 + 200 NS.objects CF$UID - 290 + 289 @@ -3020,15 +3019,15 @@ CF$UID - 291 + 290 CF$UID - 293 + 292 CF$UID - 295 + 294 @@ -3036,28 +3035,28 @@ $class CF$UID - 184 + 183 NS.keys CF$UID - 204 + 203 CF$UID - 205 + 204 NS.objects CF$UID - 133 + 132 CF$UID - 292 + 291 @@ -3066,28 +3065,28 @@ $class CF$UID - 184 + 183 NS.keys CF$UID - 204 + 203 CF$UID - 205 + 204 NS.objects CF$UID - 131 + 130 CF$UID - 294 + 293 @@ -3096,28 +3095,28 @@ $class CF$UID - 184 + 183 NS.keys CF$UID - 204 + 203 CF$UID - 205 + 204 NS.objects CF$UID - 296 + 295 CF$UID - 297 + 296 @@ -3127,17 +3126,17 @@ $class CF$UID - 176 + 175 NS.objects CF$UID - 122 + 121 - {{1411, -567}, {1116, 778}} + {{1385, -205}, {1116, 778}} $top diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index c97c776..b2506cb 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -3,8 +3,8 @@ -export([read/2, send_command/3]). connect() -> - {ok,Socket} = gen_tcp:connect("ggs.jeena.net", 9000,[{active, false}]), - %{ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]), + %{ok,Socket} = gen_tcp:connect("ggs.jeena.net", 9000,[{active, false}]), + {ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]), Socket. read(Socket, Ref) -> diff --git a/src/ggs_stats.erl b/src/ggs_stats.erl index 228da7d..5959e75 100644 --- a/src/ggs_stats.erl +++ b/src/ggs_stats.erl @@ -46,9 +46,9 @@ handle_cast({add_one, Type}, St) -> end, {noreply, NewSt}; -handle_cast(print, #ate { server_messages = SM, client_messages = CM } = St) -> +handle_cast(print, St) -> CS = length(ggs_coordinator:get_all_players()), - format:print("CS:~i | CM:~i | SM:~i~n", [CS, SM, CM]), + io:fwrite("CS:~w | CM:~w | SM:~w~n", [CS, St#ate.server_messages, St#ate.client_messages]), {noreply, St}; handle_cast(tick, _St) -> diff --git a/src/start_ggs.erl b/src/start_ggs.erl index 46cbe73..161d20e 100644 --- a/src/start_ggs.erl +++ b/src/start_ggs.erl @@ -4,6 +4,6 @@ start() -> application:start(inets), application:start(erlang_js), - %ggs_stats:start_link(), + ggs_stats:start_link(), ggs_db:init(), application:start(ggs). From ad4ccadc153a2c4d65c5b6bc166dd549a7c3297c Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 26 Apr 2011 18:41:05 +0200 Subject: [PATCH 156/192] added possibility to log in file --- games/Pong/Classes/GGSNetwork.m | 2 +- .../UserInterfaceState.xcuserstate | 16 ++++++------- src/ggs_stats.erl | 24 +++++++++++++------ 3 files changed, 26 insertions(+), 16 deletions(-) diff --git a/games/Pong/Classes/GGSNetwork.m b/games/Pong/Classes/GGSNetwork.m index 32f53f0..45e7719 100644 --- a/games/Pong/Classes/GGSNetwork.m +++ b/games/Pong/Classes/GGSNetwork.m @@ -11,7 +11,7 @@ @implementation GGSNetwork -#define GGS_HOST @"localhost" +#define GGS_HOST @"ggs.jeena.net" #define GGS_PORT 9000 #define NO_TIMEOUT -1 diff --git a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate index ab2b7a0..3cfdb80 100644 --- a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate +++ b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate @@ -559,9 +559,9 @@ PrimaryDocumentVisibleCharacterRange HideAllIssues PrimaryDocumentSelectedCharacterRange - 325523158.10638702 - {0, 678} - {207, 0} + 325528851.05899101 + {0, 682} + {198, 13} $class @@ -1059,7 +1059,7 @@ 102 NS.time - 325523153.65744901 + 325523995.81053603 $classes @@ -1070,7 +1070,7 @@ $classname NSDate - Today at 17:05 + Today at 17:19 $classes @@ -1839,9 +1839,9 @@ - 325523158.10676903 - {0, 678} - {207, 0} + 325528851.05936098 + {0, 682} + {198, 13} $classes diff --git a/src/ggs_stats.erl b/src/ggs_stats.erl index 5959e75..e106ddb 100644 --- a/src/ggs_stats.erl +++ b/src/ggs_stats.erl @@ -7,7 +7,8 @@ -record(ate, { server_messages = 0, - client_messages = 0 + client_messages = 0, + stats = [] }). -define(SERVER, ?MODULE). @@ -29,7 +30,8 @@ start_link() -> init(_Args) -> St = #ate{ server_messages = 0, - client_messages = 0 + client_messages = 0, + stats = [] }, {ok, St}. @@ -37,23 +39,28 @@ handle_cast({add_one, Type}, St) -> case Type of server -> NewSt = #ate { server_messages = St#ate.server_messages + 1, - client_messages = St#ate.client_messages + client_messages = St#ate.client_messages, + stats = St#ate.stats }; client -> NewSt = #ate { server_messages = St#ate.server_messages, - client_messages = St#ate.client_messages + 1 + client_messages = St#ate.client_messages + 1, + stats = St#ate.stats } end, {noreply, NewSt}; handle_cast(print, St) -> CS = length(ggs_coordinator:get_all_players()), - io:fwrite("CS:~w | CM:~w | SM:~w~n", [CS, St#ate.server_messages, St#ate.client_messages]), + S = lists:concat([CS,";",St#ate.server_messages,";",St#ate.client_messages]), + log("/tmp/ggs-log.csv", S), + io:fwrite("CS:~w | CM:~w | SM:~w |~n", [CS, St#ate.server_messages, St#ate.client_messages]), {noreply, St}; -handle_cast(tick, _St) -> +handle_cast(tick, St) -> NewSt = #ate { server_messages = 0, - client_messages = 0 }, + client_messages = 0, + stats = St#ate.stats }, {noreply, NewSt}. @@ -62,3 +69,6 @@ handle_call(_Request, _From, St) -> {stop, unimplemented, St}. handle_info(_Info, St) -> {stop, unimplemented, St}. terminate(_Reason, _St) -> ok. code_change(_OldVsn, St, _Extra) -> {ok, St}. + +log(FileName, Data) -> + file:write_file(FileName, Data ++ "\n", [append]). From 0b649c35acb263551262a3998a866a6a619ec0b5 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 27 Apr 2011 16:21:15 +0200 Subject: [PATCH 157/192] moved erlang_js and erlv8 to lib --- .gitignore | 1 + .gitmodules | 9 +- Makefile | 13 +- erlang_js | 1 - .../UserInterfaceState.xcuserstate | 3152 ----------------- lib/erlang_js | 1 + lib/erlv8 | 1 + 7 files changed, 18 insertions(+), 3160 deletions(-) delete mode 160000 erlang_js delete mode 100644 games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate create mode 160000 lib/erlang_js create mode 160000 lib/erlv8 diff --git a/.gitignore b/.gitignore index 0d32ed9..78d04e3 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,5 @@ Mnesia.* games/Pong/build/**/* *~ games/Pong/Pong.xcodeproj/project.xcworkspace/**/* +games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate games/Pong/Pong.xcodeproj/xcuserdata/**/* diff --git a/.gitmodules b/.gitmodules index 06aa680..afaa5ca 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,9 @@ -[submodule "erlang_js"] - path = erlang_js - url = https://github.com/jonte/erlang_js.git [submodule "doc/report"] path = doc/report url = git@github.com:jeena/GGS-report.git +[submodule "lib/erlv8"] + path = lib/erlv8 + url = https://github.com/beamjs/erlv8.git +[submodule "lib/erlang_js"] + path = lib/erlang_js + url = git@github.com:jonte/erlang_js.git diff --git a/Makefile b/Makefile index eb5bf0f..442fa5b 100644 --- a/Makefile +++ b/Makefile @@ -2,16 +2,20 @@ ERLC=erlc ERLCFLAGS=-o SRCDIR=src TESTDIR=tests +LIBDIR=lib BEAMDIR=ebin -all: compile erlang_js +all: compile compile: mkdir -p $(BEAMDIR) ; $(ERLC) $(ERLCFLAGS) $(BEAMDIR) $(SRCDIR)/*.erl ; erlang_js: force_look - cd erlang_js ; $(MAKE) $(MFLAGS); + cd $(LIBDIR)/erlang_js ; $(MAKE) $(MFLAGS); + +erlv8: force_look + cd $(LIBDIR)/erlv8 ; $(MAKE) $(MFLAGS); test: echo "==> test $(MOD)" ; @@ -29,14 +33,15 @@ clean: rm -rf $(SRCDIR)/*.beam ; rm -rf erl_crush.dump ; echo "==> clean ggs" ; - $(MAKE) -C erlang_js/ clean + $(MAKE) -C $(LIBDIR)/erlang_js/ clean + $(MAKE) -C $(LIBDIR)/erlv8/ clean run: erl \ -sname ggs \ -mnesia dir '"/tmp/ggs"' \ -boot start_sasl \ - -pa erlang_js/ebin/ \ + -pa $(LIBDIR)/erlv8/ebin/ \ -pa ebin \ -pa src \ -s start_ggs diff --git a/erlang_js b/erlang_js deleted file mode 160000 index 2f2785f..0000000 --- a/erlang_js +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2f2785fafb0da6db75810eb6fa97d09c58257588 diff --git a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate b/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index 3cfdb80..0000000 --- a/games/Pong/Pong.xcodeproj/project.xcworkspace/xcuserdata/jeena.xcuserdatad/UserInterfaceState.xcuserstate +++ /dev/null @@ -1,3152 +0,0 @@ - - - - - $archiver - NSKeyedArchiver - $objects - - $null - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 2 - - - CF$UID - 3 - - - NS.objects - - - CF$UID - 4 - - - CF$UID - 120 - - - - IDEWorkspaceDocument - C791B696-0817-4083-8D95-684ACD41BA88 - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 5 - - - CF$UID - 6 - - - CF$UID - 7 - - - CF$UID - 8 - - - CF$UID - 9 - - - CF$UID - 10 - - - CF$UID - 11 - - - CF$UID - 12 - - - CF$UID - 13 - - - CF$UID - 14 - - - NS.objects - - - CF$UID - 15 - - - CF$UID - 16 - - - CF$UID - 64 - - - CF$UID - 65 - - - CF$UID - 70 - - - CF$UID - 73 - - - CF$UID - 106 - - - CF$UID - 107 - - - CF$UID - 15 - - - CF$UID - 15 - - - - BreakpointsActivated - DefaultEditorStatesForURLs - DebuggingWindowBehavior - ActiveRunDestination - ActiveScheme - LastCompletedPersistentSchemeBasedActivityReport - DocumentWindows - RecentEditorDocumentURLs - AppFocusInMiniDebugging - MiniDebuggingConsole - - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 17 - - - NS.objects - - - CF$UID - 18 - - - - Xcode.IDEKit.EditorDocument.SourceCode - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 19 - - - CF$UID - 23 - - - CF$UID - 25 - - - CF$UID - 27 - - - CF$UID - 29 - - - CF$UID - 31 - - - NS.objects - - - CF$UID - 33 - - - CF$UID - 42 - - - CF$UID - 46 - - - CF$UID - 54 - - - CF$UID - 58 - - - CF$UID - 61 - - - - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 20 - - - - $class - - CF$UID - 21 - - NS.string - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.h - - - $classes - - NSMutableString - NSString - NSObject - - $classname - NSMutableString - - - $classes - - NSURL - NSObject - - $classname - NSURL - - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 24 - - - - $class - - CF$UID - 21 - - NS.string - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m - - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 26 - - - - $class - - CF$UID - 21 - - NS.string - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m - - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 28 - - - - $class - - CF$UID - 21 - - NS.string - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSDelegate.h - - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 30 - - - - $class - - CF$UID - 21 - - NS.string - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m - - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 32 - - - - $class - - CF$UID - 21 - - NS.string - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.h - - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 34 - - - CF$UID - 35 - - - CF$UID - 36 - - - CF$UID - 37 - - - NS.objects - - - CF$UID - 38 - - - CF$UID - 39 - - - CF$UID - 15 - - - CF$UID - 40 - - - - PrimaryDocumentTimestamp - PrimaryDocumentVisibleCharacterRange - HideAllIssues - PrimaryDocumentSelectedCharacterRange - 324400742.528961 - {0, 910} - {797, 0} - - $classes - - NSMutableDictionary - NSDictionary - NSObject - - $classname - NSMutableDictionary - - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 34 - - - CF$UID - 35 - - - CF$UID - 36 - - - CF$UID - 37 - - - NS.objects - - - CF$UID - 43 - - - CF$UID - 44 - - - CF$UID - 15 - - - CF$UID - 45 - - - - 324400739.20572603 - {204, 801} - {953, 0} - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 47 - - - CF$UID - 48 - - - CF$UID - 49 - - - CF$UID - 50 - - - NS.objects - - - CF$UID - 51 - - - CF$UID - 52 - - - CF$UID - 15 - - - CF$UID - 53 - - - - PrimaryDocumentTimestamp - PrimaryDocumentVisibleCharacterRange - HideAllIssues - PrimaryDocumentSelectedCharacterRange - 325528851.05899101 - {0, 682} - {198, 13} - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 34 - - - CF$UID - 35 - - - CF$UID - 36 - - - CF$UID - 37 - - - NS.objects - - - CF$UID - 55 - - - CF$UID - 56 - - - CF$UID - 15 - - - CF$UID - 57 - - - - 324400740.10611397 - {0, 531} - {0, 0} - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 34 - - - CF$UID - 35 - - - CF$UID - 36 - - - CF$UID - 37 - - - NS.objects - - - CF$UID - 59 - - - CF$UID - 60 - - - CF$UID - 15 - - - CF$UID - 57 - - - - 324347076.57831001 - {328, 2297} - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 34 - - - CF$UID - 35 - - - CF$UID - 36 - - - CF$UID - 37 - - - NS.objects - - - CF$UID - 62 - - - CF$UID - 63 - - - CF$UID - 15 - - - CF$UID - 57 - - - - 322646160.93821901 - {0, 455} - 0 - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 66 - - - CF$UID - 67 - - - NS.objects - - - CF$UID - 68 - - - CF$UID - 69 - - - - IDEDeviceLocation - IDEDeviceArchitecture - dvtdevice-iphonesimulator:/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.0.sdk-iPhone - i386 - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 71 - - - NS.objects - - - CF$UID - 72 - - - - IDENameString - Pong - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 74 - - - CF$UID - 75 - - - CF$UID - 76 - - - NS.objects - - - CF$UID - 77 - - - CF$UID - 105 - - - CF$UID - 84 - - - - IDEActivityReportCompletionSummaryStringSegments - IDEActivityReportOptions - IDEActivityReportTitle - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 78 - - - CF$UID - 85 - - - CF$UID - 89 - - - CF$UID - 94 - - - - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 79 - - - CF$UID - 80 - - - CF$UID - 81 - - - NS.objects - - - CF$UID - 82 - - - CF$UID - 83 - - - CF$UID - 84 - - - - IDEActivityReportStringSegmentPriority - IDEActivityReportStringSegmentBackSeparator - IDEActivityReportStringSegmentStringValue - 2 - - Build - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 79 - - - CF$UID - 80 - - - CF$UID - 81 - - - NS.objects - - - CF$UID - 86 - - - CF$UID - 87 - - - CF$UID - 88 - - - - 4 - : - Pong - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 79 - - - CF$UID - 80 - - - CF$UID - 81 - - - NS.objects - - - CF$UID - 90 - - - CF$UID - 91 - - - CF$UID - 92 - - - - 1 - - - $class - - CF$UID - 93 - - NS.data - - YnBsaXN0MDDUAQIDBAUGOzxYJHZlcnNpb25YJG9iamVjdHNZJGFy - Y2hpdmVyVCR0b3ASAAGGoK0HCA8QGhscJCUrMTQ3VSRudWxs0wkK - CwwNDlxOU0F0dHJpYnV0ZXNWJGNsYXNzWE5TU3RyaW5ngAOADIAC - WVN1Y2NlZWRlZNMKERITFBdXTlMua2V5c1pOUy5vYmplY3RzgAui - FRaABIAFohgZgAaACVZOU0ZvbnRXTlNDb2xvctQKHR4fICEiI1ZO - U05hbWVWTlNTaXplWE5TZkZsYWdzgAiAByNAJgAAAAAAABENEF8Q - EUx1Y2lkYUdyYW5kZS1Cb2xk0iYnKClaJGNsYXNzbmFtZVgkY2xh - c3Nlc1ZOU0ZvbnSiKCpYTlNPYmplY3TTCiwtLi8wXE5TQ29sb3JT - cGFjZVdOU1doaXRlgAoQA0IwANImJzIzV05TQ29sb3KiMirSJic1 - NlxOU0RpY3Rpb25hcnmiNSrSJic4OV8QEk5TQXR0cmlidXRlZFN0 - cmluZ6I6Kl8QEk5TQXR0cmlidXRlZFN0cmluZ18QD05TS2V5ZWRB - cmNoaXZlctE9PlRyb290gAEACAARABoAIwAtADIANwBFAEsAUgBf - AGYAbwBxAHMAdQB/AIYAjgCZAJsAngCgAKIApQCnAKkAsAC4AMEA - yADPANgA2gDcAOUA6AD8AQEBDAEVARwBHwEoAS8BPAFEAUYBSAFL - AVABWAFbAWABbQFwAXUBigGNAaIBtAG3AbwAAAAAAAACAQAAAAAA - AAA/AAAAAAAAAAAAAAAAAAABvg== - - - - $classes - - NSMutableData - NSData - NSObject - - $classname - NSMutableData - - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 79 - - - CF$UID - 95 - - - CF$UID - 96 - - - CF$UID - 81 - - - CF$UID - 97 - - - CF$UID - 98 - - - NS.objects - - - CF$UID - 99 - - - CF$UID - 100 - - - CF$UID - 101 - - - CF$UID - 103 - - - CF$UID - 100 - - - CF$UID - 100 - - - - IDEActivityReportStringSegmentType - IDEActivityReportStringSegmentDate - IDEActivityReportStringSegmentDateStyle - IDEActivityReportStringSegmentTimeStyle - 3 - 1 - - $class - - CF$UID - 102 - - NS.time - 325523995.81053603 - - - $classes - - NSDate - NSObject - - $classname - NSDate - - Today at 17:19 - - $classes - - NSMutableArray - NSArray - NSObject - - $classname - NSMutableArray - - 106 - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 3 - - - - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 108 - - - CF$UID - 110 - - - CF$UID - 112 - - - CF$UID - 114 - - - CF$UID - 116 - - - CF$UID - 118 - - - - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 109 - - - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 111 - - - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.h - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 113 - - - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSDelegate.h - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 115 - - - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongViewController.m - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 117 - - - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.m - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 119 - - - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/PongAppDelegate.h - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 121 - - - CF$UID - 122 - - - CF$UID - 123 - - - CF$UID - 124 - - - CF$UID - 125 - - - CF$UID - 126 - - - NS.objects - - - CF$UID - 127 - - - CF$UID - 297 - - - CF$UID - 137 - - - CF$UID - 121 - - - CF$UID - 298 - - - CF$UID - 3 - - - - IDEWorkspaceTabController_C37A21B0-D59C-4189-B137-7086EEE960F1 - IDEOrderedWorkspaceTabControllers - IDEWindowToolbarIsVisible - IDEActiveWorkspaceTabController - IDEWindowFrame - IDEWorkspaceWindowControllerUniqueIdentifier - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 128 - - - CF$UID - 129 - - - CF$UID - 130 - - - CF$UID - 131 - - - CF$UID - 132 - - - CF$UID - 133 - - - CF$UID - 134 - - - CF$UID - 135 - - - NS.objects - - - CF$UID - 136 - - - CF$UID - 137 - - - CF$UID - 138 - - - CF$UID - 240 - - - CF$UID - 247 - - - CF$UID - 288 - - - CF$UID - 15 - - - CF$UID - 64 - - - - IDETabLabel - IDEShowNavigator - IDEEditorArea - IDEWorkspaceTabControllerUtilityAreaSplitView - IDENavigatorArea - IDEWorkspaceTabControllerDesignAreaSplitView - IDEShowUtilities - AssistantEditorsLayout - GGSNetwork.m - - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 139 - - - CF$UID - 140 - - - CF$UID - 141 - - - CF$UID - 142 - - - CF$UID - 143 - - - CF$UID - 144 - - - CF$UID - 145 - - - CF$UID - 146 - - - NS.objects - - - CF$UID - 137 - - - CF$UID - 147 - - - CF$UID - 190 - - - CF$UID - 137 - - - CF$UID - 64 - - - CF$UID - 219 - - - CF$UID - 227 - - - CF$UID - 228 - - - - ShowDebuggerArea - IDEEditorMode_Standard - IDEEDitorArea_DebugArea - IDEShowEditor - EditorMode - DebuggerSplitView - DefaultPersistentRepresentations - layoutTree - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 148 - - - NS.objects - - - CF$UID - 149 - - - - EditorLayout_PersistentRepresentation - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 150 - - - NS.objects - - - CF$UID - 151 - - - - Main - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 152 - - - CF$UID - 153 - - - CF$UID - 154 - - - NS.objects - - - CF$UID - 155 - - - CF$UID - 64 - - - CF$UID - 188 - - - - EditorLayout_StateSavingStateDictionaries - EditorLayout_Selected - EditorLayout_Geometry - - $class - - CF$UID - 175 - - NS.objects - - - CF$UID - 156 - - - - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 157 - - - CF$UID - 158 - - - CF$UID - 159 - - - CF$UID - 160 - - - CF$UID - 161 - - - CF$UID - 162 - - - CF$UID - 163 - - - NS.objects - - - CF$UID - 164 - - - CF$UID - 165 - - - CF$UID - 179 - - - CF$UID - 184 - - - CF$UID - 169 - - - CF$UID - 185 - - - CF$UID - 186 - - - - FileDataType - ArchivableRepresentation - EditorState - NavigableItemName - DocumentNavigableItemName - DocumentExtensionIdentifier - DocumentURL - public.objective-c-source - - $class - - CF$UID - 178 - - DocumentLocation - - CF$UID - 176 - - DomainIdentifier - - CF$UID - 166 - - IdentifierPath - - CF$UID - 167 - - IndexOfDocumentIdentifier - - CF$UID - 64 - - - Xcode.IDENavigableItemDomain.WorkspaceStructure - - $class - - CF$UID - 175 - - NS.objects - - - CF$UID - 168 - - - CF$UID - 171 - - - CF$UID - 173 - - - - - $class - - CF$UID - 170 - - Identifier - - CF$UID - 169 - - - GGSNetwork.m - - $classes - - IDEArchivableStringIndexPair - NSObject - - $classname - IDEArchivableStringIndexPair - - - $class - - CF$UID - 170 - - Identifier - - CF$UID - 172 - - - Classes - - $class - - CF$UID - 170 - - Identifier - - CF$UID - 174 - - - Pong - - $classes - - NSArray - NSObject - - $classname - NSArray - - - $class - - CF$UID - 177 - - documentURL - - CF$UID - 26 - - timestamp - - CF$UID - 0 - - - - $classes - - DVTDocumentLocation - NSObject - - $classname - DVTDocumentLocation - - - $classes - - IDENavigableItemArchivableRepresentation - NSObject - - $classname - IDENavigableItemArchivableRepresentation - - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 47 - - - CF$UID - 48 - - - CF$UID - 49 - - - CF$UID - 50 - - - NS.objects - - - CF$UID - 180 - - - CF$UID - 181 - - - CF$UID - 15 - - - CF$UID - 182 - - - - 325528851.05936098 - {0, 682} - {198, 13} - - $classes - - NSDictionary - NSObject - - $classname - NSDictionary - - @implementation GGSNetwork - Xcode.IDEKit.EditorDocument.SourceCode - - $class - - CF$UID - 22 - - NS.base - - CF$UID - 0 - - NS.relative - - CF$UID - 187 - - - file://localhost/Users/jeena/Student/GGS/games/Pong/Classes/GGSNetwork.m - - $class - - CF$UID - 175 - - NS.objects - - - CF$UID - 189 - - - - {{0, 0}, {902, 456}} - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 191 - - - CF$UID - 192 - - - CF$UID - 193 - - - CF$UID - 194 - - - CF$UID - 195 - - - CF$UID - 196 - - - NS.objects - - - CF$UID - 100 - - - CF$UID - 197 - - - CF$UID - 199 - - - CF$UID - 100 - - - CF$UID - 210 - - - CF$UID - 216 - - - - LayoutFocusMode - console - IDEDebugArea_SplitView - LayoutMode - IDEDebuggerAreaSplitView - variables - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 198 - - - NS.objects - - - CF$UID - 64 - - - - ConsoleFilterMode - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 200 - - - NS.objects - - - CF$UID - 201 - - - - DVTSplitViewItems - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 202 - - - CF$UID - 207 - - - - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 203 - - - CF$UID - 204 - - - NS.objects - - - CF$UID - 205 - - - CF$UID - 206 - - - - DVTIdentifier - DVTViewMagnitude - VariablesView - 307 - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 203 - - - CF$UID - 204 - - - NS.objects - - - CF$UID - 208 - - - CF$UID - 209 - - - - ConsoleArea - 594 - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 200 - - - NS.objects - - - CF$UID - 211 - - - - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 212 - - - CF$UID - 214 - - - - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 203 - - - CF$UID - 204 - - - NS.objects - - - CF$UID - 205 - - - CF$UID - 213 - - - - 307 - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 203 - - - CF$UID - 204 - - - NS.objects - - - CF$UID - 208 - - - CF$UID - 215 - - - - 594 - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 217 - - - NS.objects - - - CF$UID - 218 - - - - DBGVariablesViewFilterMode - 2 - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 200 - - - NS.objects - - - CF$UID - 220 - - - - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 221 - - - CF$UID - 224 - - - - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 203 - - - CF$UID - 204 - - - NS.objects - - - CF$UID - 222 - - - CF$UID - 223 - - - - IDEEditor - 478 - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 203 - - - CF$UID - 204 - - - NS.objects - - - CF$UID - 225 - - - CF$UID - 226 - - - - IDEDebuggerArea - 202 - - $class - - CF$UID - 41 - - NS.keys - - NS.objects - - - - $class - - CF$UID - 239 - - geniusEditorContextNode - - CF$UID - 0 - - primaryEditorContextNode - - CF$UID - 229 - - rootLayoutTreeNode - - CF$UID - 236 - - - - $class - - CF$UID - 238 - - children - - CF$UID - 0 - - contentType - 1 - documentArchivableRepresentation - - CF$UID - 230 - - orientation - 0 - parent - - CF$UID - 236 - - - - $class - - CF$UID - 178 - - DocumentLocation - - CF$UID - 176 - - DomainIdentifier - - CF$UID - 166 - - IdentifierPath - - CF$UID - 231 - - IndexOfDocumentIdentifier - - CF$UID - 64 - - - - $class - - CF$UID - 175 - - NS.objects - - - CF$UID - 232 - - - CF$UID - 233 - - - CF$UID - 234 - - - - - $class - - CF$UID - 170 - - Identifier - - CF$UID - 169 - - - - $class - - CF$UID - 170 - - Identifier - - CF$UID - 172 - - - - $class - - CF$UID - 170 - - Identifier - - CF$UID - 235 - - - Pong - - $class - - CF$UID - 238 - - children - - CF$UID - 237 - - contentType - 0 - documentArchivableRepresentation - - CF$UID - 0 - - orientation - 0 - parent - - CF$UID - 0 - - - - $class - - CF$UID - 175 - - NS.objects - - - CF$UID - 229 - - - - - $classes - - IDEWorkspaceTabControllerLayoutTreeNode - NSObject - - $classname - IDEWorkspaceTabControllerLayoutTreeNode - - - $classes - - IDEWorkspaceTabControllerLayoutTree - NSObject - - $classname - IDEWorkspaceTabControllerLayoutTree - - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 200 - - - NS.objects - - - CF$UID - 241 - - - - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 242 - - - CF$UID - 245 - - - - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 203 - - - CF$UID - 204 - - - NS.objects - - - CF$UID - 243 - - - CF$UID - 244 - - - - - 464 - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 203 - - - CF$UID - 204 - - - NS.objects - - - CF$UID - 243 - - - CF$UID - 246 - - - - 216 - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 248 - - - CF$UID - 249 - - - CF$UID - 250 - - - NS.objects - - - CF$UID - 251 - - - CF$UID - 250 - - - CF$UID - 270 - - - - Xcode.IDEKit.Navigator.Structure - SelectedNavigator - Xcode.IDEKit.Navigator.Issues - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 252 - - - CF$UID - 253 - - - CF$UID - 254 - - - CF$UID - 255 - - - CF$UID - 256 - - - CF$UID - 257 - - - CF$UID - 258 - - - NS.objects - - - CF$UID - 259 - - - CF$UID - 15 - - - CF$UID - 260 - - - CF$UID - 15 - - - CF$UID - 15 - - - CF$UID - 262 - - - CF$UID - 267 - - - - IDEVisibleRect - IDEUnsavedDocumentFilteringEnabled - IDENavigatorExpandedItemsBeforeFilteringSet - IDERecentDocumentFilteringEnabled - IDESCMStatusFilteringEnabled - IDESelectedObjects - IDEExpandedItemsSet - {{0, 0}, {213, 636}} - - $class - - CF$UID - 261 - - NS.objects - - - - $classes - - NSSet - NSObject - - $classname - NSSet - - - $class - - CF$UID - 175 - - NS.objects - - - CF$UID - 263 - - - - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 264 - - - CF$UID - 265 - - - CF$UID - 266 - - - - Pong - Classes - GGSNetwork.m - - $class - - CF$UID - 261 - - NS.objects - - - CF$UID - 268 - - - CF$UID - 269 - - - - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 264 - - - - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 264 - - - CF$UID - 265 - - - - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 271 - - - CF$UID - 272 - - - CF$UID - 273 - - - CF$UID - 274 - - - CF$UID - 275 - - - CF$UID - 276 - - - CF$UID - 277 - - - CF$UID - 278 - - - CF$UID - 279 - - - CF$UID - 280 - - - NS.objects - - - CF$UID - 15 - - - CF$UID - 281 - - - CF$UID - 282 - - - CF$UID - 284 - - - CF$UID - 285 - - - CF$UID - 15 - - - CF$UID - 15 - - - CF$UID - 286 - - - CF$UID - 15 - - - CF$UID - 287 - - - - IDEErrorFilteringEnabled - IDEVisibleRect - IDECollapsedFiles - IDEExpandedIssues - IDESelectedNavigables - IDEShowsByType - IDESchemeFilteringEnabled - IDECollapsedTypes - IDERecentFilteringEnabled - IDECollapsedGroups - {{0, 0}, {213, 614}} - - $class - - CF$UID - 283 - - NS.objects - - - - $classes - - NSMutableSet - NSSet - NSObject - - $classname - NSMutableSet - - - $class - - CF$UID - 283 - - NS.objects - - - - $class - - CF$UID - 104 - - NS.objects - - - - $class - - CF$UID - 283 - - NS.objects - - - - $class - - CF$UID - 283 - - NS.objects - - - - $class - - CF$UID - 41 - - NS.keys - - - CF$UID - 200 - - - NS.objects - - - CF$UID - 289 - - - - - $class - - CF$UID - 104 - - NS.objects - - - CF$UID - 290 - - - CF$UID - 292 - - - CF$UID - 294 - - - - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 203 - - - CF$UID - 204 - - - NS.objects - - - CF$UID - 132 - - - CF$UID - 291 - - - - 214 - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 203 - - - CF$UID - 204 - - - NS.objects - - - CF$UID - 130 - - - CF$UID - 293 - - - - 902 - - $class - - CF$UID - 183 - - NS.keys - - - CF$UID - 203 - - - CF$UID - 204 - - - NS.objects - - - CF$UID - 295 - - - CF$UID - 296 - - - - IDEUtilitiesArea - 260 - - $class - - CF$UID - 175 - - NS.objects - - - CF$UID - 121 - - - - {{1385, -205}, {1116, 778}} - - $top - - State - - CF$UID - 1 - - - $version - 100000 - - diff --git a/lib/erlang_js b/lib/erlang_js new file mode 160000 index 0000000..709b568 --- /dev/null +++ b/lib/erlang_js @@ -0,0 +1 @@ +Subproject commit 709b568efbc99c954507d1593bc5633f900bc5dc diff --git a/lib/erlv8 b/lib/erlv8 new file mode 160000 index 0000000..7443cc8 --- /dev/null +++ b/lib/erlv8 @@ -0,0 +1 @@ +Subproject commit 7443cc8e2e06f7907a9e1e44c181255e188cfb97 From 629c1f682171afde87d45467efbcf0b71f3547d6 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Fri, 29 Apr 2011 03:30:20 +0200 Subject: [PATCH 158/192] ggs_gamevm now with v8 and erlang invocations from js. both localstorage and world is callable using GGS.localStorage. TODO modify world using GGS.world instead off GGS.localStorage. TODO lots of testing. --- src/ggs_gamevm.erl | 254 +++++++++++++++++++++++++++++++++------------ 1 file changed, 190 insertions(+), 64 deletions(-) diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 87817fc..c6703c6 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -4,31 +4,33 @@ -module(ggs_gamevm). -behaviour(gen_server). -%% gen_server callbacks --export([init/1, handle_call/3, handle_cast/2, handle_info/2, - terminate/2, code_change/3]). - --record(state, { port, table, global } ). +-include_lib("erlv8/include/erlv8.hrl"). %% API --export([start_link/1, define/3, player_command/5, stop/1, call_js/2]). +-export([start_link/1,stop/1]). +-export([define/3, player_command/5, call_js/2]). + +%% gen_server callbacks +-export([init/1, handle_call/3, handle_cast/2]). +-export([code_change/3, handle_info/2, terminate/2]). + +-record(state, { vm, global, table } ). %% ---------------------------------------------------------------------- % API implementation + %% @doc Create a new VM process. The process ID is returned and can be used %% with for example the define method of this module. -start_link(Table) -> - %erlv8_vm:start(), %c NEW - application:start(erlv8), - %erlang_js:start(), %c OLD %% @TODO: should only be done once - {ok, Pid} = gen_server:start_link(?MODULE, [Table], []), - Pid. +start_link(Table) -> + {ok, AccessVM} = gen_server:start_link(?MODULE, [Table], []), + expose_to_js(AccessVM), + AccessVM. %% @doc Define some new code on the specified VM, returns the atom ok. -define(GameVM, Key, SourceCode) -> - gen_server:cast(GameVM, {define, Key, SourceCode}). %c Mod +define(AccessVM, Key, SourceCode) -> + gen_server:cast(AccessVM, {define, Key, SourceCode}). %% @doc Execute a player command on the specified VM. This function is %% asynchronous, and returns ok. @@ -37,82 +39,206 @@ define(GameVM, Key, SourceCode) -> %% Player = the player running the command %% Command = a game command to run %% Args = arguments for the Command parameter -player_command(GameVM, Key, Player, Command, Args) -> - gen_server:cast(GameVM, {player_command, Key, Player, Command, Args}). +player_command(accessVM, Key, Player, Command, Args) -> + gen_server:cast(accessVM, {player_command, Key, Player, Command, Args}). %% @private % only for tests -call_js(GameVM, SourceCode) -> - gen_server:call(GameVM, {eval, SourceCode}). - +call_js(AccessVM, SourceCode) -> + gen_server:call(AccessVM, {eval, SourceCode}). + % @doc stops the gamevm process -stop(GameVM) -> - gen_server:cast(GameVM, stop). +stop(AccessVM) -> + gen_server:cast(AccessVM, stop). +expose_to_js(AccessVM) -> + expose_db_set_item(AccessVM), + expose_db_remove_item(AccessVM), + expose_db_clear1(AccessVM), + expose_db_clear2(AccessVM), + expose_db_get_item(AccessVM), + expose_db_length(AccessVM), + expose_db_key(AccessVM), + expose_table_send_command(AccessVM). -%% ---------------------------------------------------------------------- - -%% @private -init([Table]) -> +%run() -> +% VM = fetch("vm"), +% JSApp = fetch("jsapp"), +% erlv8_vm:run(VM, JSApp), +% erlv8_vm:run(VM,"js_print('Blah!')"), +% erlv8_vm:run(VM,"setItem('Token', 'World', 'Key', 'Value')"), +% erlv8_vm:run(VM,"setItem('Token', 'World', 'Key2', 'Value2')"), +% Length = ggs_db:length("Token", "World"), +% Value = ggs_db:getItem("Token", "World", "Key"), +% io:format("Length: ~B~n",[Length]), +% io:format("Value: ~s~n", [Value]). + +init([Table]) -> process_flag(trap_exit, true), - %{ok, Port} = js_driver:new(), c Old - {ok, Port} = erlv8_vm:start(), %c New - Global = erlv8_vm:global(Port), %c New - {ok, JSAPISourceCode} = file:read_file("src/ggs_api.js"), - %ok = js:define(Port, JSAPISourceCode), c Old - Global:set_value("src", JSAPISourceCode), %c New - InitGGSJSString = "var GGS = new _GGS(" ++ Table ++ ");", - %ok = js:define(Port, list_to_binary(InitGGSJSString)), c Old - Global:set_value("ggs", InitGGSJSString), %c New - {ok, #state { port = Port, table = Table, global = Global }}. %c Mod + application:start(erlv8), % Start erlv8 + {ok, VM} = erlv8_vm:start(), % Create a JavaScript vm + Global = erlv8_vm:global(VM), % Retrieve JS global + ggs_db:init(), % Initialize the database + {ok, #state { vm = VM, global = Global, table = Table }}. + +%%% Expose ggs_db + +expose_db_set_item(AccessVM) -> + gen_server:cast(AccessVM, set_item). + +expose_db_remove_item(AccessVM) -> + gen_server:cast(AccessVM, remove_item). + +expose_db_clear1(AccessVM) -> + gen_server:cast(AccessVM, clear1). + +expose_db_clear2(AccessVM) -> + gen_server:cast(AccessVM, clear2). + +expose_db_get_item(AccessVM) -> + gen_server:cast(AccessVM, get_item). + +expose_db_length(AccessVM) -> + gen_server:cast(AccessVM, length). + +expose_db_key(AccessVM) -> + gen_server:cast(AccessVM, key). + + +%%% Expose ggs_table + +expose_table_send_command(AccessVM) -> + gen_server:cast(AccessVM, send_command). + +%% TODO: expose_table_send_command_to_all() + +%% Makes a function invokable from JavaScript as: "erlang.Name(Args)" +%expose_fun(Global, Name, Fun) -> +% Global:set_value("erlang", erlv8_object:new([{Name, +% fun (#erlv8_fun_invocation{}, +% [Args]) -> +% Fun(Args) end}])). + +expose_fun(Global, Name, Fun, 1) -> + Global:set_value("GGS.localStorage", erlv8_object:new([{Name, + fun (#erlv8_fun_invocation{}, + [Arg]) -> + Fun(Arg) end}])); + +expose_fun(Global, Name, Fun, 2) -> + Global:set_value("GGS.localStorage", erlv8_object:new([{Name, + fun (#erlv8_fun_invocation{}, + [Arg1,Arg2]) -> + Fun(Arg1,Arg2) end}])); + + +expose_fun(Global, Name, Fun, 3) -> + Global:set_value("GGS.localStorage", erlv8_object:new([{Name, + fun (#erlv8_fun_invocation{}, + [Arg1,Arg2,Arg3]) -> + Fun(Arg1,Arg2,Arg3) end}])); + +expose_fun(Global, Name, Fun, 4) -> + Global:set_value("GGS.localStorage", erlv8_object:new([{Name, + fun (#erlv8_fun_invocation{}, + [Arg1,Arg2,Arg3,Arg4]) -> + Fun(Arg1,Arg2,Arg3,Arg4) + end}])). + + +%% Retrieve a JavaScript file from hard drive and return it +%read_js_file(Filename) -> +% {ok, JSApp} = file:read_file(Filename), +% erlang:binary_to_list(JSApp). + + +%print(Args) -> +% io:format("~s~n", [Args]). + %% private % only needed for the tests -handle_call({eval, SourceCode}, _From, #state { port = Port } = State) -> - %{ok, Ret} = js:eval(Port, list_to_binary(SourceCode)), c Old - {ok, Ret} = erlv8_vm:run(Port, SourceCode), %c New +handle_call({eval, SourceCode}, _From, #state { vm = VM } = State) -> + {ok, Ret} = erlv8_vm:run(VM, SourceCode), {reply, Ret, State}. -%% @private -handle_cast({define, Key, SourceCode}, #state { port = Port, table = Table, global = Global } = State) -> %c Mod - %Ret = js:define(Port, list_to_binary(SourceCode)), %c old +handle_cast({define, Key, SourceCode}, + #state { table = Table, global = Global } = State) -> Global:set_value(Key, SourceCode), - ggs_table:notify_all_players(Table, {"defined", "ok"}), %c ok - {noreply, State}; %c New - %case Ret of %c Old - % ok -> - % ggs_table:notify_all_players(Table, {"defined", "ok"}), - % {noreply, State}; - % Other -> - % ggs_table:notify_all_players(Table, {"defined", "error " ++ Other}), - % {noreply, State} - %end; -handle_cast({player_command, Key, Player, Command, Args}, #state { port = Port, global = Global } = State) -> - %Js = list_to_binary("playerCommand(new Player('" ++ Player ++ "'), '" ++ js_escape(Command) ++ "', '" ++ js_escape(Args) ++ "');"), %c Old - Js = "playerCommand(new Player('" ++ Player ++ "'), '" ++ js_escape(Command) ++ "', '" ++ js_escape(Args) ++ "');", %c New - %%js_driver:define_js(Port, Js), %c old - Global:set_value(Key, Js), %c new - erlang:display(binary_to_list(Js)), + ggs_table:notify_all_players(Table, {"defined", "ok"}), + {noreply, State}; + +handle_cast({player_command, Key, Player, Command, Args}, + #state { global = Global } = State) -> + Js = "playerCommand(new Player('" ++ Player ++ "'), '" ++ + js_escape(Command) ++ "', '" ++ js_escape(Args) ++ "');", + Global:set_value(Key, Js), + erlang:display(binary_to_list(Js)), {noreply, State}; -handle_cast(stop, State) -> + +handle_cast(stop, #state { vm = VM } = State) -> + erlv8_vm:stop(VM), {stop, normal, State}; + +handle_cast(set_item, #state { global = Global } = State) -> + Fun = (fun(GameToken,Ns,Key,Value) -> ggs_db:setItem(GameToken,Ns,Key,Value) end), + expose_fun( Global, "setItem", Fun, 4), + {noreply, State}; + +handle_cast(remove_item, #state { global = Global } = State) -> + Fun = (fun(GameToken,Ns,Key) -> ggs_db:removeItem(GameToken,Ns,Key) end), + expose_fun( Global, "removeItem", Fun, 3), + {noreply, State}; + +handle_cast(clear1, #state { global = Global } = State) -> + Fun = (fun(GameToken) -> ggs_db:clear(GameToken) end), + expose_fun( Global, "clear", Fun, 1), + {noreply, State}; + +handle_cast(clear2, #state { global = Global } = State) -> + Fun = (fun(GameToken,Ns) -> ggs_db:clear(GameToken,Ns) end), + expose_fun( Global, "clear", Fun, 2), + {noreply, State}; + +handle_cast(get_item, #state { global = Global } = State) -> + Fun = (fun(GameToken,Ns,Key) -> ggs_db:getItem(GameToken,Ns,Key) end), + expose_fun( Global, "getItem", Fun, 3), + {noreply, State}; + +handle_cast(length, #state { global = Global } = State) -> + Fun = (fun(GameToken,Ns) -> ggs_db:length(GameToken,Ns) end), + expose_fun( Global, "length", Fun, 2), + {noreply, State}; + +handle_cast(key, #state { global = Global } = State) -> + Fun = (fun(GameToken,Ns,Position) -> ggs_db:key(GameToken,Ns,Position) end), + expose_fun( Global, "key", Fun, 3), + {noreply, State}; + +handle_cast(send_command, #state { global = Global } = State) -> + Fun = (fun(GameToken,PlayerToken,Message) -> ggs_table:send_command(GameToken,PlayerToken,Message) end), + expose_fun( Global, "sendCommand", Fun, 3), + {noreply, State}; + handle_cast(Msg, S) -> error_logger:error_report([unknown_msg, Msg]), {noreply, S}. +%% @private +code_change(_, State, _) -> + {ok, State}. + %% @private handle_info(Msg, S) -> error_logger:error_report([unknown_msg, Msg]), {noreply, S}. + %% @private -terminate(_Reason, _State) -> +terminate(_, _) -> ok. %% @private -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - +%% This function is probably important. Do not touch! js_escape(S) -> - lists:flatmap(fun($\') -> [$\\, $\']; (X) -> [X] end, S). - + lists:flatmap(fun($\') -> [$\\, $\']; (X) -> [X] end, S). From 372f8e63f08ce216d69ed9ba1da25504c7f20381 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Fri, 29 Apr 2011 16:31:52 +0200 Subject: [PATCH 159/192] Can now write GGS.world.get() and GGS.player.get() together with all other functions that should be exposed to js. Except sendCommandToAll which is not yet implemented in erlang. --- src/ggs_gamevm.erl | 289 ++++++++++++++++++++++++++++++++++----------- 1 file changed, 221 insertions(+), 68 deletions(-) diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index c6703c6..b2e5dfe 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -16,6 +16,10 @@ -record(state, { vm, global, table } ). +%% Macros +-define(LOCALSTORAGE, "localstorage"). +-define(WORLD, "world"). +-define(PLAYER, "player"). %% ---------------------------------------------------------------------- % API implementation @@ -51,28 +55,7 @@ call_js(AccessVM, SourceCode) -> stop(AccessVM) -> gen_server:cast(AccessVM, stop). -expose_to_js(AccessVM) -> - expose_db_set_item(AccessVM), - expose_db_remove_item(AccessVM), - expose_db_clear1(AccessVM), - expose_db_clear2(AccessVM), - expose_db_get_item(AccessVM), - expose_db_length(AccessVM), - expose_db_key(AccessVM), - expose_table_send_command(AccessVM). -%run() -> -% VM = fetch("vm"), -% JSApp = fetch("jsapp"), -% erlv8_vm:run(VM, JSApp), -% erlv8_vm:run(VM,"js_print('Blah!')"), -% erlv8_vm:run(VM,"setItem('Token', 'World', 'Key', 'Value')"), -% erlv8_vm:run(VM,"setItem('Token', 'World', 'Key2', 'Value2')"), -% Length = ggs_db:length("Token", "World"), -% Value = ggs_db:getItem("Token", "World", "Key"), -% io:format("Length: ~B~n",[Length]), -% io:format("Value: ~s~n", [Value]). - init([Table]) -> process_flag(trap_exit, true), application:start(erlv8), % Start erlv8 @@ -81,71 +64,181 @@ init([Table]) -> ggs_db:init(), % Initialize the database {ok, #state { vm = VM, global = Global, table = Table }}. -%%% Expose ggs_db +%% Expose to JavaScript -expose_db_set_item(AccessVM) -> - gen_server:cast(AccessVM, set_item). +expose_to_js(AccessVM) -> + expose_localstorage_set_item(AccessVM), + expose_localstorage_get_item(AccessVM), + expose_localstorage_key(AccessVM), + expose_localstorage_length(AccessVM), + expose_localstorage_remove_item(AccessVM), + expose_localstorage_clear1(AccessVM), + expose_localstorage_clear2(AccessVM), -expose_db_remove_item(AccessVM) -> - gen_server:cast(AccessVM, remove_item). + expose_world_set_item(AccessVM), + expose_world_get_item(AccessVM), + expose_world_key(AccessVM), + expose_world_length(AccessVM), + expose_world_remove_item(AccessVM), + expose_world_clear1(AccessVM), + expose_world_clear2(AccessVM), -expose_db_clear1(AccessVM) -> - gen_server:cast(AccessVM, clear1). + expose_player_set_item(AccessVM), + expose_player_get_item(AccessVM), + expose_player_key(AccessVM), + expose_player_length(AccessVM), + expose_player_remove_item(AccessVM), + + expose_table_send_command(AccessVM). -expose_db_clear2(AccessVM) -> - gen_server:cast(AccessVM, clear2). -expose_db_get_item(AccessVM) -> - gen_server:cast(AccessVM, get_item). +%% Helpers + +expose_localstorage_set_item(AccessVM) -> + gen_server:cast(AccessVM, local_storage_set_item). + +expose_localstorage_remove_item(AccessVM) -> + gen_server:cast(AccessVM, local_storage_remove_item). + +expose_localstorage_clear1(AccessVM) -> + gen_server:cast(AccessVM, local_storage_clear1). + +expose_localstorage_clear2(AccessVM) -> + gen_server:cast(AccessVM, local_storage_clear2). + +expose_localstorage_get_item(AccessVM) -> + gen_server:cast(AccessVM, local_storage_get_item). -expose_db_length(AccessVM) -> - gen_server:cast(AccessVM, length). +expose_localstorage_length(AccessVM) -> + gen_server:cast(AccessVM, local_storage_length). -expose_db_key(AccessVM) -> - gen_server:cast(AccessVM, key). +expose_localstorage_key(AccessVM) -> + gen_server:cast(AccessVM, local_storage_key). +expose_world_set_item(AccessVM) -> + gen_server:cast(AccessVM, world_set_item). -%%% Expose ggs_table +expose_world_remove_item(AccessVM) -> + gen_server:cast(AccessVM, world_remove_item). + +expose_world_clear1(AccessVM) -> + gen_server:cast(AccessVM, world_clear1). + +expose_world_clear2(AccessVM) -> + gen_server:cast(AccessVM, world_clear2). + +expose_world_get_item(AccessVM) -> + gen_server:cast(AccessVM, world_get_item). + +expose_world_length(AccessVM) -> + gen_server:cast(AccessVM, world_length). + +expose_world_key(AccessVM) -> + gen_server:cast(AccessVM, world_key). + +expose_player_set_item(AccessVM) -> + gen_server:cast(AccessVM, player_set_item). + +expose_player_remove_item(AccessVM) -> + gen_server:cast(AccessVM, player_remove_item). + +expose_player_get_item(AccessVM) -> + gen_server:cast(AccessVM, player_get_item). + +expose_player_length(AccessVM) -> + gen_server:cast(AccessVM, player_length). + +expose_player_key(AccessVM) -> + gen_server:cast(AccessVM, player_key). + +%% Expose ggs_table expose_table_send_command(AccessVM) -> gen_server:cast(AccessVM, send_command). + %% TODO: expose_table_send_command_to_all() -%% Makes a function invokable from JavaScript as: "erlang.Name(Args)" -%expose_fun(Global, Name, Fun) -> -% Global:set_value("erlang", erlv8_object:new([{Name, -% fun (#erlv8_fun_invocation{}, -% [Args]) -> -% Fun(Args) end}])). -expose_fun(Global, Name, Fun, 1) -> +%% Expose helpers + +expose_fun_localstorage(Global, Name, Fun, 1) -> Global:set_value("GGS.localStorage", erlv8_object:new([{Name, fun (#erlv8_fun_invocation{}, [Arg]) -> Fun(Arg) end}])); -expose_fun(Global, Name, Fun, 2) -> +expose_fun_localstorage(Global, Name, Fun, 2) -> Global:set_value("GGS.localStorage", erlv8_object:new([{Name, fun (#erlv8_fun_invocation{}, [Arg1,Arg2]) -> Fun(Arg1,Arg2) end}])); -expose_fun(Global, Name, Fun, 3) -> +expose_fun_localstorage(Global, Name, Fun, 3) -> Global:set_value("GGS.localStorage", erlv8_object:new([{Name, fun (#erlv8_fun_invocation{}, [Arg1,Arg2,Arg3]) -> Fun(Arg1,Arg2,Arg3) end}])); -expose_fun(Global, Name, Fun, 4) -> +expose_fun_localstorage(Global, Name, Fun, 4) -> Global:set_value("GGS.localStorage", erlv8_object:new([{Name, fun (#erlv8_fun_invocation{}, [Arg1,Arg2,Arg3,Arg4]) -> Fun(Arg1,Arg2,Arg3,Arg4) end}])). + expose_fun_world(Global, Name, Fun, 1) -> + Global:set_value("GGS.world", erlv8_object:new([{Name, + fun (#erlv8_fun_invocation{}, + [Arg]) -> + Fun(Arg) end}])); + +expose_fun_world(Global, Name, Fun, 2) -> + Global:set_value("GGS.world", erlv8_object:new([{Name, + fun (#erlv8_fun_invocation{}, + [Arg1,Arg2]) -> + Fun(Arg1,Arg2) end}])); + +expose_fun_world(Global, Name, Fun, 3) -> + Global:set_value("GGS.world", erlv8_object:new([{Name, + fun (#erlv8_fun_invocation{}, + [Arg1,Arg2,Arg3]) -> + Fun(Arg1,Arg2,Arg3) end}])); + +expose_fun_world(Global, Name, Fun, 4) -> + Global:set_value("GGS.world", erlv8_object:new([{Name, + fun (#erlv8_fun_invocation{}, + [Arg1,Arg2,Arg3,Arg4]) -> + Fun(Arg1,Arg2,Arg3,Arg4) + end}])). +expose_fun_player(Global, Name, Fun, 1) -> + Global:set_value("GGS.world", erlv8_object:new([{Name, + fun (#erlv8_fun_invocation{}, + [Arg]) -> + Fun(Arg) end}])); + +expose_fun_player(Global, Name, Fun, 2) -> + Global:set_value("GGS.world", erlv8_object:new([{Name, + fun (#erlv8_fun_invocation{}, + [Arg1,Arg2]) -> + Fun(Arg1,Arg2) end}])); + + +expose_fun_player(Global, Name, Fun, 3) -> + Global:set_value("GGS.world", erlv8_object:new([{Name, + fun (#erlv8_fun_invocation{}, + [Arg1,Arg2,Arg3]) -> + Fun(Arg1,Arg2,Arg3) end}])); + +expose_fun_player(Global, Name, Fun, 4) -> + Global:set_value("GGS.world", erlv8_object:new([{Name, + fun (#erlv8_fun_invocation{}, + [Arg1,Arg2,Arg3,Arg4]) -> + Fun(Arg1,Arg2,Arg3,Arg4) + end}])). + %% Retrieve a JavaScript file from hard drive and return it %read_js_file(Filename) -> % {ok, JSApp} = file:read_file(Filename), @@ -180,44 +273,104 @@ handle_cast(stop, #state { vm = VM } = State) -> erlv8_vm:stop(VM), {stop, normal, State}; -handle_cast(set_item, #state { global = Global } = State) -> - Fun = (fun(GameToken,Ns,Key,Value) -> ggs_db:setItem(GameToken,Ns,Key,Value) end), - expose_fun( Global, "setItem", Fun, 4), + handle_cast(localstorage_set_item, #state { global = Global } = State) -> + Fun = (fun(GameToken,Key,Value) -> ggs_db:setItem(GameToken,?LOCALSTORAGE,Key,Value) end), + expose_fun_localstorage( Global, "setItem", Fun, 3), {noreply, State}; -handle_cast(remove_item, #state { global = Global } = State) -> - Fun = (fun(GameToken,Ns,Key) -> ggs_db:removeItem(GameToken,Ns,Key) end), - expose_fun( Global, "removeItem", Fun, 3), +handle_cast(localstorage_get_item, #state { global = Global } = State) -> + Fun = (fun(GameToken,Key) -> ggs_db:getItem(GameToken,?LOCALSTORAGE,Key) end), + expose_fun_localstorage( Global, "getItem", Fun, 2), {noreply, State}; -handle_cast(clear1, #state { global = Global } = State) -> +handle_cast(localstorage_key, #state { global = Global } = State) -> + Fun = (fun(GameToken,Position) -> ggs_db:key(GameToken,?LOCALSTORAGE,Position) end), + expose_fun_localstorage( Global, "key", Fun, 2), + {noreply, State}; + +handle_cast(localstorage_length, #state { global = Global } = State) -> + Fun = (fun(GameToken) -> ggs_db:length(GameToken,?LOCALSTORAGE) end), + expose_fun_localstorage( Global, "length", Fun, 1), + {noreply, State}; + +handle_cast(localstorage_remove_item, #state { global = Global } = State) -> + Fun = (fun(GameToken,Key) -> ggs_db:removeItem(GameToken,?LOCALSTORAGE,Key) end), + expose_fun_localstorage( Global, "removeItem", Fun, 2), + {noreply, State}; + +handle_cast(localstorage_clear1, #state { global = Global } = State) -> Fun = (fun(GameToken) -> ggs_db:clear(GameToken) end), - expose_fun( Global, "clear", Fun, 1), + expose_fun_localstorage( Global, "clear", Fun, 1), + {noreply, State}; + +handle_cast(localstorage_clear2, #state { global = Global } = State) -> + Fun = (fun(GameToken,Key) -> ggs_db:removeItem(GameToken,?LOCALSTORAGE,Key) end), + expose_fun_localstorage( Global, "clear", Fun, 2), + {noreply, State}; + +handle_cast(world_set_item, #state { global = Global } = State) -> + Fun = (fun(GameToken,Key,Value) -> ggs_db:setItem(GameToken,?WORLD,Key,Value) end), + expose_fun_world( Global, "setItem", Fun, 3), {noreply, State}; -handle_cast(clear2, #state { global = Global } = State) -> - Fun = (fun(GameToken,Ns) -> ggs_db:clear(GameToken,Ns) end), - expose_fun( Global, "clear", Fun, 2), +handle_cast(world_get_item, #state { global = Global } = State) -> + Fun = (fun(GameToken,Key) -> ggs_db:getItem(GameToken,?WORLD,Key) end), + expose_fun_world( Global, "getItem", Fun, 2), {noreply, State}; -handle_cast(get_item, #state { global = Global } = State) -> - Fun = (fun(GameToken,Ns,Key) -> ggs_db:getItem(GameToken,Ns,Key) end), - expose_fun( Global, "getItem", Fun, 3), +handle_cast(world_key, #state { global = Global } = State) -> + Fun = (fun(GameToken,Position) -> ggs_db:key(GameToken,?WORLD,Position) end), + expose_fun_world( Global, "key", Fun, 2), + {noreply, State}; + +handle_cast(world_length, #state { global = Global } = State) -> + Fun = (fun(GameToken) -> ggs_db:length(GameToken,?WORLD) end), + expose_fun_world( Global, "length", Fun, 1), {noreply, State}; -handle_cast(length, #state { global = Global } = State) -> - Fun = (fun(GameToken,Ns) -> ggs_db:length(GameToken,Ns) end), - expose_fun( Global, "length", Fun, 2), +handle_cast(world_remove_item, #state { global = Global } = State) -> + Fun = (fun(GameToken,Key) -> ggs_db:removeItem(GameToken,?WORLD,Key) end), + expose_fun_world( Global, "removeItem", Fun, 2), + {noreply, State}; + +handle_cast(world_clear1, #state { global = Global } = State) -> + Fun = (fun(GameToken) -> ggs_db:clear(GameToken) end), + expose_fun_world( Global, "clear", Fun, 1), + {noreply, State}; + +handle_cast(world_clear2, #state { global = Global } = State) -> + Fun = (fun(GameToken,Key) -> ggs_db:removeItem(GameToken,?WORLD,Key,Key) end), + expose_fun_world( Global, "clear", Fun, 2), {noreply, State}; -handle_cast(key, #state { global = Global } = State) -> - Fun = (fun(GameToken,Ns,Position) -> ggs_db:key(GameToken,Ns,Position) end), - expose_fun( Global, "key", Fun, 3), +handle_cast(player_set_item, #state { global = Global } = State) -> + Fun = (fun(GameToken,Key,Value) -> ggs_db:setItem(GameToken,?PLAYER,Key,Value) end), + expose_fun_player( Global, "setItem", Fun, 3), {noreply, State}; +handle_cast(player_get_item, #state { global = Global } = State) -> + Fun = (fun(GameToken,Key) -> ggs_db:getItem(GameToken,?PLAYER,Key) end), + expose_fun_player( Global, "getItem", Fun, 2), + {noreply, State}; + +handle_cast(player_key, #state { global = Global } = State) -> + Fun = (fun(GameToken,Position) -> ggs_db:key(GameToken,?PLAYER,Position) end), + expose_fun_player( Global, "key", Fun, 2), + {noreply, State}; + +handle_cast(player_length, #state { global = Global } = State) -> + Fun = (fun(GameToken) -> ggs_db:length(GameToken,?PLAYER) end), + expose_fun_player( Global, "length", Fun, 1), + {noreply, State}; + +handle_cast(player_remove_item, #state { global = Global } = State) -> + Fun = (fun(GameToken,Key) -> ggs_db:removeItem(GameToken,?PLAYER,Key) end), + expose_fun_player( Global, "removeItem", Fun, 2), + {noreply, State}; + handle_cast(send_command, #state { global = Global } = State) -> Fun = (fun(GameToken,PlayerToken,Message) -> ggs_table:send_command(GameToken,PlayerToken,Message) end), - expose_fun( Global, "sendCommand", Fun, 3), + expose_fun_player( Global, "sendCommand", Fun, 3), {noreply, State}; handle_cast(Msg, S) -> From 8d32257feb75e52351b1be256677aba9fe8a855b Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Fri, 29 Apr 2011 17:54:08 +0200 Subject: [PATCH 160/192] Fixed local_storage to localstorage bug --- src/ggs_gamevm.erl | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index b2e5dfe..5ddc553 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -4,10 +4,10 @@ -module(ggs_gamevm). -behaviour(gen_server). --include_lib("erlv8/include/erlv8.hrl"). +-include_lib("lib/erlv8/include/erlv8.hrl"). %% API --export([start_link/1,stop/1]). +-export([start/0,start_link/1,stop/1]). -export([define/3, player_command/5, call_js/2]). %% gen_server callbacks @@ -24,6 +24,9 @@ %% ---------------------------------------------------------------------- % API implementation +start() -> + Table = "table", + start_link(Table). %% @doc Create a new VM process. The process ID is returned and can be used %% with for example the define method of this module. @@ -95,25 +98,25 @@ expose_to_js(AccessVM) -> %% Helpers expose_localstorage_set_item(AccessVM) -> - gen_server:cast(AccessVM, local_storage_set_item). + gen_server:cast(AccessVM, localstorage_set_item). expose_localstorage_remove_item(AccessVM) -> - gen_server:cast(AccessVM, local_storage_remove_item). + gen_server:cast(AccessVM, localstorage_remove_item). expose_localstorage_clear1(AccessVM) -> - gen_server:cast(AccessVM, local_storage_clear1). + gen_server:cast(AccessVM, localstorage_clear1). expose_localstorage_clear2(AccessVM) -> - gen_server:cast(AccessVM, local_storage_clear2). + gen_server:cast(AccessVM, localstorage_clear2). expose_localstorage_get_item(AccessVM) -> - gen_server:cast(AccessVM, local_storage_get_item). + gen_server:cast(AccessVM, localstorage_get_item). expose_localstorage_length(AccessVM) -> - gen_server:cast(AccessVM, local_storage_length). + gen_server:cast(AccessVM, localstorage_length). expose_localstorage_key(AccessVM) -> - gen_server:cast(AccessVM, local_storage_key). + gen_server:cast(AccessVM, localstorage_key). expose_world_set_item(AccessVM) -> gen_server:cast(AccessVM, world_set_item). @@ -261,6 +264,8 @@ handle_cast({define, Key, SourceCode}, ggs_table:notify_all_players(Table, {"defined", "ok"}), {noreply, State}; + + handle_cast({player_command, Key, Player, Command, Args}, #state { global = Global } = State) -> Js = "playerCommand(new Player('" ++ Player ++ "'), '" ++ From b69e75432a8afe5273ca867822e22ab742ecc5d4 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Fri, 29 Apr 2011 19:59:42 +0200 Subject: [PATCH 161/192] changed from spidermonkey to v8 for tests --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 442fa5b..f8dd31d 100644 --- a/Makefile +++ b/Makefile @@ -25,7 +25,7 @@ ifeq ($(strip $(MOD)),) cd $(BEAMDIR) ; erl -noinput -pa ../erlang_js/ebin -eval 'eunit:test({dir, "."}, [verbose]), init:stop()' ; else $(ERLC) $(ERLCFLAGS) $(BEAMDIR) $(TESTDIR)/$(MOD)_test.erl ; - cd $(BEAMDIR) ; erl -noinput -pa ../erlang_js/ebin -eval 'eunit:test($(MOD)_test, [verbose]), init:stop()' ; + cd $(BEAMDIR) ; erl -noinput -pa ../lib/erlv8/ebin -eval 'eunit:test($(MOD)_test, [verbose]), init:stop()' ; endif clean: @@ -47,4 +47,4 @@ run: -s start_ggs force_look: - true \ No newline at end of file + true From 2daf20c039e5e6f58be08d0ab45f4ab4ced9658a Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Sat, 30 Apr 2011 18:55:05 +0200 Subject: [PATCH 162/192] some bugfixes to kallfaktorns erlv8 code --- Makefile | 2 +- src/ggs_gamevm.erl | 353 ++++++-------------------------------- src/ggs_gamevm_p.erl | 2 +- src/ggs_player.erl | 14 +- src/ggs_protocol.erl | 6 +- src/ggs_protocol.erl.bk2 | 163 ------------------ src/ggs_protocol.erl.orig | 146 ---------------- src/ggs_table.erl | 8 +- 8 files changed, 66 insertions(+), 628 deletions(-) delete mode 100644 src/ggs_protocol.erl.bk2 delete mode 100644 src/ggs_protocol.erl.orig diff --git a/Makefile b/Makefile index 442fa5b..37b48b6 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,7 @@ TESTDIR=tests LIBDIR=lib BEAMDIR=ebin -all: compile +all: compile erlv8 compile: mkdir -p $(BEAMDIR) ; diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 5ddc553..cfbdbe9 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -8,7 +8,7 @@ %% API -export([start/0,start_link/1,stop/1]). --export([define/3, player_command/5, call_js/2]). +-export([define/2, player_command/4, call_js/2]). %% gen_server callbacks -export([init/1, handle_call/3, handle_cast/2]). @@ -31,13 +31,12 @@ start() -> %% @doc Create a new VM process. The process ID is returned and can be used %% with for example the define method of this module. start_link(Table) -> - {ok, AccessVM} = gen_server:start_link(?MODULE, [Table], []), - expose_to_js(AccessVM), - AccessVM. + {ok, GameVM} = gen_server:start_link(?MODULE, [Table], []), + GameVM. %% @doc Define some new code on the specified VM, returns the atom ok. -define(AccessVM, Key, SourceCode) -> - gen_server:cast(AccessVM, {define, Key, SourceCode}). +define(GameVM, SourceCode) -> + gen_server:cast(GameVM, {define, SourceCode}). %% @doc Execute a player command on the specified VM. This function is %% asynchronous, and returns ok. @@ -46,17 +45,17 @@ define(AccessVM, Key, SourceCode) -> %% Player = the player running the command %% Command = a game command to run %% Args = arguments for the Command parameter -player_command(accessVM, Key, Player, Command, Args) -> - gen_server:cast(accessVM, {player_command, Key, Player, Command, Args}). +player_command(GameVm, Player, Command, Args) -> + gen_server:cast(GameVm, {player_command, Player, Command, Args}). %% @private % only for tests -call_js(AccessVM, SourceCode) -> - gen_server:call(AccessVM, {eval, SourceCode}). +call_js(GameVM, SourceCode) -> + gen_server:call(GameVM, {eval, SourceCode}). % @doc stops the gamevm process -stop(AccessVM) -> - gen_server:cast(AccessVM, stop). +stop(GameVM) -> + gen_server:cast(GameVM, stop). init([Table]) -> @@ -65,192 +64,40 @@ init([Table]) -> {ok, VM} = erlv8_vm:start(), % Create a JavaScript vm Global = erlv8_vm:global(VM), % Retrieve JS global ggs_db:init(), % Initialize the database - {ok, #state { vm = VM, global = Global, table = Table }}. + NewGlobal = expose(Global, Table), + {ok, #state { vm = VM, global = NewGlobal, table = Table }}. -%% Expose to JavaScript +% @doc Exposes some GGS functions to JavaScript +expose(Global, Table) -> + Global:set_value("GGS", erlv8_object:new([ + {"localStorage", erlv8_object:new([ + {"setItem", fun(#erlv8_fun_invocation{}, [Key, Val])-> ggs_db:setItem(Table, "localStorage", Key, Val) end}, + {"removeItem", fun(#erlv8_fun_invocation{}, [Key])-> ggs_db:removeItem(Table, "localStorage", Key) end}, + {"clear", fun(#erlv8_fun_invocation{}, [])-> ggs_db:clear(Table, "localStorage") end}, + {"getItem", fun(#erlv8_fun_invocation{}, [Key])-> ggs_db:getItem(Table, "localStorage", Key) end}, + {"length", fun(#erlv8_fun_invocation{}, [])-> ggs_db:length(Table, "localStorage") end}, + {"key", fun(#erlv8_fun_invocation{}, [Position])-> ggs_db:key(Table, "localStorage", Position) end} + ])}, + {"world", erlv8_object:new([ + {"setItem", fun(#erlv8_fun_invocation{}, [Key, Val])-> ggs_db:setItem(Table, "world", Key, Val) end}, + {"removeItem", fun(#erlv8_fun_invocation{}, [Key])-> ggs_db:removeItem(Table, "world", Key) end}, + {"clear", fun(#erlv8_fun_invocation{}, [])-> ggs_db:clear(Table, "world") end}, + {"getItem", fun(#erlv8_fun_invocation{}, [Key])-> ggs_db:getItem(Table, "world", Key) end}, + {"length", fun(#erlv8_fun_invocation{}, [])-> ggs_db:length(Table, "world") end}, + {"key", fun(#erlv8_fun_invocation{}, [Position])-> ggs_db:key(Table, "world", Position) end} + ])}, + {"sendCommand", fun(#erlv8_fun_invocation{}, [Player, Command, Args])-> + erlang:display(Table), + ggs_table:send_command(Table, Player, {Command, Args}) + end}, + {"sendCommandToAll", fun(#erlv8_fun_invocation{}, [Command, Args])-> ggs_table:notify_all_players(Table, {Command, Args}) end} + %{"setTimeout", fund(#erlv8_fun_invocation{}, [Time, FunctionName])-> setTimeout(Time, FunctionName) end} + ])). -expose_to_js(AccessVM) -> - expose_localstorage_set_item(AccessVM), - expose_localstorage_get_item(AccessVM), - expose_localstorage_key(AccessVM), - expose_localstorage_length(AccessVM), - expose_localstorage_remove_item(AccessVM), - expose_localstorage_clear1(AccessVM), - expose_localstorage_clear2(AccessVM), - - expose_world_set_item(AccessVM), - expose_world_get_item(AccessVM), - expose_world_key(AccessVM), - expose_world_length(AccessVM), - expose_world_remove_item(AccessVM), - expose_world_clear1(AccessVM), - expose_world_clear2(AccessVM), - - expose_player_set_item(AccessVM), - expose_player_get_item(AccessVM), - expose_player_key(AccessVM), - expose_player_length(AccessVM), - expose_player_remove_item(AccessVM), - - expose_table_send_command(AccessVM). - - -%% Helpers - -expose_localstorage_set_item(AccessVM) -> - gen_server:cast(AccessVM, localstorage_set_item). - -expose_localstorage_remove_item(AccessVM) -> - gen_server:cast(AccessVM, localstorage_remove_item). - -expose_localstorage_clear1(AccessVM) -> - gen_server:cast(AccessVM, localstorage_clear1). - -expose_localstorage_clear2(AccessVM) -> - gen_server:cast(AccessVM, localstorage_clear2). - -expose_localstorage_get_item(AccessVM) -> - gen_server:cast(AccessVM, localstorage_get_item). - -expose_localstorage_length(AccessVM) -> - gen_server:cast(AccessVM, localstorage_length). - -expose_localstorage_key(AccessVM) -> - gen_server:cast(AccessVM, localstorage_key). - -expose_world_set_item(AccessVM) -> - gen_server:cast(AccessVM, world_set_item). - -expose_world_remove_item(AccessVM) -> - gen_server:cast(AccessVM, world_remove_item). - -expose_world_clear1(AccessVM) -> - gen_server:cast(AccessVM, world_clear1). - -expose_world_clear2(AccessVM) -> - gen_server:cast(AccessVM, world_clear2). - -expose_world_get_item(AccessVM) -> - gen_server:cast(AccessVM, world_get_item). - -expose_world_length(AccessVM) -> - gen_server:cast(AccessVM, world_length). - -expose_world_key(AccessVM) -> - gen_server:cast(AccessVM, world_key). - -expose_player_set_item(AccessVM) -> - gen_server:cast(AccessVM, player_set_item). - -expose_player_remove_item(AccessVM) -> - gen_server:cast(AccessVM, player_remove_item). - -expose_player_get_item(AccessVM) -> - gen_server:cast(AccessVM, player_get_item). - -expose_player_length(AccessVM) -> - gen_server:cast(AccessVM, player_length). - -expose_player_key(AccessVM) -> - gen_server:cast(AccessVM, player_key). - -%% Expose ggs_table - -expose_table_send_command(AccessVM) -> - gen_server:cast(AccessVM, send_command). - - -%% TODO: expose_table_send_command_to_all() - - -%% Expose helpers - -expose_fun_localstorage(Global, Name, Fun, 1) -> - Global:set_value("GGS.localStorage", erlv8_object:new([{Name, - fun (#erlv8_fun_invocation{}, - [Arg]) -> - Fun(Arg) end}])); - -expose_fun_localstorage(Global, Name, Fun, 2) -> - Global:set_value("GGS.localStorage", erlv8_object:new([{Name, - fun (#erlv8_fun_invocation{}, - [Arg1,Arg2]) -> - Fun(Arg1,Arg2) end}])); - - -expose_fun_localstorage(Global, Name, Fun, 3) -> - Global:set_value("GGS.localStorage", erlv8_object:new([{Name, - fun (#erlv8_fun_invocation{}, - [Arg1,Arg2,Arg3]) -> - Fun(Arg1,Arg2,Arg3) end}])); - -expose_fun_localstorage(Global, Name, Fun, 4) -> - Global:set_value("GGS.localStorage", erlv8_object:new([{Name, - fun (#erlv8_fun_invocation{}, - [Arg1,Arg2,Arg3,Arg4]) -> - Fun(Arg1,Arg2,Arg3,Arg4) - end}])). - - expose_fun_world(Global, Name, Fun, 1) -> - Global:set_value("GGS.world", erlv8_object:new([{Name, - fun (#erlv8_fun_invocation{}, - [Arg]) -> - Fun(Arg) end}])); - -expose_fun_world(Global, Name, Fun, 2) -> - Global:set_value("GGS.world", erlv8_object:new([{Name, - fun (#erlv8_fun_invocation{}, - [Arg1,Arg2]) -> - Fun(Arg1,Arg2) end}])); - - -expose_fun_world(Global, Name, Fun, 3) -> - Global:set_value("GGS.world", erlv8_object:new([{Name, - fun (#erlv8_fun_invocation{}, - [Arg1,Arg2,Arg3]) -> - Fun(Arg1,Arg2,Arg3) end}])); - -expose_fun_world(Global, Name, Fun, 4) -> - Global:set_value("GGS.world", erlv8_object:new([{Name, - fun (#erlv8_fun_invocation{}, - [Arg1,Arg2,Arg3,Arg4]) -> - Fun(Arg1,Arg2,Arg3,Arg4) - end}])). -expose_fun_player(Global, Name, Fun, 1) -> - Global:set_value("GGS.world", erlv8_object:new([{Name, - fun (#erlv8_fun_invocation{}, - [Arg]) -> - Fun(Arg) end}])); - -expose_fun_player(Global, Name, Fun, 2) -> - Global:set_value("GGS.world", erlv8_object:new([{Name, - fun (#erlv8_fun_invocation{}, - [Arg1,Arg2]) -> - Fun(Arg1,Arg2) end}])); - - -expose_fun_player(Global, Name, Fun, 3) -> - Global:set_value("GGS.world", erlv8_object:new([{Name, - fun (#erlv8_fun_invocation{}, - [Arg1,Arg2,Arg3]) -> - Fun(Arg1,Arg2,Arg3) end}])); - -expose_fun_player(Global, Name, Fun, 4) -> - Global:set_value("GGS.world", erlv8_object:new([{Name, - fun (#erlv8_fun_invocation{}, - [Arg1,Arg2,Arg3,Arg4]) -> - Fun(Arg1,Arg2,Arg3,Arg4) - end}])). - %% Retrieve a JavaScript file from hard drive and return it %read_js_file(Filename) -> % {ok, JSApp} = file:read_file(Filename), % erlang:binary_to_list(JSApp). - - -%print(Args) -> -% io:format("~s~n", [Args]). - %% private % only needed for the tests @@ -258,126 +105,24 @@ handle_call({eval, SourceCode}, _From, #state { vm = VM } = State) -> {ok, Ret} = erlv8_vm:run(VM, SourceCode), {reply, Ret, State}. -handle_cast({define, Key, SourceCode}, - #state { table = Table, global = Global } = State) -> - Global:set_value(Key, SourceCode), - ggs_table:notify_all_players(Table, {"defined", "ok"}), +handle_cast({define, SourceCode}, #state { table = Table, vm = VM } = State) -> + R = erlv8_vm:run(VM, "playerCommand"), + case R of + {throw, _} -> {ok, Ret} = erlv8_vm:run(VM, SourceCode), + ggs_table:notify_all_players(Table, {"defined", "ok"}); + _ -> ok + end {noreply, State}; - - -handle_cast({player_command, Key, Player, Command, Args}, - #state { global = Global } = State) -> - Js = "playerCommand(new Player('" ++ Player ++ "'), '" ++ - js_escape(Command) ++ "', '" ++ js_escape(Args) ++ "');", - Global:set_value(Key, Js), - erlang:display(binary_to_list(Js)), +handle_cast({player_command, Player, Command, Args}, #state { vm = VM } = State) -> + Js = "playerCommand('" ++ Player ++ "', '" ++ js_escape(Command) ++ "', '" ++ js_escape(Args) ++ "');", + {ok, _Ret} = erlv8_vm:run(VM, Js), {noreply, State}; handle_cast(stop, #state { vm = VM } = State) -> erlv8_vm:stop(VM), {stop, normal, State}; - handle_cast(localstorage_set_item, #state { global = Global } = State) -> - Fun = (fun(GameToken,Key,Value) -> ggs_db:setItem(GameToken,?LOCALSTORAGE,Key,Value) end), - expose_fun_localstorage( Global, "setItem", Fun, 3), - {noreply, State}; - -handle_cast(localstorage_get_item, #state { global = Global } = State) -> - Fun = (fun(GameToken,Key) -> ggs_db:getItem(GameToken,?LOCALSTORAGE,Key) end), - expose_fun_localstorage( Global, "getItem", Fun, 2), - {noreply, State}; - -handle_cast(localstorage_key, #state { global = Global } = State) -> - Fun = (fun(GameToken,Position) -> ggs_db:key(GameToken,?LOCALSTORAGE,Position) end), - expose_fun_localstorage( Global, "key", Fun, 2), - {noreply, State}; - -handle_cast(localstorage_length, #state { global = Global } = State) -> - Fun = (fun(GameToken) -> ggs_db:length(GameToken,?LOCALSTORAGE) end), - expose_fun_localstorage( Global, "length", Fun, 1), - {noreply, State}; - -handle_cast(localstorage_remove_item, #state { global = Global } = State) -> - Fun = (fun(GameToken,Key) -> ggs_db:removeItem(GameToken,?LOCALSTORAGE,Key) end), - expose_fun_localstorage( Global, "removeItem", Fun, 2), - {noreply, State}; - -handle_cast(localstorage_clear1, #state { global = Global } = State) -> - Fun = (fun(GameToken) -> ggs_db:clear(GameToken) end), - expose_fun_localstorage( Global, "clear", Fun, 1), - {noreply, State}; - -handle_cast(localstorage_clear2, #state { global = Global } = State) -> - Fun = (fun(GameToken,Key) -> ggs_db:removeItem(GameToken,?LOCALSTORAGE,Key) end), - expose_fun_localstorage( Global, "clear", Fun, 2), - {noreply, State}; - -handle_cast(world_set_item, #state { global = Global } = State) -> - Fun = (fun(GameToken,Key,Value) -> ggs_db:setItem(GameToken,?WORLD,Key,Value) end), - expose_fun_world( Global, "setItem", Fun, 3), - {noreply, State}; - -handle_cast(world_get_item, #state { global = Global } = State) -> - Fun = (fun(GameToken,Key) -> ggs_db:getItem(GameToken,?WORLD,Key) end), - expose_fun_world( Global, "getItem", Fun, 2), - {noreply, State}; - -handle_cast(world_key, #state { global = Global } = State) -> - Fun = (fun(GameToken,Position) -> ggs_db:key(GameToken,?WORLD,Position) end), - expose_fun_world( Global, "key", Fun, 2), - {noreply, State}; - -handle_cast(world_length, #state { global = Global } = State) -> - Fun = (fun(GameToken) -> ggs_db:length(GameToken,?WORLD) end), - expose_fun_world( Global, "length", Fun, 1), - {noreply, State}; - -handle_cast(world_remove_item, #state { global = Global } = State) -> - Fun = (fun(GameToken,Key) -> ggs_db:removeItem(GameToken,?WORLD,Key) end), - expose_fun_world( Global, "removeItem", Fun, 2), - {noreply, State}; - -handle_cast(world_clear1, #state { global = Global } = State) -> - Fun = (fun(GameToken) -> ggs_db:clear(GameToken) end), - expose_fun_world( Global, "clear", Fun, 1), - {noreply, State}; - -handle_cast(world_clear2, #state { global = Global } = State) -> - Fun = (fun(GameToken,Key) -> ggs_db:removeItem(GameToken,?WORLD,Key,Key) end), - expose_fun_world( Global, "clear", Fun, 2), - {noreply, State}; - -handle_cast(player_set_item, #state { global = Global } = State) -> - Fun = (fun(GameToken,Key,Value) -> ggs_db:setItem(GameToken,?PLAYER,Key,Value) end), - expose_fun_player( Global, "setItem", Fun, 3), - {noreply, State}; - -handle_cast(player_get_item, #state { global = Global } = State) -> - Fun = (fun(GameToken,Key) -> ggs_db:getItem(GameToken,?PLAYER,Key) end), - expose_fun_player( Global, "getItem", Fun, 2), - {noreply, State}; - -handle_cast(player_key, #state { global = Global } = State) -> - Fun = (fun(GameToken,Position) -> ggs_db:key(GameToken,?PLAYER,Position) end), - expose_fun_player( Global, "key", Fun, 2), - {noreply, State}; - -handle_cast(player_length, #state { global = Global } = State) -> - Fun = (fun(GameToken) -> ggs_db:length(GameToken,?PLAYER) end), - expose_fun_player( Global, "length", Fun, 1), - {noreply, State}; - -handle_cast(player_remove_item, #state { global = Global } = State) -> - Fun = (fun(GameToken,Key) -> ggs_db:removeItem(GameToken,?PLAYER,Key) end), - expose_fun_player( Global, "removeItem", Fun, 2), - {noreply, State}; - -handle_cast(send_command, #state { global = Global } = State) -> - Fun = (fun(GameToken,PlayerToken,Message) -> ggs_table:send_command(GameToken,PlayerToken,Message) end), - expose_fun_player( Global, "sendCommand", Fun, 3), - {noreply, State}; - handle_cast(Msg, S) -> error_logger:error_report([unknown_msg, Msg]), {noreply, S}. diff --git a/src/ggs_gamevm_p.erl b/src/ggs_gamevm_p.erl index bb63eb2..7fcad8e 100644 --- a/src/ggs_gamevm_p.erl +++ b/src/ggs_gamevm_p.erl @@ -226,7 +226,7 @@ intern_start(Table, Player) -> %erlang:display("P2 ready, waiting."), ggs_table:send_command(Table, Player, {"game", "wait"}) end; - Other -> + _Other -> ok %erlang:display(Other) end. diff --git a/src/ggs_player.erl b/src/ggs_player.erl index 2e07527..c4f822e 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -34,12 +34,12 @@ join_table(Num) -> T; {error, no_such_table} -> case ggs_coordinator:create_table({force, integer_to_list(Num)}) of - {ok, TBToken} -> ok + {ok, _TBToken} -> ok end, case ggs_coordinator:join_table(integer_to_list(Num)) of {ok, T} -> %io:format("Creating new table: ~p~n", [T]), T; - {error, E} -> %erlang:display(E), + {error, _E} -> %erlang:display(E), join_table(Num+1) end; {error, table_full} -> @@ -93,16 +93,18 @@ stop(Player) -> handle_call(_Request, _From, St) -> {stop, unimplemented, St}. handle_cast({tcp, _Socket, Data}, #state { protocol = Protocol } = _State) -> - ggs_protocol:parse(Protocol, Data); + ggs_protocol:parse(Protocol, Data), + {noreply, State} handle_cast({tcp_closed, _Socket}, _State) -> - erlang:display("Client disconnected, but THIS IS NOT SUPPORTED YET!~n"); + erlang:display("Client disconnected, but THIS IS NOT SUPPORTED YET!~n"), + {noreply, State}; handle_cast({notify, Message}, #state { socket = Socket } = State) -> gen_tcp:send(Socket, ggs_protocol:create_message(Message)), {noreply, State}; -handle_cast({srv_cmd, "hello", _Headers, Data}, #state { token = Token } = State) -> +handle_cast({srv_cmd, "hello", _Headers, _Data}, #state { token = Token } = State) -> ggs_player:notify(self(), self(), {"hello", Token}), {noreply, State}; @@ -114,7 +116,7 @@ handle_cast({game_cmd, Command, _Headers, Data}, #state { table = Table } = Stat ggs_table:notify(Table, self(), {game, Command, Data}), {noreply, State}; -handle_cast(Request, St) -> +handle_cast(_Request, St) -> {stop, unimplemented1, St}. handle_info({tcp, _Socket, Data}, #state { protocol = Protocol } = State) -> diff --git a/src/ggs_protocol.erl b/src/ggs_protocol.erl index 39e0a6f..c79995f 100644 --- a/src/ggs_protocol.erl +++ b/src/ggs_protocol.erl @@ -74,7 +74,7 @@ expect_headers({char, $\n}, {Pid,_}, {Strings, Remains}) -> case Int of 0 -> ggs_player:notify_game(Pid, prettify(to_dictionary([SecondLast|Rest], []), [])), {reply, ok, expect_headers, {[""], 0}}; - _ -> {reply, ok, expect_data_section, {[""|Strings], Int}} + _ -> {reply, ok, expect_data_section, {[""|Strings], Int -1}} end; _Other -> ok end; @@ -92,8 +92,8 @@ expect_data_section({char, Char}, From, {Strings, Remains}) -> 0 -> [LastMsg,_|Rest] = Strings, {Pid,_} = From, - ggs_player:notify_game(Pid, prettify(to_dictionary(Rest, []), LastMsg)), - {reply, ok, expect_headers, {[[Char]], 0}}; + ggs_player:notify_game(Pid, prettify(to_dictionary(Rest, []), LastMsg ++ [Char])), + {reply, ok, expect_headers, {[""], 0}}; _Other -> [LastMsg|Rest] = Strings, NewMsg = LastMsg ++ [Char], {reply, ok, expect_data_section, {[NewMsg|Rest], Remains-1}} diff --git a/src/ggs_protocol.erl.bk2 b/src/ggs_protocol.erl.bk2 deleted file mode 100644 index db72062..0000000 --- a/src/ggs_protocol.erl.bk2 +++ /dev/null @@ -1,163 +0,0 @@ -%%% @doc This module handles TCP incomming and outcommint. - --module(ggs_protocol). --export([start_link/1,stop/1]). --behaviour(gen_server). --export([init/1, handle_call/3, handle_cast/2, handle_info/2, - terminate/2, code_change/3]). -%% Old --export([parse/1, getToken/1, create_message/4, send_command/2]). - --vsn(1.0). - --record(state, { - player, - header_string, - header_list, - body, - content_length}). - -start_link(Player) -> - gen_server:start_link(?MODULE, [Player], []). - -stop(Protocol) -> - gen_server:cast(Protocol, stop). - -send_command(Protocol, {Command, Data}) -> - gen_server:cast(Protocol, {send, Command, Data}). - -init([Player]) -> - State = #state{ - player = Player, - header_list = [], - header_string = "", - body = "", - content_length = -1 - }, - {ok, State}. - -handle_cast({tcp, _Socket, Data}, State) -> - case State#state.content_length of - -1 -> % its a header - TmpHeader = State#state.header_string ++ Data, - case string:str(TmpHeader, "\n\n") of - 0 -> % still in header - {reply, ok, State # state {header_string = TmpHeader}}; - _ -> % we left the header - {Header, Body} = parse(TmpHeader), - {_, ContentLengthString} = lists:keyfind(content_len, 1, Header), % find Content-Length - {ContentLength, []} = string:to_integer(ContentLengthString), - {reply, ok, State#state{ - header_list = Header, - header_string = "", - body = Body, - content_length = ContentLength}} - end; - Length -> % its a body - LBody = string:len(State#state.body), - LData = string:len(Data), - NewLength = LBody + LData, - if - NewLength < Length -> % not enough data - Body = State#state.body ++ Data, - {reply, ok, State#state {body = Body}}; - NewLength > Length -> % too much data - EndOfMessagePos = LBody + LData - Length, - Body = State#state.body ++ string:substr(Data, 0, EndOfMessagePos), - NextHeader = string:substr(Data, EndOfMessagePos, LData), - Message = prettify(State#state.header_list, Body), - gen_player:notify_game(State#state.player, Message), - {reply, ok, State#state { - header_string = NextHeader, - header_list = [], - body = "", - content_length = -1}}; - NewLength == Length -> % end of message - Message = prettify(State#state.header_list, State#state.body ++ Data), - gen_player:notify_game(State#state.player, Message), - {reply, ok, State#state { - header_string = "", - header_list = [], - body = "", - content_length = -1}} - end - end; - -handle_cast(_Request, St) -> {stop, unimplemented, St}. -handle_call(_Request, _From, St) -> {stop, unimplemented, St}. - -handle_info(_Info, St) -> {stop, unimplemented, St}. - - -terminate(_Reason, _St) -> ok. -code_change(_OldVsn, St, _Extra) -> {ok, St}. - - - -%% API Functions -parse(Data) -> - do_parse(Data, []). - -getToken(Parsed) -> - case lists:keyfind(token, 1, Parsed) of - {_, Value} -> - Value; - false -> - false - end. - - - -create_message(Cmd, Enc, Acc, Data) -> - Length = integer_to_list(string:len(Data)), - Msg = "Client-Command: " ++ Cmd ++ "\n" ++ - "Client-Encoding: " ++ Enc ++ "\n" ++ - "Content-Size: " ++ Length ++ "\n" ++ - "GGS-Version: 1.0\n" ++ - "Accept: " ++ Acc ++ "\n" ++ - "\n" ++ - Data, - Msg. - -%% Internal helpers -do_parse(Data, Headers) -> - NewLinePos = string:chr(Data, $\n), - Line = string:substr(Data, 1, NewLinePos-1), - Tokens = re:split(Line, ": ", [{return, list}]), - case handle(Tokens) of - {Command, more} -> - do_parse(string:substr(Data, NewLinePos+1), Headers ++ [Command]); - {separator, data_next} -> - {Headers, Data} - end. - -handle([[]]) -> - {separator, data_next}; -handle(["Server-Command", Param]) -> - {{srv_cmd, Param}, more}; -handle(["Game-Command", Param]) -> - {{game_cmd, Param}, more}; -handle(["Content-Length", Param]) -> - {{content_len, Param}, more}; -handle(["Token", Param]) -> - {{token, Param}, more}; -handle(["Content-Type", Param]) -> - {{content_type, Param}, more}. - -%handle_data(Data, Length) -> -% {data, string:substr(Data,1,Length)}. - - -prettify(Args, Data) -> - case lists:keyfind(srv_cmd, 1, Args) of - {_, Value} -> - {srv_cmd, Value, Args, Data}; - _Other -> - case lists:keyfind(game_cmd, 1, Args) of - {_, Value} -> - {game_cmd, Value, Args, Data}; - _ -> - ok - end - end. - diff --git a/src/ggs_protocol.erl.orig b/src/ggs_protocol.erl.orig deleted file mode 100644 index 61d424b..0000000 --- a/src/ggs_protocol.erl.orig +++ /dev/null @@ -1,146 +0,0 @@ -%% Parse a string formatted with the GGS protocol using -%% an FSM. Each char is put into the FSM, which incrementally -%% builds a list of strings which represent the complete -%% message. - --module(ggs_protocol). --export([parse/1, getToken/1, create_message/4, - expect_headers/2, expect_data_section/2, - expect_headers/3, expect_data_section/3]). - -%% tests --export([test/0, to_dictionary/2]). - -% gen_fsm callbacks.. --export([init/1, handle_info/2, terminate/2, code_change/3, start_link/0]). - - --define(SERVER, ?MODULE). - -%% JONTES TESTS -test() -> - start_link(), - parse("Token: %s\nServer-Command: define\nContent-Type: text\nContent-Length: 9\n\nHELLOWORLDToken: %s\nServer-Command: define\nContent-Type: text\nContent-Length: 9\n\nHELLOWORLDToken: %s\nServer-Command: define\n"), - to_dictionary(["Hello: world", "Hi: there!"], []). -%% END TESTS - - -%% API Functions -parse(Data) -> - lists:foreach(fun(X) -> - gen_fsm:sync_send_event(?SERVER, {char, X}) - end, Data). - - -start_link() -> - gen_fsm:start_link({local, ?SERVER}, ?MODULE, [], []). - -% Start state: {[""],0}, meaning: -% - Start with no strings parsed -% - Start with a data-section-lengths of 0 -init([]) -> - {ok,expect_headers,{[""], 0}}. - - - -getToken(Parsed) -> - - case lists:keyfind(token, 1, Parsed) of - {_, Value} -> - Value; - false -> - false - end. -<<<<<<< Updated upstream -======= - - -create_message(Protocol, {Command, Data}) { - create_message(Command, "text", "text", Data), -} ->>>>>>> Stashed changes - -%% Assemble a message which can b -%e used as a reply to a client -create_message(Cmd, Enc, Acc, Data) -> - Length = integer_to_list(string:len(Data)), - Msg = "Client-Command: " ++ Cmd ++ "\n" ++ - "Client-Encoding: " ++ Enc ++ "\n" ++ - "Content-Size: " ++ Length ++ "\n" ++ - "GGS-Version: 1.0\n" ++ - "Accept: " ++ Acc ++ "\n" ++ - "\n" ++ - Data, - Msg. - -%%% Transitions -expect_headers(_Event, State) -> - {next_state, expect_headers, State}. -expect_data_section(_Event, State) -> - {next_state, expect_data_section, State}. - - -%%% End transitions -expect_headers({char, $\n}, _From, {Strings, Remains}) -> - [LastMessage|_] = Strings, - case LastMessage of - "" -> % We have a data section.. Last line should thus be the content length. - [LastMessage, SecondLast | _] = Strings, - case re:split(SecondLast, ": ", [{return, list}]) of - ["Content-Length", X] -> - {Int,_} = string:to_integer(X), - {reply, ok, expect_data_section, {[""|Strings], Int}}; - Other -> ok - end; - Other -> - {reply,ok,expect_headers, {[""|Strings], Remains}} - end; - -expect_headers({char, Char}, _From, {[Current|Rest], Remains}) -> - NewCurrent = Current ++ [Char], - {reply,ok, expect_headers, {[NewCurrent|Rest], Remains}}. - - -expect_data_section({char, Char}, From, {Strings, Remains}) -> - case Remains of - 0 -> - [LastMsg,_|Rest] = Strings, - NewMsg = LastMsg ++ [Char], - Result = [NewMsg|Rest], - {Pid,_} = From, - erlang:display(From), - Pid ! (prettify(to_dictionary(Rest, []), NewMsg)), - {reply, ok, expect_headers, {[""], 0}}; - Other -> [LastMsg|Rest] = Strings, - NewMsg = LastMsg ++ [Char], - {reply, ok, expect_data_section, {[NewMsg|Rest], Remains-1}} - end. -handle_call(_Msg, _From, State) -> - {noreply, State}. -handle_info(_Msg, State) -> - {noreply, State}. -terminate(_Reason, _State) -> - ok. -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - - -prettify(Args, Data) -> - case lists:keyfind("Server-Command", 1, Args) of - {_, Value} -> - {srv_cmd, Value, Args, Data}; - _Other -> - case lists:keyfind("Game-Command", 1, Args) of - {_, Value} -> - {game_cmd, Value, Args, Data}; - _ -> - ok - end - end. - -to_dictionary([], Dict) -> - Dict; -to_dictionary([S|Strings], Dict) -> - [First, Snd] = re:split(S, ": ", [{return, list}]), - to_dictionary(Strings, [{First, Snd}|Dict]). - diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 60acb2a..b67afcb 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -74,7 +74,7 @@ send_command(TableToken, PlayerToken, Message) -> %% @private init([TableToken]) -> process_flag(trap_exit, true), - GameVM = ggs_gamevm_p:start_link(TableToken), + GameVM = ggs_gamevm:start_link(TableToken), {ok, #state { game_vm = GameVM, players = [] }}. @@ -101,9 +101,9 @@ handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> PlayerToken = ggs_coordinator:player_pid_to_token(Player), case Message of {server, define, Args} -> - ggs_gamevm_p:define(GameVM, Args); + ggs_gamevm:define(GameVM, Args); {game, Command, Args} -> - ggs_gamevm_p:player_command(GameVM, PlayerToken, Command, Args) + ggs_gamevm:player_command(GameVM, PlayerToken, Command, Args) end, {noreply, State}; @@ -111,7 +111,7 @@ handle_cast({add_player, Player}, #state { players = Players } = State) -> {noreply, State#state { players = [Player | Players] }}; handle_cast({notify_game, Message, From}, #state { game_vm = GameVM } = State) -> - ggs_gamevm_p:player_command(GameVM, From, Message, ""), + ggs_gamevm:player_command(GameVM, From, Message, ""), {noreply, State}; handle_cast({notify_all_players, Message}, #state{players = Players} = State) -> From 7732bb974214b70f0bb485d3a5bab316836540a9 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Sat, 30 Apr 2011 18:55:34 +0200 Subject: [PATCH 163/192] a small chat client which uses erlv8 javascript --- games/JS-chat/chat.rb | 63 ++++++++++++++++++++++++++ games/JS-chat/chat_server.js | 23 ++++++++++ games/JS-chat/ggs-delegate.rb | 15 +++++++ games/JS-chat/ggs-network.rb | 83 +++++++++++++++++++++++++++++++++++ 4 files changed, 184 insertions(+) create mode 100644 games/JS-chat/chat.rb create mode 100644 games/JS-chat/chat_server.js create mode 100644 games/JS-chat/ggs-delegate.rb create mode 100644 games/JS-chat/ggs-network.rb diff --git a/games/JS-chat/chat.rb b/games/JS-chat/chat.rb new file mode 100644 index 0000000..f336f50 --- /dev/null +++ b/games/JS-chat/chat.rb @@ -0,0 +1,63 @@ +#!/usr/bin/env ruby -wKU + +$: << "." + +require 'ggs-network.rb' +require 'ggs-delegate.rb' + +class Chat + include GGSDelegate + + def initialize + @ggs_network = GGSNetwork.new(self) + @ggs_network.connect("localhost") + end + + def ggsNetworkReady(ggs_network, ready) + source_code = File.open("chat_server.js", "rb").read + @ggs_network.define(source_code) + end + + def ggsNetworkDefined(ggs_network, defined) + if defined + print "Your nickname: " + nick = gets.chomp + @ggs_network.sendCommand("/nick", nick) + Thread.new { + loop do + input + end + } + else + source_code = File.open("chat_server.js", "rb").read + @ggs_network.define(source_code) + end + end + + def ggsNetworkReceivedCommandWithArgs(ggs_network, command, args) + case command + when "message" then message(args) + when "notice" then notice(args) + end + end + + protected + + def message(message) + puts message + end + + def notice(notice) + puts "<#{notice}>" + end + + def input + message = gets.chomp + @ggs_network.sendCommand("message", message) + end + +end + +if __FILE__ == $0 + Chat.new +end diff --git a/games/JS-chat/chat_server.js b/games/JS-chat/chat_server.js new file mode 100644 index 0000000..d5279d6 --- /dev/null +++ b/games/JS-chat/chat_server.js @@ -0,0 +1,23 @@ +function playerCommand(player_id, command, args) { + if(command == "/nick") { + changeNick(player_id, args); + } else if(command == "message") { + message(player_id, args); + } +} + +function changeNick(player_id, nick) { + var old_nick = GGS.localStorage.getItem("nick_" + player_id); + GGS.localStorage.setItem("nick_" + player_id, nick); + + if (!old_nick) { + GGS.sendCommandToAll("notice", nick + " joined"); + } else { + GGS.sendCommandToAll("notice", old_nick + " is now called " + nick); + } +} + +function message(player_id, message) { + var nick = GGS.localStorage.getItem("nick_" + player_id); + GGS.sendCommandToAll(player_id, 'message', nick + "> " + message); +} \ No newline at end of file diff --git a/games/JS-chat/ggs-delegate.rb b/games/JS-chat/ggs-delegate.rb new file mode 100644 index 0000000..be4cc47 --- /dev/null +++ b/games/JS-chat/ggs-delegate.rb @@ -0,0 +1,15 @@ +module GGSDelegate + + def ggsNetworkReady(ggs_network, ready) + raise "ggsNetworkReady(ggs_network, ready) must be overridden" + end + + def ggsNetworkDefined(ggs_network, defined) + raise "ggsNetworkDefined(ggs_network, defined) must be overridden" + end + + def ggsNetworkReceivedCommandWithArgs(ggs_network, command, args) + raise "ggsNetworkReceivedCommandWithArgs(ggs_network, command, args) must be overridden" + end + +end \ No newline at end of file diff --git a/games/JS-chat/ggs-network.rb b/games/JS-chat/ggs-network.rb new file mode 100644 index 0000000..8806ac5 --- /dev/null +++ b/games/JS-chat/ggs-network.rb @@ -0,0 +1,83 @@ +require 'socket' + +class GGSNetwork + + SERVER = "Server" + CLIENT = "Game" + + public + + attr_accessor :delegate + + def initialize(delegate) + @delegate = delegate + end + + def define(source_code) + write( makeMessage(SERVER, "define", source_code) ) + end + + def sendCommand(command, args="") + write( makeMessage(CLIENT, command, args) ) + end + + def connect(host='localhost', port=9000) + @socket = TCPSocket.new(host, port) + read + end + + protected + + def write(message) + @socket.write(message) + end + + def read + loop do + headers = {} + size = 0 + args = "" + + select([@socket], nil, nil) + + while (line = @socket.gets) != "\n" + break if line.nil? + + key, value = line.split(": ") + headers[key] = value.strip + end + + if headers.has_key?("Content-Size") + args = @socket.read(headers["Content-Size"].to_i) + end + + receivedCommand(headers, args) + end + end + + def receivedCommand(headers, data) + if headers.has_key? "Client-Command" + command = headers["Client-Command"] + case command + when "hello" + @game_token = data + @delegate.ggsNetworkReady(self, true) + when "defined" + @delegate.ggsNetworkDefined(self, true) + else + @delegate.ggsNetworkReceivedCommandWithArgs(self, command, data) + end + end + end + + def makeMessage(serverOrGame, command, args) + message = "Token: #{@game_token}\n" + + "#{serverOrGame}-Command: #{command}\n" + + "Content-Length: #{args.length}\n\n" + + message += args if args.length > 0 + + message + end + +end From de171a9d9d8eb3a3545c0b7494b516e4373bd4d7 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Sun, 1 May 2011 00:02:07 +0200 Subject: [PATCH 164/192] changed behaviour to make more then one client possible --- games/JS-chat/chat.rb | 10 +++++++--- games/JS-chat/chat_server.js | 2 +- games/JS-chat/ggs-network.rb | 9 +++++++-- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/games/JS-chat/chat.rb b/games/JS-chat/chat.rb index f336f50..2f2f6f5 100644 --- a/games/JS-chat/chat.rb +++ b/games/JS-chat/chat.rb @@ -13,9 +13,13 @@ class Chat @ggs_network.connect("localhost") end - def ggsNetworkReady(ggs_network, ready) - source_code = File.open("chat_server.js", "rb").read - @ggs_network.define(source_code) + def ggsNetworkReady(ggs_network, am_i_host) + unless am_i_host + source_code = File.open("chat_server.js", "rb").read + @ggs_network.define(source_code) + else + ggsNetworkDefined(ggs_network, true) + end end def ggsNetworkDefined(ggs_network, defined) diff --git a/games/JS-chat/chat_server.js b/games/JS-chat/chat_server.js index d5279d6..5d95c36 100644 --- a/games/JS-chat/chat_server.js +++ b/games/JS-chat/chat_server.js @@ -19,5 +19,5 @@ function changeNick(player_id, nick) { function message(player_id, message) { var nick = GGS.localStorage.getItem("nick_" + player_id); - GGS.sendCommandToAll(player_id, 'message', nick + "> " + message); + GGS.sendCommandToAll('message', nick + "> " + message); } \ No newline at end of file diff --git a/games/JS-chat/ggs-network.rb b/games/JS-chat/ggs-network.rb index 8806ac5..5d77a02 100644 --- a/games/JS-chat/ggs-network.rb +++ b/games/JS-chat/ggs-network.rb @@ -60,8 +60,8 @@ class GGSNetwork command = headers["Client-Command"] case command when "hello" - @game_token = data - @delegate.ggsNetworkReady(self, true) + parse_hello(data) + @delegate.ggsNetworkReady(self, @am_i_host) when "defined" @delegate.ggsNetworkDefined(self, true) else @@ -80,4 +80,9 @@ class GGSNetwork message end + def parse_hello(message) + @game_token, shall_define, @table_token = message.split(",") + @am_i_host = shall_define == "true" + end + end From 726528985be6e5c3cb3f463e898786a3df1a630d Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Sun, 1 May 2011 00:02:58 +0200 Subject: [PATCH 165/192] now sending table token and if client is the first or not --- src/ggs_gamevm.erl | 8 ++------ src/ggs_player.erl | 23 +++++++++++++++++------ src/ggs_table.erl | 20 +++++++++++++++----- 3 files changed, 34 insertions(+), 17 deletions(-) diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index cfbdbe9..21ba9cd 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -106,12 +106,8 @@ handle_call({eval, SourceCode}, _From, #state { vm = VM } = State) -> {reply, Ret, State}. handle_cast({define, SourceCode}, #state { table = Table, vm = VM } = State) -> - R = erlv8_vm:run(VM, "playerCommand"), - case R of - {throw, _} -> {ok, Ret} = erlv8_vm:run(VM, SourceCode), - ggs_table:notify_all_players(Table, {"defined", "ok"}); - _ -> ok - end + {ok, _Ret} = erlv8_vm:run(VM, SourceCode), + ggs_table:notify_all_players(Table, {"defined", "ok"}), {noreply, State}; handle_cast({player_command, Player, Command, Args}, #state { vm = VM } = State) -> diff --git a/src/ggs_player.erl b/src/ggs_player.erl index c4f822e..cb7723d 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -62,7 +62,12 @@ init([Socket]) -> }, %ggs_protocol:parse(Protocol, Data), - ggs_player:notify(self(), self(), {"hello", Token}), % send hello to the client + TableToken = ggs_coordinator:table_pid_to_token(Table), + ShallDefine = case ggs_table:already_defined(Table) of + true -> "true"; + false -> "false" + end, + ggs_player:notify(self(), self(), {"hello", Token ++ "," ++ ShallDefine ++ "," ++ TableToken}), % send hello to the client {ok, State}. %% @doc Handles incoming messages from the GGS and forwards them through the player @@ -92,11 +97,11 @@ stop(Player) -> %% Internals handle_call(_Request, _From, St) -> {stop, unimplemented, St}. -handle_cast({tcp, _Socket, Data}, #state { protocol = Protocol } = _State) -> +handle_cast({tcp, _Socket, Data}, #state { protocol = Protocol } = State) -> ggs_protocol:parse(Protocol, Data), - {noreply, State} + {noreply, State}; -handle_cast({tcp_closed, _Socket}, _State) -> +handle_cast({tcp_closed, _Socket}, State) -> erlang:display("Client disconnected, but THIS IS NOT SUPPORTED YET!~n"), {noreply, State}; @@ -104,8 +109,14 @@ handle_cast({notify, Message}, #state { socket = Socket } = State) -> gen_tcp:send(Socket, ggs_protocol:create_message(Message)), {noreply, State}; -handle_cast({srv_cmd, "hello", _Headers, _Data}, #state { token = Token } = State) -> - ggs_player:notify(self(), self(), {"hello", Token}), +handle_cast({srv_cmd, "hello", _Headers, _Data}, #state { token = Token, table = Table } = State) -> + ShallDefine = case ggs_table:already_defined(Table) of + true -> "true"; + false -> "false" + end, + TableToken = ggs_coordinator:table_pid_to_token(Table), + erlang:display("hello"), + ggs_player:notify(self(), self(), {"hello", "token="++ Token ++ "&define=" ++ ShallDefine ++ "&table_token=" ++ TableToken}), {noreply, State}; handle_cast({srv_cmd, "define", _Headers, Data}, #state { table = Table } = State) -> diff --git a/src/ggs_table.erl b/src/ggs_table.erl index b67afcb..988a6ed 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -7,11 +7,12 @@ -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]). --record(state, { players, game_vm } ). +-record(state, { players, game_vm, already_defined } ). %% API -export([start/1, add_player/2, + already_defined/1, remove_player/2, stop/1, notify/3, @@ -69,6 +70,9 @@ send_command(TableToken, PlayerToken, Message) -> TablePid = ggs_coordinator:table_token_to_pid(TableToken), gen_server:cast(TablePid, {notify_player, PlayerToken, self(), Message}). +already_defined(TablePid) -> + gen_server:call(TablePid, already_defined). + %% ---------------------------------------------------------------------- %% @private @@ -77,12 +81,16 @@ init([TableToken]) -> GameVM = ggs_gamevm:start_link(TableToken), {ok, #state { game_vm = GameVM, - players = [] }}. + players = [], + already_defined = false }}. %% @private handle_call({remove_player, Player}, _From, #state { players = Players } = State) -> {reply, ok, State#state { players = Players -- [Player] }}; + +handle_call(already_defined, _From, #state { already_defined = AlreadyDefined} = State) -> + {reply, AlreadyDefined, State}; handle_call(get_player_list, _From, #state { players = Players } = State) -> TokenPlayers = lists:map( @@ -101,11 +109,13 @@ handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> PlayerToken = ggs_coordinator:player_pid_to_token(Player), case Message of {server, define, Args} -> - ggs_gamevm:define(GameVM, Args); + ggs_gamevm:define(GameVM, Args), + NewState = State#state{ already_defined = true }; {game, Command, Args} -> - ggs_gamevm:player_command(GameVM, PlayerToken, Command, Args) + ggs_gamevm:player_command(GameVM, PlayerToken, Command, Args), + NewState = State end, - {noreply, State}; + {noreply, NewState}; handle_cast({add_player, Player}, #state { players = Players } = State) -> {noreply, State#state { players = [Player | Players] }}; From 8a574db360642fa764d15b30b7652def84884579 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Tue, 3 May 2011 18:34:19 +0200 Subject: [PATCH 166/192] changes to make joining a friends table possible --- games/JS-chat/chat.rb | 6 ++- games/JS-chat/chat_server.js | 2 +- games/JS-chat/ggs-network.rb | 18 +++++-- src/ggs_coordinator.erl | 52 +++++++----------- src/ggs_dispatcher.erl | 60 ++++++++++----------- src/ggs_gamevm.erl | 3 +- src/ggs_player.erl | 102 ++++++++++++++++------------------- src/ggs_protocol.erl | 9 +++- 8 files changed, 120 insertions(+), 132 deletions(-) diff --git a/games/JS-chat/chat.rb b/games/JS-chat/chat.rb index 2f2f6f5..3fbcdff 100644 --- a/games/JS-chat/chat.rb +++ b/games/JS-chat/chat.rb @@ -9,8 +9,10 @@ class Chat include GGSDelegate def initialize - @ggs_network = GGSNetwork.new(self) - @ggs_network.connect("localhost") + print "Table token (empty for new): " + table_token = gets.chomp + @ggs_network = GGSNetwork.new(self, table_token) + @ggs_network.connect("ggs.jeena.net", 9000) end def ggsNetworkReady(ggs_network, am_i_host) diff --git a/games/JS-chat/chat_server.js b/games/JS-chat/chat_server.js index 5d95c36..c5d72e7 100644 --- a/games/JS-chat/chat_server.js +++ b/games/JS-chat/chat_server.js @@ -20,4 +20,4 @@ function changeNick(player_id, nick) { function message(player_id, message) { var nick = GGS.localStorage.getItem("nick_" + player_id); GGS.sendCommandToAll('message', nick + "> " + message); -} \ No newline at end of file +} diff --git a/games/JS-chat/ggs-network.rb b/games/JS-chat/ggs-network.rb index 5d77a02..b807062 100644 --- a/games/JS-chat/ggs-network.rb +++ b/games/JS-chat/ggs-network.rb @@ -9,8 +9,10 @@ class GGSNetwork attr_accessor :delegate - def initialize(delegate) + def initialize(delegate, table_token="") + @table_token = table_token @delegate = delegate + @player_token = nil end def define(source_code) @@ -23,12 +25,14 @@ class GGSNetwork def connect(host='localhost', port=9000) @socket = TCPSocket.new(host, port) + write( makeMessage(SERVER, "hello", @table_token) ) read end protected def write(message) + #puts message @socket.write(message) end @@ -67,13 +71,16 @@ class GGSNetwork else @delegate.ggsNetworkReceivedCommandWithArgs(self, command, data) end + else + STDERR.print "ERR: " + [headers, data, @socket.inspect].inspect + "\n" end end def makeMessage(serverOrGame, command, args) - message = "Token: #{@game_token}\n" + - "#{serverOrGame}-Command: #{command}\n" + - "Content-Length: #{args.length}\n\n" + message = "" + message += "Token: #{@player_token}\n" unless @player_token.nil? + message += "#{serverOrGame}-Command: #{command}\n" + + "Content-Length: #{args.length}\n\n" message += args if args.length > 0 @@ -81,8 +88,9 @@ class GGSNetwork end def parse_hello(message) - @game_token, shall_define, @table_token = message.split(",") + @player_token, shall_define, @table_token = message.split(",") @am_i_host = shall_define == "true" + puts "Table-Token: " + @table_token end end diff --git a/src/ggs_coordinator.erl b/src/ggs_coordinator.erl index e90b0bb..99de9b7 100644 --- a/src/ggs_coordinator.erl +++ b/src/ggs_coordinator.erl @@ -4,7 +4,7 @@ -export([ start_link/0, stop/1, join_table/1, - create_table/1, + create_table/0, join_lobby/0, respawn_player/2, respawn_table/1, @@ -43,8 +43,8 @@ join_table(Token) -> gen_server:call(ggs_coordinator, {join_table, Token}). %% @doc Create a new table, return {error, Reason} or {ok, TableToken} -create_table(Params) -> - gen_server:call(ggs_coordinator, {create_table, Params}). +create_table() -> + gen_server:call(ggs_coordinator, create_table). %% @doc This is the first function run by a newly created players. %% Generates a unique token that we use to identify the player. @@ -109,46 +109,28 @@ handle_call(join_lobby, From, State) -> handle_call({join_table, Table}, From, State) -> {FromPlayer, _Ref} = From, - Tables = State#co_state.tables, - case lists:keyfind(Table, 1, Tables) of - {_TableID, TablePID} -> -% TP = TablePID, -% {ok, Players} = (gen_server:call(TP, get_player_list_raw)), % Hack.. deadlock otherwise? -% %Players = [1], -% NumPlayers = length(Players), -% case NumPlayers of -% PN when (PN < 2) -> ggs_table:add_player(TablePID, FromPlayer), -% back_up(State), -% {reply, {ok, TablePID}, State}; -% PN when (PN >= 2) -> {reply, {error, table_full}, State} % TODO: Fix this limit!! -% end; - {TableNum,_} = string:to_integer(Table), - %erlang:display(State#co_state.players), - CurrentPlayers = length(State#co_state.players), - SmallestTable = case (CurrentPlayers rem 2) of - 0 -> CurrentPlayers / 2; - 1 -> (CurrentPlayers / 2)+1 - end, - case (TableNum =< SmallestTable) of - true -> {reply , {error, table_full}, State}; - false -> ggs_table:add_player(TablePID, FromPlayer), - {reply, {ok, TablePID}, State} - end; + case lists:keyfind(Table, 1, State#co_state.tables) of + {TableID, TablePID} -> + % TODO check if table full + ggs_table:add_player(TablePID, FromPlayer), + {reply, {ok, TableID, TablePID}, State}; false -> back_up(State), {reply, {error, no_such_table}, State} end; - -handle_call({create_table, {force, TableToken}}, From, State) -> + +handle_call(create_table, From, State) -> + TableToken = getNewToken(), TableIDMap = State#co_state.player_table_map, Tables = State#co_state.tables, - NewTableProc = ggs_table:start(TableToken), % With start_link, the table dies with the coordinator + TablePid = ggs_table:start(TableToken), % With start_link, the table dies with the coordinator NewState = State#co_state{ player_table_map = [{From, TableToken} | TableIDMap], - tables = [{TableToken, NewTableProc} | Tables] + tables = [{TableToken, TablePid} | Tables] }, back_up(NewState), - {reply, {ok, TableToken}, NewState}; + {reply, {ok, TableToken, TablePid}, NewState}; + handle_call(get_all_players, _From, State) -> {reply, State#co_state.players, State}; @@ -196,3 +178,7 @@ terminate(normal, _State) -> code_change(_OldVsn, State, _Extra) -> {ok, State}. + +% helper +getNewToken() -> + string:strip(os:cmd("uuidgen"), right, $\n ). \ No newline at end of file diff --git a/src/ggs_dispatcher.erl b/src/ggs_dispatcher.erl index 0399c8f..ff4f9e7 100644 --- a/src/ggs_dispatcher.erl +++ b/src/ggs_dispatcher.erl @@ -7,7 +7,7 @@ %% gen_server callback exports -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, - code_change/3]). + code_change/3, accept_loop/1]). -define(SERVER, ?MODULE). @@ -35,34 +35,32 @@ stop(_Reason) -> ggs_logger:not_implemented(). %% @doc Initiate the dispatcher. This is called from gen_server init([Port]) -> - {ok, LSock} = gen_tcp:listen(Port, [{active, true}, - {reuseaddr, true}]), - {ok, LSock, 0}. + case gen_tcp:listen(Port, [{active, true}, {reuseaddr, true}]) of + {ok, LSock} -> + {ok, accept(LSock), 0}; + {error, Reason} -> + {stop, Reason} + end. + +handle_cast({accepted, _Pid}, State) -> + {noreply, accept(State)}. + +accept_loop({Server, LSocket}) -> + {ok, Socket} = gen_tcp:accept(LSocket), + % Let the server spawn a new process and replace this loop + % with the echo loop, to avoid blocking + gen_server:cast(Server, {accepted, self()}), + {ok, Player} = ggs_player:start(), + gen_tcp:controlling_process(Socket, Player), + ggs_player:save_socket(Player, Socket). + +% To be more robust we should be using spawn_link and trapping exits +accept(LSocket) -> + proc_lib:spawn(?MODULE, accept_loop, [{self(), LSocket}]), + LSocket. -handle_call(_Message, _From, State) -> - {noreply, State}. - -handle_cast(_Message, State) -> - {noreply, State}. - -handle_info({tcp, _Socket, _Data}, State) -> - io:format("Got connect request! ~n"), - {noreply, State}; - -handle_info({tcp_closed, Socket}, State) -> - gen_tcp:close(Socket), - {stop, "Client closed socket", State}; - -%% @doc This is our function for accepting connections. When a client connects, -%% it will immediately time out due to timing settings set in init and here, -%% and when it does, we accept the connection. -handle_info(timeout, LSock) -> - {ok, Socket} = gen_tcp:accept(LSock), - ggs_player:start(Socket), - {noreply, LSock, 0}. - -terminate(normal, _State) -> - ok. - -code_change(_OldVsn, State, _Extra) -> - {ok, State}. +% These are just here to suppress warnings. +handle_call(_Msg, _Caller, State) -> {noreply, State}. +handle_info(_Msg, Library) -> {noreply, Library}. +terminate(_Reason, _Library) -> ok. +code_change(_OldVersion, Library, _Extra) -> {ok, Library}. \ No newline at end of file diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 21ba9cd..a6ce71a 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -60,7 +60,7 @@ stop(GameVM) -> init([Table]) -> process_flag(trap_exit, true), - application:start(erlv8), % Start erlv8 + application:start(erlv8), % Start erlv8 FIXME: don't use a new VM every time, only a context {ok, VM} = erlv8_vm:start(), % Create a JavaScript vm Global = erlv8_vm:global(VM), % Retrieve JS global ggs_db:init(), % Initialize the database @@ -87,7 +87,6 @@ expose(Global, Table) -> {"key", fun(#erlv8_fun_invocation{}, [Position])-> ggs_db:key(Table, "world", Position) end} ])}, {"sendCommand", fun(#erlv8_fun_invocation{}, [Player, Command, Args])-> - erlang:display(Table), ggs_table:send_command(Table, Player, {Command, Args}) end}, {"sendCommandToAll", fun(#erlv8_fun_invocation{}, [Command, Args])-> ggs_table:notify_all_players(Table, {Command, Args}) end} diff --git a/src/ggs_player.erl b/src/ggs_player.erl index cb7723d..a7b9b36 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -10,7 +10,7 @@ -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]). --export([start/1, notify/3, notify_game/2, get_token/1, stop/1]). +-export([start/0, stop/1, notify/3, notify_game/2, get_token/1, save_socket/2]). -vsn(1.0). @@ -24,51 +24,21 @@ %% an argument for storage and later usage. Creates a unique player token %% identifying the player. %% @spec start_link(Socket::socket()) -> {ok, Pid} | {error, Reason} -start(Socket) -> - gen_server:start(?MODULE, [Socket], []). +start() -> + gen_server:start(?MODULE, [], []). -join_table(Num) -> - case ggs_coordinator:join_table(integer_to_list(Num)) of - {ok, T} -> - %io:format("Joining existing table: ~p~n", [T]), - T; - {error, no_such_table} -> - case ggs_coordinator:create_table({force, integer_to_list(Num)}) of - {ok, _TBToken} -> ok - end, - case ggs_coordinator:join_table(integer_to_list(Num)) of - {ok, T} -> %io:format("Creating new table: ~p~n", [T]), - T; - {error, _E} -> %erlang:display(E), - join_table(Num+1) - end; - {error, table_full} -> - %erlang:display("Table full!"), - join_table(Num+1) - end. - -init([Socket]) -> +init([]) -> {ok, Protocol} = ggs_protocol:start_link(), {ok, Token} = ggs_coordinator:join_lobby(), - - erlang:port_connect(Socket, self()), - Table = join_table(1), State = #state{ token = Token, - socket = Socket, - table = Table, protocol = Protocol }, - - %ggs_protocol:parse(Protocol, Data), - TableToken = ggs_coordinator:table_pid_to_token(Table), - ShallDefine = case ggs_table:already_defined(Table) of - true -> "true"; - false -> "false" - end, - ggs_player:notify(self(), self(), {"hello", Token ++ "," ++ ShallDefine ++ "," ++ TableToken}), % send hello to the client {ok, State}. + +save_socket(Player, Socket) -> + gen_server:cast(Player, {save_socket, Socket}). %% @doc Handles incoming messages from the GGS and forwards them through the player %% socket to the player. @@ -97,48 +67,66 @@ stop(Player) -> %% Internals handle_call(_Request, _From, St) -> {stop, unimplemented, St}. +handle_cast({save_socket, Socket}, State) -> + {noreply, State#state { socket = Socket } }; handle_cast({tcp, _Socket, Data}, #state { protocol = Protocol } = State) -> ggs_protocol:parse(Protocol, Data), {noreply, State}; - -handle_cast({tcp_closed, _Socket}, State) -> - erlang:display("Client disconnected, but THIS IS NOT SUPPORTED YET!~n"), - {noreply, State}; - handle_cast({notify, Message}, #state { socket = Socket } = State) -> gen_tcp:send(Socket, ggs_protocol:create_message(Message)), {noreply, State}; - -handle_cast({srv_cmd, "hello", _Headers, _Data}, #state { token = Token, table = Table } = State) -> - ShallDefine = case ggs_table:already_defined(Table) of - true -> "true"; - false -> "false" +handle_cast({srv_cmd, "hello", _Headers, TableToken}, State) -> + Table = case TableToken of + "" -> + case ggs_coordinator:create_table() of + {ok, NewTableToken, TablePid} -> + ggs_coordinator:join_table(NewTableToken), + {ok, NewTableToken, TablePid}; + E -> + E + end; + _ -> + ggs_coordinator:join_table(TableToken) end, - TableToken = ggs_coordinator:table_pid_to_token(Table), - erlang:display("hello"), - ggs_player:notify(self(), self(), {"hello", "token="++ Token ++ "&define=" ++ ShallDefine ++ "&table_token=" ++ TableToken}), - {noreply, State}; - + erlang:display(Table), + case Table of + {error, Error} -> + ggs_player:notify(self(), self(), {"error", atom_to_list(Error)}), + {noreply, State}; + {ok, TT, TPid} -> + ShallDefine = case ggs_table:already_defined(TPid) of + true -> "true"; + false -> "false" + end, + ggs_player:notify(self(), self(), {"hello", State#state.token ++ "," ++ ShallDefine ++ "," ++ TT}), + {noreply, State#state{ table = TPid } } + end; handle_cast({srv_cmd, "define", _Headers, Data}, #state { table = Table } = State) -> ggs_table:notify(Table, self(), {server, define, Data}), {noreply, State}; - handle_cast({game_cmd, Command, _Headers, Data}, #state { table = Table } = State) -> ggs_table:notify(Table, self(), {game, Command, Data}), {noreply, State}; - +handle_cast(stop, State) -> + {stop, normal, State}; handle_cast(_Request, St) -> {stop, unimplemented1, St}. handle_info({tcp, _Socket, Data}, #state { protocol = Protocol } = State) -> ggs_protocol:parse(Protocol, Data), + {noreply, State}; +handle_info({tcp_closed, _Socket}, State) -> + erlang:display("Client disconnected, but THIS IS NOT SUPPORTED YET!~n"), + gen_server:cast(self(), stop), {noreply, State}. terminate(Reason, State) -> erlang:display(Reason), - ggs_table:remove_player(State#state.table, self()), + ggs_protocol:stop(State#state.protocol), + %ggs_table:remove_player(State#state.table, self()), + gen_tcp:close(State#state.socket), % ggs_coordinator:remove_player(self(), self()), % not implemented yet - % TODO: release Socket ok. -code_change(_OldVsn, St, _Extra) -> {ok, St}. +code_change(_OldVsn, St, _Extra) -> + {ok, St}. diff --git a/src/ggs_protocol.erl b/src/ggs_protocol.erl index c79995f..437a404 100644 --- a/src/ggs_protocol.erl +++ b/src/ggs_protocol.erl @@ -12,7 +12,7 @@ -export([to_dictionary/2]). % gen_fsm callbacks.. --export([init/1, handle_info/2, terminate/2, code_change/3, start_link/0]). +-export([init/1, handle_info/2, handle_event/3, terminate/2, code_change/3, start_link/0, stop/1]). %% API Functions @@ -23,6 +23,10 @@ parse(Protocol, Data) -> start_link() -> gen_fsm:start_link(?MODULE, [], []). +stop(Protocol) -> + gen_fsm:send_all_state_event(Protocol, stop). + + % Start state: {[""],0}, meaning: % - Start with no strings parsed % - Start with a data-section-lengths of 0 @@ -101,6 +105,9 @@ expect_data_section({char, Char}, From, {Strings, Remains}) -> %handle_call(_Msg, _From, State) -> % {noreply, State}. + +handle_event(stop, _StateName, StateData) -> + {stop, normal, StateData}. handle_info(_Msg, State) -> {noreply, State}. terminate(_Reason, _State) -> From 3b429d7dd4bf392d5a97c0200af3ffc35615ae52 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 4 May 2011 12:30:37 +0200 Subject: [PATCH 167/192] added ping --- games/JS-chat/chat.rb | 20 ++++++++++++++++++-- games/JS-chat/chat_server.js | 2 ++ games/JS-chat/ggs-network.rb | 2 +- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/games/JS-chat/chat.rb b/games/JS-chat/chat.rb index 3fbcdff..434b521 100644 --- a/games/JS-chat/chat.rb +++ b/games/JS-chat/chat.rb @@ -12,7 +12,7 @@ class Chat print "Table token (empty for new): " table_token = gets.chomp @ggs_network = GGSNetwork.new(self, table_token) - @ggs_network.connect("ggs.jeena.net", 9000) + @ggs_network.connect("home.jeena.net", 9000) end def ggsNetworkReady(ggs_network, am_i_host) @@ -44,6 +44,7 @@ class Chat case command when "message" then message(args) when "notice" then notice(args) + when "pong" then pong(args) end end @@ -59,7 +60,22 @@ class Chat def input message = gets.chomp - @ggs_network.sendCommand("message", message) + if message[0..5] == "/nick " + @ggs_network.sendCommand("/nick", message[6,-1]) + elsif message == "/ping" + ping() + else + @ggs_network.sendCommand("message", message) + end + end + + def ping + @start_ping = Time.now + @ggs_network.sendCommand("ping", @ggs_network.player_token) + end + + def pong(id) + puts "" end end diff --git a/games/JS-chat/chat_server.js b/games/JS-chat/chat_server.js index c5d72e7..de96baa 100644 --- a/games/JS-chat/chat_server.js +++ b/games/JS-chat/chat_server.js @@ -3,6 +3,8 @@ function playerCommand(player_id, command, args) { changeNick(player_id, args); } else if(command == "message") { message(player_id, args); + } else if(command == "ping") { + GGS.sendCommand(player_id, "pong", ""); } } diff --git a/games/JS-chat/ggs-network.rb b/games/JS-chat/ggs-network.rb index b807062..dad7a05 100644 --- a/games/JS-chat/ggs-network.rb +++ b/games/JS-chat/ggs-network.rb @@ -7,7 +7,7 @@ class GGSNetwork public - attr_accessor :delegate + attr_accessor :delegate, :player_token def initialize(delegate, table_token="") @table_token = table_token From 792e57bde9d9c962469d3c0f32ddff32d0053e40 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Wed, 4 May 2011 13:01:22 +0200 Subject: [PATCH 168/192] added args to response --- games/JS-chat/chat_server.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/games/JS-chat/chat_server.js b/games/JS-chat/chat_server.js index de96baa..28eba6f 100644 --- a/games/JS-chat/chat_server.js +++ b/games/JS-chat/chat_server.js @@ -4,7 +4,7 @@ function playerCommand(player_id, command, args) { } else if(command == "message") { message(player_id, args); } else if(command == "ping") { - GGS.sendCommand(player_id, "pong", ""); + GGS.sendCommand(player_id, "pong", args); } } From 73194d7d28409c1c53e19420cf1417729d71bc02 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Thu, 5 May 2011 02:46:21 +0200 Subject: [PATCH 169/192] Added eqcmini quickcheck library to lib/ --- lib/eqc/LicenceAgreement.html | 49 ++++ lib/eqc/LicenceAgreement.rtf | 1 + lib/eqc/README | 27 ++ lib/eqc/doc/edoc-info | 2 + lib/eqc/doc/eqc.html | 385 +++++++++++++++++++++++++++ lib/eqc/doc/eqc_gen.html | 342 ++++++++++++++++++++++++ lib/eqc/doc/eqc_symbolic.html | 156 +++++++++++ lib/eqc/doc/erlang.png | Bin 0 -> 2109 bytes lib/eqc/doc/index.html | 17 ++ lib/eqc/doc/modules-frame.html | 14 + lib/eqc/doc/overview-summary.html | 53 ++++ lib/eqc/doc/overview.edoc | 39 +++ lib/eqc/doc/packages-frame.html | 11 + lib/eqc/doc/stylesheet.css | 55 ++++ lib/eqc/ebin/eqc.app | 7 + lib/eqc/examples/generators_eqc.erl | 227 ++++++++++++++++ lib/eqc/examples/ip_checksum.erl | 40 +++ lib/eqc/examples/ip_checksum_eqc.erl | 218 +++++++++++++++ lib/eqc/examples/lists_eqc.erl | 223 ++++++++++++++++ lib/eqc/examples/sets_eqc.erl | 146 ++++++++++ lib/eqc/include/eqc.hrl | 63 +++++ 21 files changed, 2075 insertions(+) create mode 100644 lib/eqc/LicenceAgreement.html create mode 100644 lib/eqc/LicenceAgreement.rtf create mode 100644 lib/eqc/README create mode 100644 lib/eqc/doc/edoc-info create mode 100644 lib/eqc/doc/eqc.html create mode 100644 lib/eqc/doc/eqc_gen.html create mode 100644 lib/eqc/doc/eqc_symbolic.html create mode 100644 lib/eqc/doc/erlang.png create mode 100644 lib/eqc/doc/index.html create mode 100644 lib/eqc/doc/modules-frame.html create mode 100644 lib/eqc/doc/overview-summary.html create mode 100644 lib/eqc/doc/overview.edoc create mode 100644 lib/eqc/doc/packages-frame.html create mode 100644 lib/eqc/doc/stylesheet.css create mode 100644 lib/eqc/ebin/eqc.app create mode 100644 lib/eqc/examples/generators_eqc.erl create mode 100644 lib/eqc/examples/ip_checksum.erl create mode 100644 lib/eqc/examples/ip_checksum_eqc.erl create mode 100644 lib/eqc/examples/lists_eqc.erl create mode 100644 lib/eqc/examples/sets_eqc.erl create mode 100644 lib/eqc/include/eqc.hrl diff --git a/lib/eqc/LicenceAgreement.html b/lib/eqc/LicenceAgreement.html new file mode 100644 index 0000000..6e2704a --- /dev/null +++ b/lib/eqc/LicenceAgreement.html @@ -0,0 +1,49 @@ + + + + + + + + + + + + + +

      QuickCheck Mini

      +

      End User License Agreement

      +


      +

      This end user license agreement ("eula") is a legal agreement between you and quviq. Read it carefully before using the software. It provides a license to use the software and contains warranty information and liability disclaimers. By installing, copying, or otherwise using the software, you agree to be bound by the terms of this agreement. If you do not agree to the terms of this agreement, do not install or use the software.

      +


      +


      +

      1 LICENSE GRANTS

      +


      +

      • Quviq – Quviq AB grants you the non-exclusive right to use Quviq’s software program, QuickCheck Mini (the "SOFTWARE").

      +


      +

      2 LICENSE RESTRICTIONS

      +


      +

      • Distribution. You may freely distribute copies of the SOFTWARE to third parties or point them to the download location at www.quviq.com.

      +

      • Prohibition on Reverse Engineering, Decompilation, and Disassembly. You may not reverse engineer, decompile, or disassemble the SOFTWARE.

      +

      • Reservation of Rights. Quviq retains all rights not expressly granted.

      +

       

      +

      3 DISCLAIMER OF WARRANTY AND LIABILITY

      +


      +

      Limited warranty. The SOFTWARE is provided "as is", without warranty of any kind. To the maximum extent permitted by applicable law, Quviq hereby disclaim all warranties, either expressed or implied, including, but not limited to, the implied warranties of merchantability, fitness for a particular purpose, title, and non-infringement, with regard to the SOFTWARE, and the provision of or failure to provide support services. This limited warranty gives you specific legal rights. You may have others, which vary from state/jurisdiction to state/jurisdiction. 

      +


      +

      Limitation of liability. To the maximum extent permitted by applicable law, in no event shall Quviq or its suppliers be liable for any special, incidental, indirect, or consequential damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or any other pecuniary loss) arising out of the use of or inability to use the SOFTWARE or the provision of or failure to provide support services, even if quviq has been advised of the possibility of such damages. In any case, Quviq’s entire liability under any provision of this eula shall be limited to the amount actually paid by you for the SOFTWARE.

      +


      +


      + + diff --git a/lib/eqc/LicenceAgreement.rtf b/lib/eqc/LicenceAgreement.rtf new file mode 100644 index 0000000..763c06e --- /dev/null +++ b/lib/eqc/LicenceAgreement.rtf @@ -0,0 +1 @@ +{\rtf1\adeflang1025\ansi\ansicpg10000\uc1\adeff31507\deff0\stshfdbch31506\stshfloch31506\stshfhich31506\stshfbi31507\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\upr{\fonttbl{\f0\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f4\fbidi \fnil\fcharset0\fprq2{\*\panose 02000500000000000000}Times;} {\f23\fbidi \fnil\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;}{\f24\fbidi \fnil\fcharset0\fprq2{\*\panose 02000503060000020004}Optima;}{\f25\fbidi \fnil\fcharset0\fprq2 Lucida Grande;} {\flomajor\f31500\fbidi \fnil\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}{\fdbmajor\f31501\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} {\fhimajor\f31502\fbidi \fnil\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbimajor\f31503\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} {\flominor\f31504\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbminor\f31505\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} {\fhiminor\f31506\fbidi \fnil\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;}{\fbiminor\f31507\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} }{\*\ud{\fonttbl{\f0\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f4\fbidi \fnil\fcharset0\fprq2{\*\panose 02000500000000000000}Times;}{\f23\fbidi \fnil\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;} {\f24\fbidi \fnil\fcharset0\fprq2{\*\panose 02000503060000020004}Optima;}{\f25\fbidi \fnil\fcharset0\fprq2 Lucida Grande;}{\flomajor\f31500\fbidi \fnil\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;} {\fdbmajor\f31501\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhimajor\f31502\fbidi \fnil\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;} {\fbimajor\f31503\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\flominor\f31504\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} {\fdbminor\f31505\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhiminor\f31506\fbidi \fnil\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;} {\fbiminor\f31507\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}}}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0; \red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\red240\green145\blue0;} {\*\defchp \f31506\fs24 }{\*\defpap \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs24\alang1033 \ltrch\fcs0 \f31506\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext0 Normal;}{\s1\ql \li0\ri0\widctlpar\tqr\tx9026\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs24\alang1033 \ltrch\fcs0 \b\f24\fs32\cf17\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon18 \snext0 \sautoupd \slink17 heading 1;}{\s2\ql \li0\ri0\sb200\sl276\slmult1 \keep\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af31503\afs26\alang1033 \ltrch\fcs0 \b\fs26\cf17\lang1033\langfe1033\loch\f24\hich\af24\dbch\af31501\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \sautoupd \slink16 heading 2;}{\s3\ql \li0\ri0\sb200\sl276\slmult1\keep\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af31503\afs24\alang1033 \ltrch\fcs0 \b\fs24\cf17\lang1033\langfe1033\loch\f24\hich\af24\dbch\af31501\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \sautoupd \slink15 heading 3;}{\*\cs10 \additive \ssemihidden Default Paragraph Font;}{\* \ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs24\alang1033 \ltrch\fcs0 \f31506\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden Normal Table;}{\*\cs15 \additive \rtlch\fcs1 \ab\af31503 \ltrch\fcs0 \b\cf17\loch\f24\hich\af24\dbch\af31501 \sbasedon10 \slink3 \slocked Heading 3 Char;}{\*\cs16 \additive \rtlch\fcs1 \ab\af31503 \ltrch\fcs0 \b\fs26\cf17\loch\f24\hich\af24\dbch\af31501 \sbasedon10 \slink2 \slocked Heading 2 Char;}{\*\cs17 \additive \rtlch\fcs1 \af0\alang1033 \ltrch\fcs0 \b\f24\fs32\cf17\lang1033\langfe0\langnp1033 \sbasedon10 \slink1 \slocked Heading 1 Char;}{\s18\ql \li0\ri0\widctlpar \tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs24\alang1033 \ltrch\fcs0 \f31506\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext18 \slink19 \ssemihidden header;}{\* \cs19 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \slink18 \slocked \ssemihidden Header Char;}{\s20\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\lisb1\lisa1 \rtlch\fcs1 \af0\afs20\alang1033 \ltrch\fcs0 \f4\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext20 \styrsid6106910 Normal (Web);}{\*\cs21 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \styrsid6106910 apple-converted-space;}}{\*\pgptbl {\pgp\ipgp0\itap0\li0\ri0\sb0\sa0}} {\*\rsidtbl \rsid6106910}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef0\mlMargin0\mrMargin0\mwrapRight0\mintLim0\mnaryLim0}{\info{\author Thomas Arts}{\operator Thomas Arts}{\creatim\yr2010\mo6\dy8\hr14\min55} {\revtim\yr2010\mo6\dy8\hr15\min8}{\version1}{\edmins10}{\nofpages1}{\nofwords0}{\nofchars0}{\*\company Quviq AB}{\nofcharsws0}{\vern33033}{\*\saveprevpict}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}} \paperw11900\paperh16840\margl1800\margr1800\margt1440\margb1440\gutter0\ltrsect \ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont0\relyonvml0\donotembedlingdata0\grfdocevents0\validatexml1\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors1\noxlattoyen \expshrtn\noultrlspc\dntblnsbdb\nospaceforul\formshade\horzdoc\dgmargin\dghspace360\dgvspace360\dghorigin1800\dgvorigin1440\dghshow0\dgvshow0 \jexpand\viewkind1\viewscale100\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\allowfieldendsel\wrppunct \asianbrkrule\rsidroot6106910\newtblstyruls\nogrowautofit\usenormstyforlist\noindnmbrts\felnbrelev\nocxsptable\indrlsweleven\afelev\utinl\hwelev\notvatxbx \nouicompat \fet0{\*\wgrffmtfilter 013f}\nofeaturethrottle1\ilfomacatclnup0\stylesortmethod0\ltrpar \sectd \ltrsect\linex0\headery708\footery708\colsx708\endnhere\sectdefaultcl\sectrsid6106910\sftnbj {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3 \pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}} {\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar \s20\ql \li280\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin280\itap0\pararsid6106910 \rtlch\fcs1 \af0\afs20\alang1033 \ltrch\fcs0 \f4\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs34\insrsid6106910 QuickCheck Mini}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs34\insrsid6106910 \par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs34\insrsid6106910 End User License Agreement}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs34\insrsid6106910 \par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 \par }\pard \ltrpar\s20\qj \li280\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin280\itap0\pararsid6106910 {\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 This end user license agreement ("eula") is a legal agreement between you and quviq. Read it carefully before using the software. It provides a license to use the software and contains warranty information and li ability disclaimers. By installing, copying, or otherwise using the software, you agree to be bound by the terms of this agreement. If you do not agree to the terms of this agreement, do not install or use the software.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 \par }\pard \ltrpar\s20\ql \fi-280\li560\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin560\itap0\pararsid6106910 {\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 \par \par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 1\~LICENSE GRANTS}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 \par \par }\pard \ltrpar\s20\ql \fi-300\li860\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin860\itap0\pararsid6106910 {\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 \bullet \~Quviq}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 \endash Quviq AB grants you the non-exclusive right to use }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 Quviq\rquote s}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 software program, QuickCheck Mini (the } {\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 "SOFTWARE"}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 ). \par }\pard \ltrpar\s20\ql \fi-280\li560\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin560\itap0\pararsid6106910 {\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 \par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 2\~LICENSE RESTRICTIONS}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 \par \par }\pard \ltrpar\s20\ql \fi-300\li860\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin860\itap0\pararsid6106910 {\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 \bullet \~Distribution.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 You may freely distribute copies of the }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 SOFTWARE}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 to third parties or point them to the download location at ww w.quviq.com. \par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 \bullet Prohibition on Reverse Engineering, Decompilation, and Disassembly.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 You may not reverse engineer, decompile, or disassemble the }{ \rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 SOFTWARE. \par \bullet \~Reservation of Rights. Quviq }{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 retains all rights not expressly granted.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910\charrsid6106910 \par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 \par }\pard \ltrpar\s20\ql \fi-280\li560\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin560\itap0\pararsid6106910 {\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 3\~DISCLAIMER OF WARRANTY AND LIABILITY}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 \par \par }\pard \ltrpar\s20\qj \fi-280\li560\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin560\itap0\pararsid6106910 {\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 Limited warranty.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 The }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 SOFTWARE}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 is provided "as is", without warranty of any kind. To the maximum extent permitted by applicable law, }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 Quviq}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 hereby disclaim all warranties, either expressed or implied, including, but not limited to, the implied w arranties of merchantability, fitness for a particular purpose, title, and non-infringement, with regard to the }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 SOFTWARE}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 , and the provision of or failure to provide support services. This limited warranty gives you specific legal rights. You may have others, which vary from state/jurisdiction to state/jurisdiction.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cs21\f25\fs22\insrsid6106910 \~}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 \par \par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 Limitation of liability.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 To the maximum extent permitted by applicable law, in no event shall }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 Quviq}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 or its suppliers be liable for any special, incidental, indirect, or consequential damages wh atsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or any other pecuniary loss) arising out of the use of or inability to use the }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 SOFTWARE}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 or the provision of or failure to provide support services, even if }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 quviq}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 has been advised of the possibility of such damages. In any case, }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 Quviq\rquote s}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 entire liability under any provision of this eula shall be limited to the amount actually paid by you for the }{\rtlch\fcs1 \af0 \ltrch\fcs0 \b\f25\fs22\insrsid6106910 SOFTWARE}{\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 . \par }\pard \ltrpar\s20\ql \fi-280\li560\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin560\itap0\pararsid6106910 {\rtlch\fcs1 \af0 \ltrch\fcs0 \f25\fs22\insrsid6106910 \par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs24\alang1033 \ltrch\fcs0 \f31506\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid6106910 \par }{\*\themedata 504b0304140006000800000021001b898e1bfe0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cf6ac3300cc6ef83bd83f17524 4e77186324e961ed6efb73e81e40384a6296c8c6564bfbf653d216c62885c12e0659d2f7fd2495cbfd38a81dc6e43c557a91175a2159df38ea2afdb979c91eb5 4a0cd4c0e0092b7dc0a497f5ed4db939044c4aba2955ba670e4fc624dbe30829f7014932ad8f23b084b13301ec177468ee8be2c1584f8cc4194f1aba2e57d8c2 7660b5decbf79144dab57a3ed64d5695861006678105d44c595397ef021e5d83ea0322bfc128558605017fbe8bfcbad68e9a5fc0996f5b67b1f1763b0a663e4b defdc5f31548868dffe37c123b035c5856c4215dd9d685094fe7c8a573de68ea5d48670733dfb6fe060000ffff0300504b030414000600080000002100a5d6a7 e7c0000000360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4fc7 060abb0884a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b63095120f 88d94fbc52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462a1 a82fe353bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f7468656d 652f7468656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b4b 0d592c9c070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b47 57e8d3f729e245eb2b260a0238fd010000ffff0300504b0304140006000800000021009d5c8bbe10070000871d0000160000007468656d652f7468656d652f74 68656d65312e786d6cec594f6f1b4514bf23f11d467b6f13274e9a4475aad8b109b469a3d82dea71bc3bf64e33bbb39a1927f10db547242444411ca8c48d0302 2ab51297f269024550a47e05deccecae77e271e39400153487d63bfb7b6fdefbbd3ff367af5e3b4e183a2442529e3682dae5c5009134e4114d878de076af7369 2d4052e134c28ca7a4118c890cae6dbefbce55bca162921004f2a9dcc08d20562adb585890210c63799967248577032e12ace0510c1722818f406fc216961617 5717124cd300a53801b5b706031a12d4d32a83cd42799bc163aaa41e0899e86ad5c49130d8e8a0a611722c5b4ca043cc1a01cc13f1a31e39560162582a78d108 16cd5fb0b07975016fe4424ccd90adc875cc5f2e970b44074b664e31ec9793d63af5f52bdba57e03606a1ad76eb75bed5aa9cf00701882a7d696aace7a67add6 2c745640f6e7b4eed6e2ca62ddc557f42f4fd9bcde6c3657d6735bac5203b23feb53f8b5c5d5fad6928337208b5f99c2d79b5badd6aa8337208b5f9dc277aeac afd65dbc01c58ca60753681dd04e27d75e42069ced78e16b005f5bcce113146443995d7a8a014fd5ac5c4bf03d2e3a00d04086154d911a67648043c8e21666b4 2fa89e006f105c796387423935a4e742321434538de0830c43454cf4bd7cf6ddcb674fd0c9fda727f77f3c79f0e0e4fe0f569123b583d36155eac5379ffef1e8 23f4fb93af5f3cfcdc8f9755fc2fdf7ffcf34f9ff981503e13739e7ff1f8d7a78f9f7ff9c96fdf3ef4c0b704ee57e13d9a10896e9223b4cf1370ccb0e25a4efa e27c12bd18d3aac4563a9438c57a168ffeb68a1df4cd3166d8836b1297c13b02da870ff8dee89e637037162395c7dbf1ec7a9c38c05dce59930b2f0bd7f55c15 9a7ba374e89f5c8caab87d8c0f7d73b770eac4b73dcaa06f529fca564c1c33f7184e151e929428a4dff103423c7cdda5d4e1759786824b3e50e82e454d4cbd94 f468dfc9a689d00e4d202e639f81106f879bdd3ba8c999cfeb6d72e822a12a30f318df23cca1f13d3c5238f1a9ece1845509bf8155ec33b23b166115d7960a22 3d248ca37644a4f4c9dc12e06f25e8d7a175f8c3becbc6898b148a1ef874dec09c5791dbfca015e324f361bb348dabd8f7e501a428467b5cf9e0bbdcad10fd0c 71c0e9cc70dfa1c409f7d9dde0361d3a264d1244bf19091d4b68d54e074e68faaa769c4037ceddb9b8760c0df0f9578f3c99f5a636e22d20c157093ba7daef2c dce9a6dbe222a26f7ecfddc6a3748f409a4f2f3c6f5beedb961bfce75beeac7a9eb7d14e7a2bb45dbdbdb19b62b3454e66ee900794b1ae1a3372439a4db28475 22eac0a09633a743529e98b2187ee67dddc10d0536324870f521557137c6196cb06b81563294b9eaa144199770b033c35edd1a0f9b74658f852bfac060fb81c4 6a97477678590f17e782528d596d86e6f0594cb4ac15cc3bd9f2955c29b8fd3a93d5b45173cf5633a69956e7cc56ba0c319c760d064b3661038260db022cafc2 f95c4f0d0713cc48a479b76b6f11161385bf2744b9d7d6911847c486c819aeb05933b12b52c85c10404a7942773e364bd680b4b38d3069313b7fe624b9503021 5997dda96a6269b5b6588a8e1ac1facad24a80429c3582011c49e1679241d0a4deb26136847b9d50099bb567d6a229d289c7ebfeacaac12dc38c8271ca381352 6d6319db189a5779a858aa67b2f62fadd475b25d8c0336515fc38ae53548917fcd0a08b51b5a3218905055835d19d1dcd9c7bc13f29122a21b4747a8cf46621f 43f88153ed4f4425dc2c9882d60f700da6d936afdcde9a779aeae593c1d971ccb218e7dd525fa3141567e1a6de4a1bcc53c53cf0cd6bbb71eefcaee88abf2857 aa69fc3f73452f0770d05f8e740442b8851518e97a6d045ca8984317ca621a7604acfba67740b6c0552abc06f2e12ed8fc2fc8a1fedfd69cd561ca1ace6b6a9f 0e91a0b09ca85810b2076dc964df19ca6af9d26355b25c91c9a88ab932b366f7c921613ddd0357750f0e500ca96eba49de060cee74feb9cf7905f5877a8f52ad 37a787944ba7ad817f7ae3628b199c3ab597d0f95bf05f9ae859fdacbc112fd6c8aa23fac56497542faac259fcd6d7f3a95ed3847916e0ca5a6b3bd694c74b2b 857110c5698f61b0dccf64705d83f43fb0fe511132fb61412fa83dbe0fbd15c17702cb1f82acbea4bb1a64906e90f6571ff63d76d026935665a9cd773e9ab562 b1bee08d6a39ef29b2b565f3c4fb9c64979b28773aa7162f92ec9c61876b3b36936a88ece91285a141710e3181315fa4aa1f8d78ff1e047a1baee747cc7e4692 193c993ac8f684c9ae3e8fc6f94f26ed826bb34e9f613492a5fb648068745c9c3f4a266c09d94f19c516d9a0b5984eb45270d97768700573bc16b5ab6529bc74 b67029616686965d0a9b1b329f02f89095376e7db403bc6db2d66b5d5c05532cfd2b94cd61bc9f32efc9675ecaec41f195817a0dcad4f1ab29cb9902f2a6130f 3e450a0c4793aee9bfb0e8d84c3729bbf927000000ffff0300504b0304140006000800000021000dd1909fb60000001b010000270000007468656d652f746865 6d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f78277086f6fd3ba109126dd88d0add40384e4350d363f2451ec ed0dae2c082e8761be9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89d93b64b060828e6f37ed1567914b284d262452282e3198720e 274a939cd08a54f980ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd5001996509affb3fd381a89672f1f165dfe514173d9850528a2c6 cce0239baa4c04ca5bbabac4df000000ffff0300504b01022d00140006000800000021001b898e1bfe0000001c02000013000000000000000000000000000000 00005b436f6e74656e745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6a7e7c0000000360100000b000000000000000000000000002f 0100005f72656c732f2e72656c73504b01022d00140006000800000021006b799616830000008a0000001c00000000000000000000000000180200007468656d 652f7468656d652f7468656d654d616e616765722e786d6c504b01022d00140006000800000021009d5c8bbe10070000871d0000160000000000000000000000 0000d50200007468656d652f7468656d652f7468656d65312e786d6c504b01022d00140006000800000021000dd1909fb60000001b0100002700000000000000 000000000000190a00007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d010000140b00000000} {\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d 617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d6169 6e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363 656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e} {\*\latentstyles\lsdstimax276\lsdlockeddef0\lsdsemihiddendef1\lsdunhideuseddef1\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal; \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority0 \lsdlocked0 heading 1;\lsdqformat1 \lsdpriority0 \lsdlocked0 heading 2;\lsdqformat1 \lsdpriority0 \lsdlocked0 heading 3;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 4; \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 5;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 6;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 7;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 8;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 9; \lsdpriority39 \lsdlocked0 toc 1;\lsdpriority39 \lsdlocked0 toc 2;\lsdpriority39 \lsdlocked0 toc 3;\lsdpriority39 \lsdlocked0 toc 4;\lsdpriority39 \lsdlocked0 toc 5;\lsdpriority39 \lsdlocked0 toc 6;\lsdpriority39 \lsdlocked0 toc 7; \lsdpriority39 \lsdlocked0 toc 8;\lsdpriority39 \lsdlocked0 toc 9;\lsdqformat1 \lsdpriority35 \lsdlocked0 caption;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority10 \lsdlocked0 Title;\lsdpriority1 \lsdlocked0 Default Paragraph Font; \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority22 \lsdlocked0 Strong;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis; \lsdsemihidden0 \lsdunhideused0 \lsdpriority59 \lsdlocked0 Table Grid;\lsdunhideused0 \lsdlocked0 Placeholder Text;\lsdunhideused0 \lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading; \lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1; \lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2; \lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3; \lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List; \lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 1; \lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1; \lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdunhideused0 \lsdlocked0 Revision;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph; \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 1; \lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1; \lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 1; \lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 2; \lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2; \lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2; \lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 2; \lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 2; \lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 3; \lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 3; \lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3; \lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 3; \lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 4; \lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4; \lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 4; \lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4; \lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 4; \lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 5; \lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5; \lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5; \lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 5; \lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 5; \lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 6; \lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 6; \lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6; \lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 6; \lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis; \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference; \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdpriority37 \lsdlocked0 Bibliography; \lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;}}{\*\datastore 010001000200000010000000584d4c2e5341585265616465722e3500000000000000000000060000 d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff090006000000000000000000000001000000010000000000000000100000feffffff00000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffffffffffffffffff5200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000500ffffffffffffffffffffffffec69d9888b8b3d4c859eaf6cd158be0f0000000000000000000000007982 49bc0b07cb01feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000100010000000000}} \ No newline at end of file diff --git a/lib/eqc/README b/lib/eqc/README new file mode 100644 index 0000000..d3d4d75 --- /dev/null +++ b/lib/eqc/README @@ -0,0 +1,27 @@ +QuickCheck Mini + +This is a fully functional stripped down version of Quviq QuickCheck. + +QuickCheck Mini is free of charge and the latest version can be +downloaded from Quviq's homepage. The Mini version of QuickCheck is +intended to support individuals and open source projects in obtaining +a better code quality without having to invest in the full version of +QuickCheck. + +QuickCheck Mini is installed by copying the complete directory +eqc-.... into the Erlang library directory or by pointing to it by +using the code:add_patha/1 function in the Erlang distribution. + +Examples are provided to illustrate how it works. + +You can subscribe to quickcheck-questions@quviq.com by sending +"Subscribe" in the subject line. This is a community email list around +the use of QuickCheck. + +Please note that although QuickCheck Mini does not require a licence +check with the Quviq licence server, it does check for a new version +each time it is started, and will notify you if one is available. No +other information is included in the request, and QuickCheck Mini will +start regardless of whether or not the version check succeeds, but +(because there is a short time-out) will start slightly more quickly +when it succeeds. diff --git a/lib/eqc/doc/edoc-info b/lib/eqc/doc/edoc-info new file mode 100644 index 0000000..063aae8 --- /dev/null +++ b/lib/eqc/doc/edoc-info @@ -0,0 +1,2 @@ +{packages,[]}. +{modules,[eqc,eqc_gen,eqc_symbolic]}. diff --git a/lib/eqc/doc/eqc.html b/lib/eqc/doc/eqc.html new file mode 100644 index 0000000..4b01957 --- /dev/null +++ b/lib/eqc/doc/eqc.html @@ -0,0 +1,385 @@ + + + +Module eqc + + + +
      +
      + +

      Module eqc

      +This module defines functions for writing and testing QuickCheck properties. + +

      Version: 1.0.1

      + +

      Description

      This module defines functions for writing and testing QuickCheck properties. + Much of the interface is provided via macros (defined in eqc.hrl). + These are documented below: +

      ?FORALL(X,Gen,Prop)

      + Property that holds if Prop holds for all values X that + can be generated by Gen. For example, +
      + prop_reverse() ->
      +   ?FORALL(Xs,list(int()),
      +      lists:reverse(lists:reverse(Xs)) == Xs).
      + 
      + Generators are defined using the module eqc_gen. +

      ?IMPLIES(Pre,Prop)

      + Property that holds if Prop holds whenever the precondition + Pre is true. The precondition must be a boolean, but Prop + can be any QuickCheck property. An implication is tested by discarding test + cases which do not satisfy the precondition. This can make testing slow, + since many more test cases may need to be generated to find 100 which + satisfy the precondition. In the worst case, QuickCheck may not be able + to find enough test cases that do satisfy the precondition, in which case + the number actually found is reported. Some preconditions may also skew + the test data badly--for example, a precondition that a list is sorted + skews the test data towards short lists, since random longer lists are + extremely unlikely to be sorted just by chance. ?IMPLIES works + well for preconditions which are true with a high probability, but if the + precondition is unlikely to hold, then it is better to write a custom + generator which generates test cases where the precondition is true. +

      ?WHENFAIL(Action,Prop)

      + Property that is equivalent to Prop, but performs Action + (for its side effects) when Prop fails. This can be used to +print additional information when a test case fails.

      + + + + +

      Data Types

      + +

      counterexample()

      +

      abstract datatype: counterexample()

      +

      A counter-example to a QuickCheck property, which can be obtained + using counterexample/0 or counterexample/1, and used to repeat a test, + or test a different property in the same case. Counterexamples are represented by the values + bound by ?FORALL--for the counterexample to make sense independently, it's important that + these were generated without side-effects.

      + +

      print_method()

      +

      print_method() = (list(term())) -> any()

      +

      A function for + printing statistics, which is passed a list of samples and is + expected to print statistical information about them. Print methods + are used by collect/3 and aggregate/3.

      + +

      property()

      +

      abstract datatype: property()

      +

      QuickCheck properties, which can either be boolean + expressions, or constructed using the functions in this module. + QuickCheck properties are tested using quickcheck/1.

      + +

      Function Index

      + + + + + + + + + + + + + + + + + + + + + + + + + +
      aggregate/2A property logically equivalent to Prop, but which collects a list of values in + each test, and displays the distribution of these values once + testing is complete.
      aggregate/3Like aggregate/2, but allows the user to specify how + the collected values should be printed.
      backtrace/0Displays a stack backtrace from the last exception QuickCheck caught.
      check/2Tests the property in the case given.
      classify/3Property which is logically equivalent to Prop, but also + classifies test cases and displays the distribution of test case classes + when testing is complete.
      collect/2Equivalent to aggregate([S], Prop). +
      collect/3Equivalent to aggregate(PrintMethod, [S], Prop). +
      counterexample/0Returns the last counter-example found.
      counterexample/1Tests the property in the same way as quickcheck/1, but if + a test fails, then the failing test case is returned as a counterexample.
      counterexamples/0Returns a list of the counterexamples found by the last call + of eqc:module, paired with the name of the property that failed.
      current_counterexample/0Returns the most recent + counterexample found by QuickCheck.
      equals/2A property which holds if X and Y are equal...
      fails/1A property which succeeds when its argument fails.
      measure/3Collects the values of X while testing Prop, and if all tests + pass, displays statistics such as the minimum, average, and maximum + values, identified by the name Name.
      module/1Tests all the properties exported from a module, given the module name.
      numtests/2Property which is logically equivalent to Prop, but is + tested N times rather than 100.
      on_output/2Supplies an output function to be used instead of io:format + when QuickCheck generates output.
      on_test/2Attaches a function to a property which is called every time a + test passes or fails.
      quickcheck/1Tests the property in 100 random cases, printing a counter-example + if one is found.
      recheck/1Tests the property with the same random number seed as + the last failing call of quickcheck/1.
      start/0Equivalent to start(true). +
      start/1Starts the QuickCheck server.
      stop/0Stops the QuickCheck server.
      version/0
      with_title/1A printing method for collected data, which displays a title + before + the percentages of each value in the data.
      + +

      Function Details

      + +

      aggregate/2

      +
      +

      aggregate(L::list(term()), Prop::property()) -> property()

      +

      A property logically equivalent to Prop, but which collects a list of values in + each test, and displays the distribution of these values once + testing is complete. A typical use would be to aggregate the list of command names generated + by eqc_statem:commands/1, in order to see how often each individual + command appeared in generated tests: +

      aggregate(command_names(Cmds), ...) 
      +

      + See also aggregate/3. +

      + +

      aggregate/3

      +
      +

      aggregate(PrintMethod::(list(term())) -> any(), L::list(term()), Prop::property()) -> property()

      +

      Like aggregate/2, but allows the user to specify how + the collected values should be printed. The PrintMethod parameter + is called with a sorted list of the collected data as an argument, + and is expected to print some statistics. A predefined printing + methods is provided to add a title to the statistics: +

      aggregate(with_title(T),L,Prop)
      . This is useful when a property contains + several calls to aggregate or collect.

      + +

      backtrace/0

      +
      +

      backtrace() -> ok

      +

      Displays a stack backtrace from the last exception QuickCheck caught. Note that + this is only possible if the exception is raised in the process in which the test + case starts. If a test case fails because of an exception in another, linked, + process, then no backtrace is available. Calls to functions in the implementation + of QuickCheck itself are not included in the backtrace. +

      If you really need to see a backtrace from a linked process, then you can do so by + catching + the exception yourself in that process, using erlang:get_stacktrace() to obtain the + backtrace, and printing it yourself.

      + +

      check/2

      +
      +

      check(P::property(), Values::counterexample()) -> bool()

      +

      Tests the property in the case given. Counterexamples are generated by testing a + property using counterexample/1 or counterexample/0, and contain a list + of the values bound by ?FORALL. A property tested by check should begin with the same + sequence of ?FORALL s as the property from which the counterexample was generated, otherwise + the results will be unpredictable. In particular, there is no check that the values + in the counterexample could actually have been generated by the ?FORALL s in the property under + test. +

      check/2 can be used without a QuickCheck licence, allowing anyone to run + tests that a licenced user has generated.

      + +

      classify/3

      +
      +

      classify(B::bool(), S::term(), Prop::property()) -> property()

      +

      Property which is logically equivalent to Prop, but also + classifies test cases and displays the distribution of test case classes + when testing is complete. If the boolean is true then the current test case is + labelled with the term S, + and, after testing is complete, QuickCheck prints out the percentage of + test cases carrying each label. This can be used to check that the space + of possible test cases has been covered reasonably well. For example, + classifying test cases according to the length of a list enables one to + see whether unreasonably many lists were short. Classifying + test cases is a way to discover skewed distributions, such as can arise + from using ?IMPLIES. It is good practice to check the distribution + of test data using classify or collect/2, at least while + properties are being developed. +

      + Each test case can be labelled with any number of labels: QuickCheck then + displays the percentage of each label in the generated + test data. +

      +

      + Calls of classify or collect can be nested, in which case each call + generates its own table of distributions. +

      + +

      collect/2

      +
      +

      collect(S::term(), Prop::property()) -> property()

      +

      Equivalent to aggregate([S], Prop).

      + + +

      collect/3

      +
      +

      collect(PrintMethod::(list(term())) -> any(), S::term(), Prop::property()) -> property()

      +

      Equivalent to aggregate(PrintMethod, [S], Prop).

      + + +

      counterexample/0

      +
      +

      counterexample() -> undefined | counterexample()

      +

      Returns the last counter-example found. See counterexample/1.

      + +

      counterexample/1

      +
      +

      counterexample(P::property()) -> true | counterexample()

      +

      Tests the property in the same way as quickcheck/1, but if + a test fails, then the failing test case is returned as a counterexample.

      + +

      counterexamples/0

      +
      +

      counterexamples() -> list({atom(), counterexample()})

      +

      Returns a list of the counterexamples found by the last call + of eqc:module, paired with the name of the property that failed.

      + +

      current_counterexample/0

      +
      +

      current_counterexample() -> counterexample()

      +

      Returns the most recent + counterexample found by QuickCheck. This can be used while + QuickCheck is shrinking a failed test case to follow progress, or if + shrinking must be interrupted, to recover the last failed test case + that QuickCheck had found. The counterexample is fetched from a file + in the current directory.

      + +

      equals/2

      +
      +

      equals(X::any(), Y::any()) -> property()

      +

      A property which holds if X and Y are equal... and displays + their values when a test fails.

      + +

      fails/1

      +
      +

      fails(P::property()) -> property()

      +

      A property which succeeds when its argument fails. + Sometimes it is useful to write down properties which do not hold + (even though one might expect them to). This can help prevent misconceptions. + fails(P) is tested in the same way as P, but + fails only if P succeeds 100 times. Thus + fails(P) declares that QuickCheck should be able to find + a counter-example to property P.

      + +

      measure/3

      +
      +

      measure(Name::atom() | string(), X::number() | list(number()), Prop::property()) -> property()

      +

      Collects the values of X while testing Prop, and if all tests + pass, displays statistics such as the minimum, average, and maximum + values, identified by the name Name. X can also be a list of values, + in which case all of them are included in the measurements.

      + +

      module/1

      +
      +

      module(Mod::atom()) -> list(atom())

      +

      Tests all the properties exported from a module, given the module name. + Any function with arity zero whose name begins with "prop_" is treated as a + property. The result is a list of the names of the properties that + failed. See also module/2.

      + +

      numtests/2

      +
      +

      numtests(N::int(), Prop::property()) -> property()

      +

      Property which is logically equivalent to Prop, but is + tested N times rather than 100. If numtests appears more than once + in a property, then the outermost use takes precedence.

      + +

      on_output/2

      +
      +

      on_output(Fun::(string(), list(term())) -> any(), Prop::property()) -> property()

      +

      Supplies an output function to be used instead of io:format + when QuickCheck generates output. All output generated by + QuickCheck is passed to Fun, in the form of a format + string and a list of terms--the same arguments expected by + io:format. By supplying a function which does nothing, + QuickCheck can be run silently. By supplying a function which + writes to a file, all QuickCheck output can be saved. +

      Note that output generated by user code is not passed to + this output function. For example, calls to io:format in the + property, or in the code under test, will generate output in the + shell as usual. This applies even to calls inside a + ?WHENFAIL. If you want to redirect such output also, then + you need to modify your own code appropriately.

      +

      The reason that Fun is passed a format string and + arguments, rather than an already formatted string, is to make it + easier to extract information from the output without parsing + it. However, there is no guarantee that different versions of + QuickCheck will use the same format strings and term lists--you use + this information at your own risk, in other words.

      + +

      on_test/2

      +
      +

      on_test(Fun::(counterexample(), bool()) -> any(), Prop::property()) -> property()

      +

      Attaches a function to a property which is called every time a + test passes or fails. The arguments are the test case (a list of + values), and a boolean indicating whether or not the test + passed. Tests which are skipped (because of an + ?IMPLIES(false,...)) are not included.

      + +

      quickcheck/1

      +
      +

      quickcheck(P::property()) -> bool()

      +

      Tests the property in 100 random cases, printing a counter-example + if one is found. Initially small test cases are generated, then the + size increases as testing progresses (see eqc_gen, ?SIZED, + eqc_gen:resize/2 for the way size affects test data generation). + The result is true if all tests succeeded (or if one failed, + and failure was expected). On success, quickcheck analyses + the distribution of test case labels. On failure, quickcheck + tries to simplify the counter-example found as far as possible (see + shrinking, described in eqc_gen).

      + +

      recheck/1

      +
      +

      recheck(Prop::property()) -> bool()

      +

      Tests the property with the same random number seed as + the last failing call of quickcheck/1. If the property is + the same as in that last call, then the same test case will be + generated. Note that recheck repeats the test and its + shrinking. This can be used to adjust the shrinking strategy in + the property, then reshrink the same counterexample, perhaps to a + better result. If you just + want to repeat the shrunk test, then use +

      eqc:check(Prop,eqc:counterexample())
      instead. +

      Note: the type and behaviour of recheck changed in version 1.19.

      + +

      start/0

      +
      +

      start() -> any()

      +

      Equivalent to start(true).

      + + +

      start/1

      +
      +

      start(Force::bool()) -> pid()

      +

      Starts the QuickCheck server. If it is already running on this +node, nothing is done.

      + + Each user can run only one instance of the QuickCheck server at a + time. If the server is already running on another Erlang node, it + will be terminated automatically if Force is + true. If another instance is running, and Force is + false, then the new instance will not start.

      + +

      stop/0

      +
      +

      stop() -> any()

      +

      Stops the QuickCheck server. + QuickCheck properties are tested in the QuickCheck server process, which is + spawned automatically when quickcheck is first called. Usually there is no + need to stop the QuickCheck server explicitly, but if a need does arise + then this function can be used. For example, if the shell process crashes + and is restarted, then the QuickCheck server should be stopped and restarted + too, since otherwise the server will crash when it attempts to write to the + console.

      + +

      version/0

      +
      +

      version() -> any()

      +
      + +

      with_title/1

      +
      +

      with_title(Title::atom() | string()) -> print_method()

      +

      A printing method for collected data, which displays a title + before + the percentages of each value in the data. It is intended to be + passed to collect/3 or aggregate/3.

      +
      + + +

      Generated by EDoc, Jun 13 2010, 13:15:30.

      + + diff --git a/lib/eqc/doc/eqc_gen.html b/lib/eqc/doc/eqc_gen.html new file mode 100644 index 0000000..adaa713 --- /dev/null +++ b/lib/eqc/doc/eqc_gen.html @@ -0,0 +1,342 @@ + + + +Module eqc_gen + + + + +
      + +

      Module eqc_gen

      + + This module implements QuickCheck generators. + +

      Version: 1.0.1

      + +

      Description

      + This module implements QuickCheck generators. + QuickCheck generators are used to generate random test data for + QuickCheck properties. A generator specifies three things at the same + time: +
      • A set of values that can be generated,
      • +
      • A probability distribution on that set,
      • +
      • A way of shrinking generated values to similar, + smaller values---used after a test fails, to enable + QuickCheck to search for a similar, but simpler failing case.
      • +
      + QuickCheck permits constants to be used as generators for their own value, + and also permits tuples, records, and lists containing generators to be + used as generators for values of the same form. For example, +
       {int(),bool()} 
      + is a generator that generates random pairs of integers and booleans. +

      + Many of the functions in this module are usually used via macros, defined + in eqc.hrl. These macros are listed here. +

      ?LET(Pat,G1,G2)

      + Generates a value from G1, + binds it to Pat, then generates a value from G2 + (which may refer to the variables bound in Pat). +

      The + result is shrunk by first shrinking the value generated by + G1 while the test still fails, then shrinking the value + generated by G2. It is thus better to write + ?LET({X,Y},{G1,G2},G3) than + ?LET(X,G1,?LET(Y,G2,G3)) (provided G2 does + not depend on X), since in the first case shrinking can + shrink G1 a bit, shrink G2, then shrink + G1 some more, while in the second case G1 + cannot be shrunk further once shrinking G2 has begun.

      +

      ?SIZED(Size,G)

      + Binds the variable Size to the current size parameter for + generation. G may use Size in any way to control the + size of generated data. However, as Size increases, + the set of possible values that G can generate should also + increase. Size is always a natural number, and increases during + QuickCheck testing from a small value up to about 40. See also + resize/2 and pick/2. +

      ?SUCHTHAT(X,G,P)

      + Generates values X from G such that the condition P is true. + Should only be used if the probability that P holds is reasonably high for values + generated by G--otherwise generation may be slow, and the + distribution of generated values may be skewed. For example, +
      ?SUCHTHAT(Xs,list(int()),lists:sort(Xs)==Xs)
      + generates predominantly very short lists, since the probability that a random longer list + will just happen to be sorted is very low. If no value is found within 100 attempts, + then ?SUCHTHAT exits. + + +

      ?LETSHRINK(Pat,G1,G2)

      + This behaves in the same way as ?LET(Pat,G1,G2), except + that G1 must generate a list of values, and each one of these + values is added as a possible shrinking of the result. This is intended for + use in generating tree-like structures. For example, +
      + ?LETSHRINK([L,R],[tree(),tree()],{branch,L,R})
      + generates a tree node {branch,L,R}, which can shrink to either + L or R. +

      ?LAZY(G)

      + A generator equivalent to its argument, but which is always cheap to construct. To be used, + for example, in recursive generators to avoid building a huge generator, only a small part + of which will be used. +

      +

      Data Types

      + +

      box()

      +

      abstract datatype: box(A)

      +

      Boxes are not supported in this version of QuickCheck.

      + +

      gen()

      +

      abstract datatype: gen(A)

      +

      A QuickCheck generator for values of type A. + QuickCheck generators are first-class + values, and can be used repeatedly to generate many different values.

      + +

      proplist()

      +

      proplist() = list({atom(), term()})

      +

      A property list associating values with names. + See the standard module proplists.

      + +

      Function Index

      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      binary/0Generates a binary of random size.
      binary/1Generates a binary of a given size in bytes.
      bitstring/0Generates a list of bits in a bitstring.
      bitstring/1Generates a bitstring of a given size in bits.
      bool/0Generates a random boolean.
      char/0Generates a random character.
      choose/2Generates a number in the range M to N.
      default/2Adds a default value to a generator, to be chosen half the time.
      elements/1Generates an element of the list argument.
      eval/1Evaluates terms of the form {call,Module,Function,Args} anywhere in its + argument, replacing them by the result of the corresponding function call.
      eval/2Like eval/1, but also replaces symbolic variables, that is, + terms of the form {var,V}, by their corresponding values in the + property list.
      frequency/1Makes a weighted choice between the generators in its argument, such that the + probability of choosing each generator is proportional to the weight paired with it.
      function0/1Generates a function of no arguments with result generated by G.
      function1/1Generates a function of one argument with result generated by G.
      int/0Generates a small integer (with absolute value bounded by the generation size).
      is_generator/1Returns true if the argument is a QuickCheck generator.
      largeint/0Generates an integer from a large range.
      list/1Generates a list of elements generated by its argument.
      nat/0Generates a small natural number (bounded by the generation size).
      non_empty/1Make sure that the generated value is not empty.
      noshrink/1Generates the same values as G, but these values are never + shrunk.
      oneof/1Generates a value using a randomly chosen element of the list of generators.
      orderedlist/1Generates an ordered list of elements generated by G.
      real/0Generates a real number.
      resize/2Binds the generation size parameter to Size within G.
      return/1Constructs a generator that always generates the value + X.
      sample/1Prints 11 values randomly generated by G, for sizes ranging + from 10 to 20.
      sampleshrink/1Prints a value generated by G, followed by one way of shrinking it.
      shuffle/1Shuffles a list and shrinks to the unshuffled list.
      vector/2Generates a list of the given length, with elements generated by G.
      + +

      Function Details

      + +

      binary/0

      +
      +

      binary() -> gen(binary())

      +

      Generates a binary of random size. The binary shrinks both in + size as well as in content. If you consider the + binary as a representation of a number, then each shrinking step + will result in a smaller-or-equal number.

      + +

      binary/1

      +
      +

      binary(NrBytes::int()) -> gen(binary())

      +

      Generates a binary of a given size in bytes. When shrinking, + the size is unchanged, but content shrinks like binary/0.

      + +

      bitstring/0

      +
      +

      bitstring() -> gen(bitstring())

      +

      Generates a list of bits in a bitstring. For Erlang release R12B and + later. + The bitstring shrinks both in + size as well as in content. If you consider the + bitstring as a representation of a number, then each shrinking step + will result in a smaller-or-equal number.

      + +

      bitstring/1

      +
      +

      bitstring(NrBits::int()) -> gen(bitstring())

      +

      Generates a bitstring of a given size in bits. For Erlang + release R12B and later. When shrinking, + the size is unchanged, but content shrinks like bitstring/0.

      + +

      bool/0

      +
      +

      bool() -> gen(bool())

      +

      Generates a random boolean. Shrinks to false.

      + +

      char/0

      +
      +

      char() -> gen(char())

      +

      Generates a random character. Shrinks to a, b or c.

      + +

      choose/2

      +
      +

      choose(M, N::integer()) -> gen(integer())

      +

      Generates a number in the range M to N. + The result shrinks towards smaller absolute values.

      + +

      default/2

      +
      +

      default(Default::A, G::gen(A)) -> gen(A)

      +

      Adds a default value to a generator, to be chosen half the time. Any + other value shrinks to the default.

      + +

      elements/1

      +
      +

      elements(Xs::list(A)) -> gen(A)

      +

      Generates an element of the list argument. Shrinking chooses an earlier element.

      + +

      eval/1

      +
      +

      eval(Term::term()) -> term()

      +

      Evaluates terms of the form {call,Module,Function,Args} anywhere in its + argument, replacing them by the result of the corresponding function call. + This is useful when, for example, test data is of an abstract datatype, and + we want to know how it was generated, rather than its representation--it is + much clearer to see that a test failed for sets:new() (that is + {call,sets,new,[]}), for example, + than for its representation. + We write ?FORALL(X,TGen,...eval(X)...), where TGen + generates terms containing calls, so that test cases are displayed in this + form, but the actual test data is the result of evaluating the calls.

      + +

      eval/2

      +
      +

      eval(Env::proplist(), T::term()) -> term()

      +

      Like eval/1, but also replaces symbolic variables, that is, + terms of the form {var,V}, by their corresponding values in the + property list. This should be a list of pairs of atoms and values. For example, + eval([{x,3}],{var,x}) evaluates to 3.

      + +

      frequency/1

      +
      +

      frequency(FGs::list({integer(), gen(A)})) -> gen(A)

      +

      Makes a weighted choice between the generators in its argument, such that the + probability of choosing each generator is proportional to the weight paired with it. + The + weights should be non-negative integers and sum to a positive value. A generator + with a weight of zero will not be chosen.

      + +

      function0/1

      +
      +

      function0(G::gen(A)) -> gen(() -> A)

      +

      Generates a function of no arguments with result generated by G.

      + +

      function1/1

      +
      +

      function1(G::gen(A)) -> gen((term()) -> A)

      +

      Generates a function of one argument with result generated by G. + The generated function is pure--will always return the same result for the same argument-- + and the result depends randomly on the argument.

      + +

      int/0

      +
      +

      int() -> gen(integer())

      +

      Generates a small integer (with absolute value bounded by the generation size).

      + +

      is_generator/1

      +
      +

      is_generator(X::any()) -> bool()

      +

      Returns true if the argument is a QuickCheck generator.

      + +

      largeint/0

      +
      +

      largeint() -> any()

      +

      Generates an integer from a large range.

      + +

      list/1

      +
      +

      list(G::gen(A)) -> gen(list(A))

      +

      Generates a list of elements generated by its argument. Shrinking drops elements + from the list. The length of the list varies up to one third of the generation size parameter.

      + +

      nat/0

      +
      +

      nat() -> gen(integer())

      +

      Generates a small natural number (bounded by the generation size).

      + +

      non_empty/1

      +
      +

      non_empty(G::gen(A)) -> gen(A)

      +

      Make sure that the generated value is not empty. + For example when creating a list of integers, but the list should always + contain at least one element non_empty(list(int())).

      + +

      noshrink/1

      +
      +

      noshrink(G::gen(A)) -> gen(A)

      +

      Generates the same values as G, but these values are never + shrunk.

      + +

      oneof/1

      +
      +

      oneof(Gs::list(gen(A))) -> gen(A)

      +

      Generates a value using a randomly chosen element of the list of generators.

      + +

      orderedlist/1

      +
      +

      orderedlist(G::gen(A)) -> gen(list(A))

      +

      Generates an ordered list of elements generated by G.

      + +

      real/0

      +
      +

      real() -> gen(float())

      +

      Generates a real number.

      + +

      resize/2

      +
      +

      resize(Size::integer(), G::gen(A)) -> gen(A)

      +

      Binds the generation size parameter to Size within G. + Size should never be negative.

      + +

      return/1

      +
      +

      return(X::A) -> gen(A)

      +

      Constructs a generator that always generates the value + X. Most values can also be used as generators for + themselves, making return unnecessary, but + return(X) may be more efficient than using X as a + generator, since when return(X) is used then QuickCheck + does not traverse X searching for values to be intepreted + specially.

      + +

      sample/1

      +
      +

      sample(G::gen(A)) -> ok

      +

      Prints 11 values randomly generated by G, for sizes ranging + from 10 to 20.

      + +

      sampleshrink/1

      +
      +

      sampleshrink(G::gen(A)) -> ok

      +

      Prints a value generated by G, followed by one way of shrinking it. + Each following line displays a list of values that the first value on the + previous line can be shrunk to in one step. Thus the output traces the leftmost path + through the shrinking tree.

      + +

      shuffle/1

      +
      +

      shuffle(List::list(A)) -> gen(list(A))

      +

      Shuffles a list and shrinks to the unshuffled list.

      + +

      vector/2

      +
      +

      vector(K::integer(), G::gen(A)) -> gen(list(A))

      +

      Generates a list of the given length, with elements generated by G.

      +
      + + +

      Generated by EDoc, Jun 13 2010, 13:15:30.

      + + diff --git a/lib/eqc/doc/eqc_symbolic.html b/lib/eqc/doc/eqc_symbolic.html new file mode 100644 index 0000000..d53a39c --- /dev/null +++ b/lib/eqc/doc/eqc_symbolic.html @@ -0,0 +1,156 @@ + + + +Module eqc_symbolic + + + + +
      + +

      Module eqc_symbolic

      + +This module implements QuickCheck generators and utility functions for +symbolic calls. + +

      Version: 1.0.1

      + +

      Description

      +This module implements QuickCheck generators and utility functions for +symbolic calls.

      + +

      In test case generation it is often an advantage to postpone calling +functions in the subject under test. In a test one is interested in +the actual function that is called as well as its evaluated result. +If one would evaluate the result already at generation time, then the actual +call is not visible in the QuickCheck counter example shown in a +failing test.

      + +

      For example, when testing a data structure like the OTP library sets.erl, +one may need more information than just the value to detect what goes +wrong with the following property:

      + +
      + prop_sets() ->
      +  ?FORALL({S1,S2},{set(),set()},
      +          begin
      +              L1 = sets:to_list(S1),
      +              L2 = sets:to_list(S2),
      +              sets:intersection(S1,S2) ==
      +                  sets:from_list(L1--(L1--L2))
      +          end).
      + 
      + + which will fail with for example the following counter example: +
      +  Failed! After 132 tests.
      +  Shrinking.......(7 times)
      +  {{set,2,16,16,8,80,48,
      +        {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},
      +        {{[],[],[],[],[],[],[],[],[],[],[],[-15,33],[],[],[],[]}}},
      +   {set,3,16,16,8,80,48,
      +        {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},
      +        {{[0],[],[],[],[],[],[],[],[],[],[],[33,-15],[],[],[],[]}}}}
      +  false
      + 
      + + We would really need to understand the internal representation of sets in order to understand which + sets we have generated and even if we know that, we have no clue which operations were used to + create those sets. + This is were symbolic representations help a lot. We would create a recursive generator that + creates symbolic sets and use the following property instead: +
      +  prop_sets() ->
      +    ?FORALL({SymbS1,SymbS2},{set(),set()},
      +            begin
      +              S1 = eval(SymbS1),
      +              S2 = eval(SymbS2),
      +              L1 = sets:to_list(S1),
      +              L2 = sets:to_list(S2),
      +              sets:intersection(S1,S2) ==
      +                 sets:from_list(L1--(L1--L2))
      +            end).
      + 
      +  This would then result in a more readable error message:
      +  Shrinking..........(10 times)
      +  {{call,sets,from_list,[[6,-10]]},{call,sets,from_list,[[0,-10,6]]}}
      +  false
      + 
      + + Symbolic representation of function calls provides us with +
        +
      • Better readable counter examples
      • +
      • No need to break abstraction by using clean interface to code + under test
      • +
      • Better possibilities for shrinking when defining generators
      • +
      +

      Function Index

      + + + + + + +
      defined/1Checks whether a term can be evaluated without raising an exception.
      eval/1Evaluates terms of the form {call,Module,Function,Args} anywhere in its + argument, replacing them by the result of the corresponding function call.
      eval/2Like eval/1, but also replaces symbolic variables, that is, + terms of the form {var,V}, by their corresponding values in the + property list.
      pretty_print/1Pretty printing of symbolic terms.
      pretty_print/2Pretty printing of symbolic terms within given environment.
      well_defined/1Generates a well defined symbolic value.
      + +

      Function Details

      + +

      defined/1

      +
      +

      defined(E::term()) -> bool()

      +

      Checks whether a term can be evaluated without raising an exception. + Some symbolic terms may raise an exception when evaluating, e.g., division by zero would + raise an exception, thus eval({call,erlang,'div',[1,0]}) raises an exception as well.

      + +

      eval/1

      +
      +

      eval(Term::term()) -> term()

      +

      Evaluates terms of the form {call,Module,Function,Args} anywhere in its + argument, replacing them by the result of the corresponding function call. + This is useful when, for example, test data is of an abstract datatype, and + we want to know how it was generated, rather than its representation--it is + much clearer to see that a test failed for sets:new() (that is + {call,sets,new,[]}), for example, + than for its representation. + We write ?FORALL(X,TGen,...eval(X)...), where TGen + generates terms containing calls, so that test cases are displayed in this + form, but the actual test data is the result of evaluating the calls.

      + +

      eval/2

      +
      +

      eval(Env::proplist(), T::term()) -> term()

      +

      Like eval/1, but also replaces symbolic variables, that is, + terms of the form {var,V}, by their corresponding values in the + property list. This should be a list of pairs of atoms and values. For example, + eval([{x,3}],{var,x}) evaluates to 3.

      + +

      pretty_print/1

      +
      +

      pretty_print(Symb::term()) -> string()

      +

      Pretty printing of symbolic terms. + A symbolic value like {call,sets,union,[{call,sets,new,[]},{call,sets,from_list,[[1,2]]}]} + is transformed to the string \"sets:union(sets:new(),from_list([1,2]))\".

      + +

      pretty_print/2

      +
      +

      pretty_print(Env::proplist(), Symb::term()) -> string()

      +

      Pretty printing of symbolic terms within given environment. + Like pretty_print/1, but also replaces symbolic variables, that is, + terms of the form {var,V}, by their corresponding values in the + property list. This should be a list of pairs of atoms and values. For example, + eval([{x,3}],{var,x}) is pretty printed to \"3\".

      + +

      well_defined/1

      +
      +

      well_defined(G::gen(A)) -> A

      +

      Generates a well defined symbolic value. + A value is well defined if evaluating it does not raise an exception.

      +
      + + +

      Generated by EDoc, Jun 13 2010, 13:15:30.

      + + diff --git a/lib/eqc/doc/erlang.png b/lib/eqc/doc/erlang.png new file mode 100644 index 0000000000000000000000000000000000000000..987a618e2403af895bfaf8c2f929e3a4f3746659 GIT binary patch literal 2109 zcmV-D2*US?P)rez_nr%N ze)-p~%6|a|LA_bA=l=$|3jjqS$tjbGG?@TN0w$Azq7Z{YeQxKcpLO55vno1^u23DP&V=i9-KAAsU*ECy^#OtaDC!lVSo!+|-%T+LhTHP^Oqwx8m)b4r3V28JmV&6M#iG)&0;P`j>XGfomEIEK6wPkhI{{K?3#uAGq$!`N_F)TNX zAvuspF?^;c9h%CPWyTDc_03%r4N8+Yzzo_VSfa!zo_7F6D?<+-+KkHwXiWQR=Mr(9|K@{{xEjfDvAbS9uNCP&{)NNCoC?XA$aRe>R8-> z5N<#S_)$d|EYpJfPC?{`$Y~f4yjH&dxHXIGG8wiaLBD6usC87cg+dd&3WLJd4_TcmEeAOz8R>ikgW(9821 z{34Se09Y?KoG<_Y;DDSoyTk>fUN0YO5)3^Za{&s1JbidC9}56{px+f|K_0;YuL5h} z_9J3y%7ucwM)E4K#=Cn7tCjjRkKjnQuiFcM6{17Jt#5F}7z8~RYqW24xV?kAU6xQN zh+h4|SmO1;TdsVOaOeD*kKf}6I7=6ZNig_rtqV?Ov1HrU(P%Hi#6npSe>%qGaNK1w zW$v+r`r0>#p~AN^8b)#7Yesu(ys(>3SCYb4sF9%A9=kMHrLmzk}E&WPG~Jx z9!r{qo5M184t;<7I`t1AsNjv912EeKkHKtOSl%wbcjFh7L6|G?Q+{?radOvuEW$>1 zoc+c&F+u$^0f}1_2dN&lS#I#p3e&+|YGHlMzRC)%&8TnGt+p*;Oz z`0=D=n|qcN+f@07;QjB@ktLhZ`+qz;(xYDli^Pex&&wwU2V4N-a3b@veqHg2cvCRb zoi=ZerLk!4t5!s3?|ARuWx_4-VCgl|TY2qa@$Dr~5QdiT8?$oPpZhaF5UOZ&x=+I9 zt((`6wBPM((BS{;2lmSB;o%z{>=mg*1k2oLjI=+zcf5$4BIZmkOrjrE z*VY(<@FO?zBVDc+Q~Lh;LnlYodZ$J3tmWJBN4j~wVOWelzexhft2nY6A3PZAcm!q} z931CL#1Ki6;HM{agTbKF>3(R-yuF1&Apn3Nh@PGvv)K$mkVqu*^z@vaFgQ3kFfg!s z^=f26@{Ny=_w@7x1qHF$bEk5X$)wR}0s{l>V!TCGM=R5Ei1Ll8u7Z*N0G1CPgB zyLPP|0H{-FRUDJv`Ea=9fX zC63D4+FBlumz$eAJv~j5q*|@^_xC?_>XiL0K@bH61$;i=&CLx(QGb8`8#iu{BnjJW zHUvSgUcK7T&~W(h;koN8t5vB~Ha0dgnane1&RA#87dVcaOpEMM)6>)E&YiPZEXBpe zlarHk89g;+G#U#E3hL_W002xT6UTApOeR%UR_5g7q^73!_4PG2Hi|@|ii(Pfi3vIY z0ES^?Mx1IOizO0?e0_a!9483k`PtCk-rm~Unwpw=?b@~O?(WdgP^bMMAYlLg{dIM9 zOy}OcxVTs%k(@q#n$PF+`TXkYYA%;cr_*5ofWcr$PEL-Ai772Db)3`L*|~G)&eqn} zq@*OrbXim`UAiO`3XdK=%H#1=D%HHV>FMbqAtCAM=@!e}C6Cc))ai5zg~H3rYjkup zD=RBMKR+`wv!kN}1^{3fR#a3}RaLcP#}20|H!^bT)~%G3lp{xu!0_{Wr2hW?>({UQ z`T1F`)|D$)*3{IP&1UDKhLn_)sMYHH{QRkzV=$M?#W2idGFh!wf*`b7ZGC-xVPT=c zV1Vs&!otFoN~M>VQ$G_G6}5No-m0pqwzjr;?W@INu~;m#k*%qz(P%VUt#;3zJ^lUt zU0q%G?%kVzvF7cqQmLw|tA~e&XIqun*x2Ug=9-!s48ty7ycil9Di(|7aybkD7#y?%lgQ z9`Ewy%eDpgxlvJ3Cr+GTFc>(F+cg;(8TPc>y?b|jeEgLwR}LLIBoqp1+1c4_HrvO? z$J5g@G&D3gIC$2ITrQ7`iwh4AfA;K|OePZu1oriTVVG1Zl}e@S)~)mK@UU1cI-Ty| z!Gj8gg2UmUD2ibif*{e+(R4bU#bU|j@{Joe^7(uSf+8X!q*7@_M1;L=AqbM3oXp{H nT3T9A6wS=c+_!HZolgHhw9g$%O4Wbp00000NkvXXu0mjf3HKBY literal 0 HcmV?d00001 diff --git a/lib/eqc/doc/index.html b/lib/eqc/doc/index.html new file mode 100644 index 0000000..047b9dc --- /dev/null +++ b/lib/eqc/doc/index.html @@ -0,0 +1,17 @@ + + + +Overview + + + + + + +<h2>This page uses frames</h2> +<p>Your browser does not accept frames. +<br>You should go to the <a href="overview-summary.html">non-frame version</a> instead. +</p> + + + \ No newline at end of file diff --git a/lib/eqc/doc/modules-frame.html b/lib/eqc/doc/modules-frame.html new file mode 100644 index 0000000..f6cea3f --- /dev/null +++ b/lib/eqc/doc/modules-frame.html @@ -0,0 +1,14 @@ + + + +Overview + + + +

      Modules

      + + + +
      eqc
      eqc_gen
      eqc_symbolic
      + + \ No newline at end of file diff --git a/lib/eqc/doc/overview-summary.html b/lib/eqc/doc/overview-summary.html new file mode 100644 index 0000000..4d02c2e --- /dev/null +++ b/lib/eqc/doc/overview-summary.html @@ -0,0 +1,53 @@ + + + +QuickCheck Mini + + + + +

      QuickCheck Mini

      +

      Copyright Quviq AB, 2006-2010.

      +

      Version: 1.0.1

      +

      +QuickCheck is a specification-based testing tool for Erlang. QuickCheck Mini is +a powerful, but restricted version of QuickCheck. It is released free of charge for +anyone interested in learning more about QuickCheck as well as for open source +developers that want to ship their code with simple QuickCheck properties.

      + +

      In order to learn more about QuickCheck, please visit http://www.quviq.com/. +There is also a mailing list discussing QuickCheck issues, which you can subscribe to by sending an email to quickcheck-questions@quviq.com with subject "Subscribe".

      + + +

      QuickCheck

      + +Programs +are tested by writing properties in the source code, such as +
      +prop_reverse() ->
      +  ?FORALL(Xs,list(int()),
      +    lists:reverse(lists:reverse(Xs)) == Xs).
      +
      +Properties are tested by calling +
      +eqc:quickcheck(prop_reverse())
      +

      +which generates 100 random test cases and checks that the property +returns true in every case.

      + +

      +Functions for writing properties are found in module eqc, +while functions for writing test data generators (such as +list(int()) above) are found in module eqc_gen. Parts +of the interface are provided via macros, which are defined in +eqc.hrl--this file should be included in every module which +uses QuickCheck. This header file also imports much of the QuickCheck +API, so it can be used without explicit module names. +

      + + +
      + +

      Generated by EDoc, Jun 13 2010, 13:15:30.

      + + diff --git a/lib/eqc/doc/overview.edoc b/lib/eqc/doc/overview.edoc new file mode 100644 index 0000000..109e9c7 --- /dev/null +++ b/lib/eqc/doc/overview.edoc @@ -0,0 +1,39 @@ +@title QuickCheck Mini +@version {@version} +@copyright Quviq AB, 2006-2010. +@doc +QuickCheck is a specification-based testing tool for Erlang. QuickCheck Mini is +a powerful, but restricted version of QuickCheck. It is released free of charge for +anyone interested in learning more about QuickCheck as well as for open source +developers that want to ship their code with simple QuickCheck properties. + +In order to learn more about QuickCheck, please visit http://www.quviq.com/. +There is also a mailing list discussing QuickCheck issues, which you can subscribe to by sending an email to quickcheck-questions@quviq.com with subject "Subscribe". + + +

      QuickCheck

      + +Programs +are tested by writing properties in the source code, such as +
      +prop_reverse() ->
      +  ?FORALL(Xs,list(int()),
      +    lists:reverse(lists:reverse(Xs)) == Xs).
      +
      +Properties are tested by calling +
      +eqc:quickcheck(prop_reverse())
      +
      +which generates 100 random test cases and checks that the property +returns true in every case. + +

      +Functions for writing properties are found in module {@link eqc}, +while functions for writing test data generators (such as +list(int()) above) are found in module {@link eqc_gen}. Parts +of the interface are provided via macros, which are defined in +eqc.hrl--this file should be included in every module which +uses QuickCheck. This header file also imports much of the QuickCheck +API, so it can be used without explicit module names. +

      + diff --git a/lib/eqc/doc/packages-frame.html b/lib/eqc/doc/packages-frame.html new file mode 100644 index 0000000..4193cbe --- /dev/null +++ b/lib/eqc/doc/packages-frame.html @@ -0,0 +1,11 @@ + + + +Overview + + + +

      Packages

      +
      + + \ No newline at end of file diff --git a/lib/eqc/doc/stylesheet.css b/lib/eqc/doc/stylesheet.css new file mode 100644 index 0000000..e426a90 --- /dev/null +++ b/lib/eqc/doc/stylesheet.css @@ -0,0 +1,55 @@ +/* standard EDoc style sheet */ +body { + font-family: Verdana, Arial, Helvetica, sans-serif; + margin-left: .25in; + margin-right: .2in; + margin-top: 0.2in; + margin-bottom: 0.2in; + color: #000000; + background-color: #ffffff; +} +h1,h2 { + margin-left: -0.2in; +} +div.navbar { + background-color: #add8e6; + padding: 0.2em; +} +h2.indextitle { + padding: 0.4em; + background-color: #add8e6; +} +h3.function,h3.typedecl { + background-color: #add8e6; + padding-left: 1em; +} +div.spec { + margin-left: 2em; + background-color: #eeeeee; +} +a.module,a.package { + text-decoration:none +} +a.module:hover,a.package:hover { + background-color: #eeeeee; +} +ul.definitions { + list-style-type: none; +} +ul.index { + list-style-type: none; + background-color: #eeeeee; +} + +/* + * Minor style tweaks + */ +ul { + list-style-type: square; +} +table { + border-collapse: collapse; +} +td { + padding: 3 +} diff --git a/lib/eqc/ebin/eqc.app b/lib/eqc/ebin/eqc.app new file mode 100644 index 0000000..a1c5aa5 --- /dev/null +++ b/lib/eqc/ebin/eqc.app @@ -0,0 +1,7 @@ +{application,eqc, + [{mod,{eqc,[]}}, + {description,"Quviq QuickCheck Mini"}, + {vsn,"1.0.1"}, + {modules,[eqc,eqc_gen,eqc_symbolic,eqc_warn]}, + {applications,[kernel,stdlib,inets]}]}. + diff --git a/lib/eqc/examples/generators_eqc.erl b/lib/eqc/examples/generators_eqc.erl new file mode 100644 index 0000000..07659b2 --- /dev/null +++ b/lib/eqc/examples/generators_eqc.erl @@ -0,0 +1,227 @@ +%% This file tests that generators produce the right kind of data. It +%% also illustrates how to write a QuickSpec specification of a +%% datatype (such as the generator datatype). + +-module(generators_eqc). +-include_lib("eqc/include/eqc.hrl"). + +-compile(export_all). + +%% Generate most combinations of generator functions, as a symbolic +%% generator--for example: +%% {call,oneof,[{{call,bitstring,14},{call,elements,[15]}}]} + +%% We control the size of the symbolic generator, by limiting the +%% nesting depth. + +generator() -> + ?SIZED(N,generator(N)). + +generator(0) -> + % base case: no nested generators. + oneof([constant(), + binary,{call,binary,nat()}, + bitstring,{call,bitstring,nat()}, + bool,char, + ?SUCHTHAT({call,choose,Lo,Hi}, + {call,choose,int(),int()}, + Lo= + % recursive case: reduce the size of nested compound generators. + N1 = N div 4, + ?LAZY(oneof([generator(0),compound_generator(N1)])). + +constant() -> + oneof([int(),atom()]). + +atom() -> + elements([a,b,c,d]). + +term() -> + ?LET(G,generator(),generated_by(G)). + +compound_generator(N) -> + Smaller = generator(N), + oneof([?LETSHRINK([Sm],[Smaller],?LET(Def,term(),{call,default,Sm,Def})), + ?LETSHRINK(Gs,non_empty_list(Smaller), + {call,frequency,[{positive(),G} || G <- Gs]}), + ?LETSHRINK([Sm],[Smaller],{call,list,Sm}), + ?LETSHRINK([Sm],[Smaller],{call,orderedlist,Sm}), + ?LETSHRINK([Sm],[?SUCHTHAT(Sm,Smaller,not often_empty(Sm))], + {call,non_empty,Sm}), + ?LETSHRINK([Sm],[Smaller],{call,noshrink,Sm}), + ?LETSHRINK(Gs,non_empty_list(Smaller), + {call,oneof,Gs}), + ?LETSHRINK([Sm],[Smaller],{call,resize,choose(0,N),Sm}), + ?LETSHRINK(L,list(constant()),{call,shuffle,L}), + ?LETSHRINK(Gs,short_list(Smaller), + list_to_tuple(Gs)), + ?LETSHRINK([Sm],[Smaller],{call,vector,choose(0,4),Sm})]). + +%% To keep the size of generators under control, it is not enough to +%% restrict nesting depth. We also want lists of arguments to oneof, +%% frequency etc to be reasonably short. + +short_list(G) -> + ?SIZED(Size, + resize(Size div 3 + 1, + list(resize(Size,G)))). + +positive() -> + ?LET(N,nat(),N+1). + +non_empty_list(G) -> + non_empty(short_list(G)). + +%% When we generate {call,non_empty,G}, we need to know that G is +%% reasonably likely to produce a non-empty value... otherwise we may +%% loop when we try to use this generator! + +often_empty([]) -> + true; +often_empty(<<>>) -> + true; +often_empty({call,vector,N,G}) -> + N==0; +often_empty({call,binary,N}) -> + N==0; +often_empty({call,bitstring,N}) -> + N==0; +often_empty({call,noshrink,G}) -> + often_empty(G); +often_empty({call,oneof,Gs}) -> + % conservative + lists:any(fun often_empty/1,Gs); +often_empty({call,frequency,WGs}) -> + % conservative + lists:any(fun often_empty/1, [G || {_,G} <- WGs]); +often_empty({call,default,G,V}) -> + often_empty(G) andalso often_empty(V); +often_empty({call,resize,N,G}) -> + N<4 orelse often_empty(G); +often_empty({call,shuffle,L}) -> + L==[]; +often_empty(_) -> + false. + +%% The values generated by a symbolic generator. + +generated_by(A) when is_atom(A) -> + case erlang:function_exported(eqc_gen,A,0) of + true -> + eqc_gen:A(); + false -> + A + end; +generated_by(T) when is_tuple(T), size(T)>0 -> + case tuple_to_list(T) of + [call,F|Args] -> + erlang:apply(eqc_gen,F,[generated_by(G) || G <- Args]); + Gs -> + list_to_tuple([generated_by(G) || G <- Gs]) + end; +generated_by([H|T]) -> + [generated_by(H)|generated_by(T)]; +generated_by(X) -> + X. + +%% Check that a generated value corresponds to its generator. + +is(binary,B) -> + is_binary(B); +is({call,binary,N},B) -> + is_binary(B) andalso size(B)==N; +is(bitstring,B) -> + is_bitstring(B); +is({call,bitstring,N},B) -> + is_bitstring(B) andalso size(B) == N div 8; +is(bool,B) -> + B==true orelse B==false; +is(char,C) -> + is_integer(C) andalso 0= + is_integer(N) andalso Lo =< N andalso N =< Hi; +is({call,default,G,D},X) -> + is(G,X) orelse X==D; +is({call,elements,L},X) -> + lists:member(X,L); +is({call,frequency,WGs},X) -> + lists:any(fun({_,G})->is(G,X) end,WGs); +is(int,N) -> + is_integer(N) andalso abs(N) =< 100; +is(largeint,N) -> + is_integer(N); +is(nat,N) -> + is_integer(N) andalso N>=0; +is(real,N) -> + is_float(N); +is({call,list,G},L) -> + is_list(L) andalso + lists:all(fun(X)->is(G,X) end,L); +is({call,orderedlist,G},L) -> + is_list(L) andalso + lists:all(fun(X)->is(G,X) end,L) andalso + lists:sort(L) == L; +is({call,non_empty,G},X) -> + is(G,X) andalso X/=[] andalso X/=<<>>; +is({call,noshrink,G},X) -> + is(G,X); +is({call,oneof,Gs},X) -> + lists:any(fun(G) -> is(G,X) end,Gs); +is({call,resize,_,G},X) -> + is(G,X); +is({call,shuffle,L},X) -> + is_list(X) andalso lists:sort(X) == lists:sort(L); +is({call,vector,N,G},V) -> + is_list(V) andalso length(V)==N andalso + lists:all(fun(X)->is(G,X) end,V); +is(GT,T) when is_tuple(GT) -> + is_tuple(T) andalso size(T)==size(GT) andalso + lists:all(fun({G,X})->is(G,X) end, + lists:zip(tuple_to_list(GT), + tuple_to_list(T))); +is(Const,X) when is_atom(Const); is_integer(Const) -> + Const == X. + +%% The properties. + +%% Generate symbolic generators, and report on the distribution of +%% generator functions used. +prop_generator() -> + ?FORALL(G,generator(), + aggregate(generator_types(G),true)). + +generator_types(G) when is_tuple(G) -> + case tuple_to_list(G) of + [call,frequency,WArgs] -> + [T || {_,G1} <- WArgs, T <- generator_types(G1)]; + [call,F|Args] -> + [F|[T || A <- Args, + T <- generator_types(A)]]; + L -> + [T || X <- L, + T <- generator_types(X)] + end; +generator_types(N) when is_integer(N) -> + [integer_constant]; +generator_types(X) when is_float(X) -> + [float_constant]; +generator_types(B) when is_binary(B) -> + [binary]; +generator_types(B) when is_bitstring(B) -> + [bitstring]; +generator_types(L) when is_list(L) -> + [list|[T || X <- L, T <- generator_types(X)]]; +generator_types(X) -> + [X]. + +%% For each kind of generator, use it to generate a value, and check +%% that the value matches the generator. This tests the generators +%% (and our generator-generators!) pretty thoroughly. + +prop_correct_types() -> + ?FORALL(G,generator(), + ?FORALL(X,generated_by(G),is(G,X))). + diff --git a/lib/eqc/examples/ip_checksum.erl b/lib/eqc/examples/ip_checksum.erl new file mode 100644 index 0000000..ab76940 --- /dev/null +++ b/lib/eqc/examples/ip_checksum.erl @@ -0,0 +1,40 @@ +%%% File : ip_checksum.erl +%%% Author : Ulf Norell , +%%% Thomas Arts +%%% Description : Implementation of IP checksums. +%%% Created : 7 Jun 2010 by Ulf Norell +-module(ip_checksum). + +-export([checksum/1, checksum/2, sum/2, pad/2, add/2, negate/1]). + +checksum(Bin) -> + checksum(Bin, 16). + +checksum(Bin, N) -> + negate(sum(pad(Bin, N), N)). + +% Sum a binary of N bit words in ones complement representation. +sum(Bin, N) -> + lists:foldl(fun(A, B) -> add(A, B) end, <<0:N>>, + [ <> || <> <= Bin ]). + +% Add two numbers in ones complement representation. +add(A, B) -> + N = bit_size(A), + <> = A, + <> = B, + Carry = (X + Y) div (1 bsl N), + <<(X + Y + Carry):N>>. + +%% invert all bits... as simple as that. +negate(BitString) -> + << <<(1-Bit):1>> || <> <= BitString >>. + +pad(Binary, Bits) -> + PaddingLength = + case bit_size(Binary) rem Bits of + 0 -> 0; + N -> Bits - N + end, + <>. + diff --git a/lib/eqc/examples/ip_checksum_eqc.erl b/lib/eqc/examples/ip_checksum_eqc.erl new file mode 100644 index 0000000..a600c02 --- /dev/null +++ b/lib/eqc/examples/ip_checksum_eqc.erl @@ -0,0 +1,218 @@ +%%% File : ip_checksum_eqc.erl +%%% Author : Ulf Norell , +%%% Thomas Arts +%%% Description : QuickCheck properties for ip_checksum.erl +%%% Created : 7 Jun 2010 by Ulf Norell +-module(ip_checksum_eqc). + +-include_lib("eqc/include/eqc.hrl"). + +-compile(export_all). + +% == Testing IP checksum implementations == + +% In RFC 1071 efficient algorithms are discussed for computing the internet +% checksum, also known as IP checksum. Whenever you implement efficient +% algorithms, an error may sneak through. + +% This article is meant to be used as test driven development specification for +% anyone that wants to implement one of the algorithms of RFC 1071 or even a new +% one to compute the IP checksum. The article can also be read as an example of +% specifying something without revealing its implementation details; a good +% example of using QuickCheck specifications. + +% Whether you write your code in Erlang, C or Java, we assume that you can build +% an interface to a module called ip_checksum.erl in which Erlang functions +% either are the functions under test or call the functions under test. + +% === IP Checksum === + +% The IP checksum is the 16 bit one's complement of the one's complement sum of +% all 16 bit words in the header. + +% Ones complement is a way of representing negative numbers (see +% [http://en.wikipedia.org/wiki/Signed_number_representations#Ones.27_complement +% WikiPedia] for more details). + +% The IP checksum uses 16 bit words. In 16 bits you can represent the numbers 0 +% to 65535. The idea with ones complement is to use half the numbers in this +% interval for representing negative numbers. Thus, 0 up to 32767 are the +% positive numbers and 65535 is -0, or an alternative representation of zero. +% The number 65534 is -1 etc. Until 32768 which is -32767. Hence the interval +% -32767 up to 32767 can be represented. + +% In the remainder of this article we will present properties for functions that +% you probably would like to test. The properties are always parametrized by the +% word size. + +% === Utility functions === + +% First we define some functions that will come in handy. + +% The maximum number that can be represented in ''N'' bits. In the ones +% complement interpretation this will be the negative zero. +max_int(N) -> + (1 bsl N) - 1. + +negative_zero(N) -> + max_int(N). + +% === Ones complement === + +% The first function we might want to check is the ones' complement of a word, +% which in ones' complement representation corresponds to the negation. We +% assume we have a function '''ip_checksum:negate/1''' implemented that takes a +% bit string as input and computes its ones' complement. + +% Looking at the specification of ones' complement representation above we can +% see that adding the ones' complement representation of a number and the +% representation of its negation results in the representation of -0. For +% instance, the representation of -2 is 65533 and the representation of 2 is 2. +% Adding these we get 65535 which is the representation of -0. We use this +% property to test the implementation of the '''negate/2''' function. + +prop_negate(N) -> + ?FORALL(I, choose(0, max_int(N)), + begin + <> = ip_checksum:negate(<>), + equals(negative_zero(N), I + CI) + end). + +% The property above is parameterized by the word size N. We'll want to test +% our properties for a range of different word sizes, so we define a general +% function to transform a parameterized property to a property choosing random +% word sizes. + +random_word_size(Prop) -> + ?FORALL(N, choose(1, 64), Prop(N)). + +prop_negate() -> + random_word_size(fun prop_negate/1). + +% === Padding === + +% It is not clear from the specification presented above, but if you need to +% compute the checksum of a list of bytes in base 16, then there should be an +% even number of bytes. Likewise, if we would like to do ones complement in 32 +% bits base, we would need to extend a sequence of bytes such that it is +% divisible by 4. + +% Extending a bit string such that it is divisible by the base is called padding. +% We assume that you implemented a padding function that added the necessary +% bits, given a bit string. We assume this function to be implemented as +% '''ip_checksum:pad/1''' taking a bit string as argument and returning a new +% bit string which is an extended version with as many zero bits as needed. + +prop_padding() -> + random_word_size(fun prop_padding/1). + +prop_padding(N) -> + ?FORALL(BitString, bitstring(), + begin + Bits = bit_size(BitString), + <> = ip_checksum:pad(BitString,N), + Zeros = bit_size(Padded), + % If this property fails we need to know what the pad function actually + % returned in order to understand what went wrong. This is what the + % ?WHENFAIL macro is for. + ?WHENFAIL(io:format("B = ~w\nPadded = ~w\nZeros = ~w\n", + [B, Padded, Zeros]), + ((Bits + Zeros) rem N) == 0 andalso % the new length is divisible by N + B == BitString andalso % we don't change the bit string + <<0:Zeros>> == Padded andalso % we pad with zeros + Zeros < N % we don't pad more than we have to + ) + end). + +% Confident that the padding function works we can write a generator for +% correctly padded bit strings. +padded_bitstring(N) -> + ?LET(Bits, bitstring(), ip_checksum:pad(Bits, N)). + +% An alternative definition of this generator would not use the padding +% function, but rather first generate the length of the bit string and then +% pass that to the bit string generator (see below). The advantage of the former +% definition is that it behaves better when shrinking. The version below will +% regenerate the bit string everytime the length is getting shorter. +padded_bitstring_2(N) -> + ?LET(Len, nat(), bitstring(N * Len)). + +% === Ones complement sum === + +% The ones complement sum is computed by adding a number of words in ones +% complement representation. We assume this function to be implemented as +% '''ip_checksum:sum/2''' which takes a bit string as first argument and a +% word size as second argument. We assume that padding is done outside the +% sum function and only test that the function works for bit strings of +% which the length is divisible by the given word size. + +% Because of our test driven development method, we have already tested the +% '''negate/1''' function and therefore trust this function in our property. +% Remember that adding the representations of a number and its negation yields +% -0. This is in fact also true if we use one's complement addition rather than +% simply adding the representations (which is not the same thing). So if we +% concatenate a bit string with the negation of its sum, the sum of the +% resulting bit string should be -0 if our implementation of '''sum/2''' is +% correct. By testing the sum function in this way we don't have to worry about +% specifying the intricacies of ones' complement arithmetic (except for the +% fact that X + (-X) = -0). + +prop_sum() -> + random_word_size(fun prop_sum/1). + +prop_sum(N) -> + ?FORALL(Bin, padded_bitstring(N), + begin + Sum = ip_checksum:sum(Bin, N), + CSum = ip_checksum:negate(Sum), + equals(ip_checksum:sum(<>, N), + <<(negative_zero(N)):N>>) + end). + +% === Checksum === + +% After computing ones' complement sum, one has to take the ones' complement of +% the result to compute the checksum. Of course, we have all ingredients in +% house to do so, but in case you implement both functions as one you would +% like to test the final result '''ip_checksum:checksum/2''' with a bit string +% and word size as arguments. + +% We first test that the '''checksum/2''' function takes care of padding, by +% checking that padding the bitstring before passing it to '''checksum/2''' +% doesn't change the result. + +prop_checksum_pad() -> + random_word_size(fun prop_checksum_pad/1). + +prop_checksum_pad(N) -> + ?FORALL(Bits, bitstring(), + equals(ip_checksum:checksum(Bits, N), + ip_checksum:checksum(ip_checksum:pad(Bits, N), N))). + +% We can test the '''checksum/2''' function in the same way as we tested +% '''sum/2''' above. Taking a bit string and prepending its checksum should +% result in a bit string whose checksum is zero. Here's why: +% +% % definition of checksum +% checksum(Bits) == -sum(Bits) +% +% checksum(checksum(Bits) ++ Bits) == {def. of checksum} +% -sum(-sum(Bits) ++ Bits) == {sum(Xs ++ Ys) == sum(Xs) + sum(Ys)} +% -(-sum(Bits) + sum(Bits)) == {adding -X and X} +% -(-0) == +% 0 +% +% Note that due to padding, the property doesn't hold if we append the checksum +% rather than prepending it. + +prop_checksum() -> + random_word_size(fun prop_checksum/1). + +prop_checksum(N) -> + ?FORALL(Bin, bitstring(), + begin + Sum = ip_checksum:checksum(Bin, N), + equals(ip_checksum:checksum(<>, N), + <<0:N>>) + end). + diff --git a/lib/eqc/examples/lists_eqc.erl b/lib/eqc/examples/lists_eqc.erl new file mode 100644 index 0000000..4203fa7 --- /dev/null +++ b/lib/eqc/examples/lists_eqc.erl @@ -0,0 +1,223 @@ +%%% File : lists_eqc.erl +%%% Author : Thomas Arts +%%% Ulf Norell +%%% Description : QuickCheck tests for some functions from the lists library. +%%% Created : 23 Mar 2010 by Thomas Arts + +-module(lists_eqc). + +-include_lib("eqc/include/eqc.hrl"). + +-compile(export_all). + +% === Testing lists:delete/2 === + +% The lists:delete/2 function removes an element from a list. Here's a property +% we might want for this function: after you've removed an element from a list +% it's not there anymore. The corresponding QuickCheck property is: + +prop_delete_0() -> + ?FORALL({X, Xs}, {int(), list(int())}, + not lists:member(X, lists:delete(X, Xs))). + +% Checking this property for 100 random values and lists it might actually +% pass. +test_delete_0() -> + quickcheck(prop_delete_0()). + +% However, rerunning the property a few more times will reveal a problem: +test_delete_0_more() -> + quickcheck(numtests(2000,prop_delete_0())). + +% We get output looking like this: +% 74> lists_eqc:test_delete_0_more(). +% ............................................................................ +% ............................................................................ +% ............................................................................ +% ............................................................................ +% ....................................................Failed! After 377 tests. +% {7,[-6,1,23,24,7,7]} +% Shrinking..(2 times) +% {7,[7,7]} +% false +% There is a problem with our specification. lists:delete/2 only removes the +% first occurrence of the element, something our specification fails to take +% into account. + +% Before fixing the problem in the specification, it's worth thinking about why +% we needed so many tests to find the bug. In order to find the bug we need to +% generate a value and a list such that the value appears twice in the list. +% What's the probability of that? To answer that question we can write a new +% property: + +prop_member_probability() -> + ?FORALL({X, Xs}, {int(), list(int())}, + collect(lists:member(X, Xs), true)). + +% This property always succeeds, but for every test case it records whether the +% generated value appears (even once) in the list. Running the property a large +% number of times reveals that the probability that a random value appears in a +% random list is around 8%. No wonder it's hard to find a test case where it +% appears at least twice! + +% To make it easier to find a failing case, we can change our property to only +% look at cases where the value appears at least once in the list. To do this +% we use the ?IMPLIES macro. + +prop_delete_1() -> + ?FORALL({X, Xs}, {int(), list(int())}, + ?IMPLIES(lists:member(X, Xs), + not lists:member(X, lists:delete(X, Xs)))). + +% Now the output will look something like this: +% 102> eqc:quickcheck(lists_eqc:prop_delete_1()). +% xxxxxxxxxxxxxxxxxx.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.xxxxxxxxxxxxxxxx. +% .xxxxxxxxxxxxxx.xx.xxxxxxx.xxxxxxxxxxx.xxxxxxxxxxxxxxxxxxx.xxx.xxxxxxxxxxxxx +% xxxxxxxxx.xxxxxxxxxxx.xxxxx.xxxxxxxxxxxxxxxxxxxxxx.xx.xxxxxxxxxxxx.xxxxxxxxx +% xxxxxxxxxxxxxxxxxxxxxxxxx..xxxxx.xxxx.xxxxxxxxx.xxxxxFailed! After 22 tests. +% {1,[31,35,35,34,-21,-13,7,1,2,1,-35,2]} +% Shrinking.....(5 times) +% {1,[1,1]} +% false +% The 'x's represent test cases that were discarded because they didn't satisfy +% the condition of the ?IMPLIES. + +% Now that we have a property that fails reliably we can use it to document our +% misconception about the behaviour of lists:delete/2. The fails/1 function +% takes a property that is expected to fail and fails it doesn't. + +prop_delete_2() -> + fails( + ?FORALL({X, Xs}, {int(), list(int())}, + ?IMPLIES(lists:member(X, Xs), + not lists:member(X, lists:delete(X, Xs))))). + +% Let's fix the specification. One possibility would be to count the number of +% occurrences of the value we're removing before and after calling +% lists:delete/2, but we can write a more precise specification quite elegantly: + +prop_delete_3() -> + ?FORALL({Xs, X, Ys}, {list(int()), int(), list(int())}, + ?IMPLIES(not lists:member(X, Xs), + equals(lists:delete(X, Xs ++ [X] ++ Ys), + Xs ++ Ys))). + +% The equals function compares its arguments for equality and, if they're not +% equal, prints the arguments. This lets us see what lists:delete actually +% returned in the case we get a failing test case. Try removing the ?IMPLIES +% and run the property to see what it looks like. + +% === Testing lists:seq/3 === + +% The lists:seq/2 function has recently changed in Erlang. The new +% specification allows lists:seq(1,0) and returns [] in that case. Copying the +% specification from the manual still reveals an error +% eqc:quickcheck(lists_eqc:prop_seq0()) due to the fact that a special case is +% overlooked. The fix is in prop_seq(). + +% This is the property according to the documentation. This property fails with +% a badarith exception on the test case {0, 0, 0}. The problem is that the +% specification of the length is not correct for increment 0. +prop_seq0() -> + ?FORALL({From,To,Incr},{int(),int(),int()}, + case catch lists:seq(From,To,Incr) of + {'EXIT',_} -> + (To < From-Incr andalso Incr > 0) orelse + (To > From-Incr andalso Incr < 0) orelse + (Incr==0 andalso From /= To); + List -> + is_list(List) andalso + length(List) == (To-From+Incr) div Incr + end). + +% This is the property as it holds. +prop_seq() -> + ?FORALL({From,To,Incr},{int(),int(),int()}, + case catch lists:seq(From,To,Incr) of + {'EXIT',_} -> + (To < From-Incr andalso Incr > 0) orelse + (To > From-Incr andalso Incr < 0) orelse + (Incr==0 andalso From /= To); + List when Incr /= 0 -> + is_list(List) andalso + length(List) == (To-From+Incr) div Incr; + List when Incr == 0 -> + length(List) == 1 + end). + +% This is probably how one would like seq to behave. +prop_seq_wish(Seq) -> + ?FORALL({From,To,Incr},{int(),int(),int()}, + case catch Seq(From,To,Incr) of + [] -> Incr > 0 andalso From > To orelse + Incr < 0 andalso From < To; + [_] when Incr == 0 -> From == To; + List when Incr /= 0 andalso is_list(List) -> + length(List) == (To-From+Incr) div Incr; + {'EXIT', _} -> + Incr == 0 andalso From /= To; + _ -> + false + end). + +prop_seq_wish() -> + prop_seq_wish(fun lists:seq/3). + +% Here is a reference implementation satisfying prop_seq_wish. +seq(From, To, 0) when From /= To -> + exit("seq: increment 0"); +seq(From, From, _Incr) -> + [From]; +seq(From, To, Incr) when From > To andalso Incr > 0 -> + []; +seq(From, To, Incr) when From < To andalso Incr < 0 -> + []; +seq(From, To, Incr) -> + [From | seq(From + Incr, To, Incr)]. + +prop_seq_wish_granted() -> + prop_seq_wish(fun seq/3). + +% The previous properties only specifies the length of the result of +% lists:seq/3. We also want to make sure that it contains the right elements. +% In particular, if lists:seq(From, To, Incr) returns a non-empty list, the +% first element of the list should be From, and the difference between adjacent +% elements should be Incr. We've already tested that the list has the right +% number of elements so we don't have to worry about when the list ends. + +% First some helper functions: + +% We're only interested in non-empty results of seq/3. +is_cons([_|_]) -> true; +is_cons(_) -> false. + +% We want to look at the difference between adjacent elements. +diff_adjacent([X,Y|Xs]) -> + [Y - X|diff_adjacent([Y|Xs])]; +diff_adjacent(_) -> + []. + +% We use ?IMPLIES to ignore the cases when lists:seq does not return a +% non-empty list. To make sure we still get interesting test cases we collect +% the lengths of the results and the increments we've chosen. +prop_seq_elements() -> + ?FORALL({From, To, Incr}, {int(), int(), int()}, + begin + Seq = (catch lists:seq(From, To, Incr)), + ?IMPLIES(is_cons(Seq), + begin + Adj = diff_adjacent(Seq), + ?WHENFAIL(io:format("Seq = ~w\nAdj = ~w", [Seq, Adj]), + % When you have several collects in the same property you can give them + % names using collect/3 and with_title/1 to distinguish them. + % We divide the actual numbers by 5 to reduce the number of different + % values collected. + collect(with_title(lengths), length(Seq) div 5, + collect(with_title(incr), Incr div 5, + hd(Seq) == From andalso + lists:all(fun(D) -> D == Incr end, Adj) + )) + ) + end) + end). + diff --git a/lib/eqc/examples/sets_eqc.erl b/lib/eqc/examples/sets_eqc.erl new file mode 100644 index 0000000..48ee035 --- /dev/null +++ b/lib/eqc/examples/sets_eqc.erl @@ -0,0 +1,146 @@ +%%% File : sets_eqc.erl +%%% Author : Thomas Arts +%%% Description : QuickCheck properties for sets.erl +%%% Based on "Testing Data Structures with QuickCheck" +%%% Created : 24 Mar 2010 by Thomas Arts + +-module(sets_eqc). + +-include_lib("eqc/include/eqc.hrl"). + +-compile(export_all). + +%% Create a generator for the opaque type "set". The generator will generate +%% symbolic calls which when evaluated computes a set. Each symbolic call has +%% the form {call, Module, Function, Arguments} and are evaluated using the +%% function eval/1. + +%% To avoid generating infinite symbolic representations we pass the size +%% parameter to the generator and use it to make sure we stop eventually. + +set(G) -> + ?SIZED(Size,well_defined(set(Size,G))). + +set(0,G) -> + oneof([{call,sets,new,[]}, + {call,sets,from_list,[list(G)]}]); +set(N,G) -> + frequency( + [{5,set(0,G)}, + {3, ?LAZY(?LETSHRINK([Set],[set(N-1,G)], + {call,sets,add_element,[G, Set]}))}, + {1, ?LAZY(?LETSHRINK([Set],[set(N-1,G)], + {call,sets,del_element,[G, Set]}))}, + {1, ?LAZY(?LETSHRINK([Set1,Set2],[set(N div 2,G),set(N div 2,G)], + {call,sets,union,[Set1, Set2]}))}, + {1, ?LAZY(?LETSHRINK(Sets,list(set(N div 3,G)), + {call,sets,union,[Sets]}))}, + {1, ?LAZY(?LETSHRINK([Set1,Set2],[set(N div 2,G),set(N div 2,G)], + {call,sets,intersection,[Set1, Set2]}))}, + {1, ?LAZY(?LETSHRINK(Sets,?LET(L,nat(),vector(L+1,set(N div (L+1),G))), + {call,sets,intersection,[Sets]}))}, + {1, ?LAZY(?LETSHRINK([Set1,Set2],[set(N div 2,G),set(N div 2,G)], + {call,sets,subtract,[Set1, Set2]}))}, + {1, ?LAZY(?LETSHRINK([Set],[set(N div 2,G)], + {call,sets,filter,[function1(bool()), Set]}))}]). + +%% The next step is to define a model interpretation, i.e. a simplified, +%% obviously correct implementation of the data type. In this case we use +%% usorted lists. + +model(S) -> + lists:sort(sets:to_list(S)). + +%% Define the set operations on the model. + +madd_element(E,S) -> + lists:usort([E|S]). + +mdel_element(E,S) -> + S -- [E]. + +msize(S) -> + length(S). + +mis_element(E,S) -> + lists:member(E,S). + +munion(Ss) -> + lists:usort(lists:append(Ss)). + +mintersection(Sets) -> + [ E || E <- lists:usort(lists:append(Sets)), + lists:all(fun(Set) -> lists:member(E,Set) end, Sets)]. + +mis_disjoint(S1,S2) -> + mintersection([S1,S2]) == []. + +mfilter(Pred,S) -> + [ E || E <- S, Pred(E)]. + +%% Define one property for each operation. We parameterize the properties on +%% the generator for the elements. To make it easy to run the properties we +%% also define special versions that use integers. + +%% Each property have the same basic form: we check that a given operation +%% on sets has the same behaviour as the corresponding model operation. + +prop_create() -> prop_create(int()). +prop_create(G) -> + ?FORALL(Set,set(G), + sets:is_set(eval(Set))). + +prop_add_element() -> prop_add_element(int()). +prop_add_element(G) -> + ?FORALL({E,Set},{G,set(G)}, + model(sets:add_element(E,eval(Set))) == madd_element(E,model(eval(Set)))). + +prop_del_element() -> prop_del_element(int()). +prop_del_element(G) -> + ?FORALL({E,Set},{G,set(G)}, + model(sets:del_element(E,eval(Set))) == mdel_element(E,model(eval(Set)))). + + +prop_union2() -> prop_union2(int()). +prop_union2(G) -> + ?FORALL({Set1,Set2},{set(G),set(G)}, + model(sets:union(eval(Set1),eval(Set2))) == munion([model(eval(Set1)),model(eval(Set2))])). + +prop_union() -> prop_union(int()). +prop_union(G) -> + ?FORALL(Sets,list(set(G)), + model(sets:union(eval(Sets))) == munion([model(Set) || Set<-eval(Sets)])). + +prop_intersection2() -> prop_intersection2(int()). +prop_intersection2(G) -> + ?FORALL({Set1,Set2},{set(G),set(G)}, + model(sets:intersection(eval(Set1),eval(Set2))) == + mintersection([model(eval(Set1)),model(eval(Set2))])). + + +prop_intersection() -> prop_intersection(int()). +prop_intersection(G) -> + ?FORALL(Sets,eqc_gen:non_empty(list(set(G))), + model(sets:intersection(eval(Sets))) == mintersection([model(Set) || Set<-eval(Sets)])). + +prop_size() -> prop_size(int()). +prop_size(G) -> + ?FORALL(Set,set(G), + sets:size(eval(Set)) == msize(model(eval(Set)))). + +prop_is_element() -> prop_is_element(int()). +prop_is_element(G) -> + ?FORALL({E,Set},{G,set(G)}, + sets:is_element(E,eval(Set)) == mis_element(E,model(eval(Set)))). + +prop_is_disjoint() -> prop_is_disjoint(int()). +prop_is_disjoint(G) -> + ?FORALL({Set1,Set2},{set(G),set(G)}, + sets:is_disjoint(eval(Set1),eval(Set2)) == mis_disjoint(model(eval(Set1)),model(eval(Set2)))). + +prop_filter() -> prop_filter(int()). +prop_filter(G) -> + ?FORALL({Pred,Set},{function1(bool()),set(G)}, + model(sets:filter(Pred,eval(Set))) == mfilter(Pred,model(eval(Set)))). + + diff --git a/lib/eqc/include/eqc.hrl b/lib/eqc/include/eqc.hrl new file mode 100644 index 0000000..36c1bd0 --- /dev/null +++ b/lib/eqc/include/eqc.hrl @@ -0,0 +1,63 @@ +% Generated file--see release:make() +% eqc_macros.hrl +-define(DELAY(X),fun()->X end). +-define(FORCE(X),(X)()). +-define(LET(X,E,E2),eqc_gen:bind(E,fun(X)->E2 end)). +-define(SIZED(S,G),eqc_gen:sized(fun(S)->G end)). +-define(SUCHTHAT(X,G,P),eqc_gen:suchthat(G,fun(X)->P end)). +-define(SUCHTHATMAYBE(X,G,P),eqc_gen:suchthatmaybe(G,fun(X)->P end)). +-define(SHRINK(G,Gs),eqc_gen:shrinkwith(G,?DELAY(Gs))). +-define(LETSHRINK(Es,Gs,E), eqc_gen:letshrink(Gs,fun(Es) -> E end)). +-define(LAZY(G),eqc_gen:lazy(?DELAY(G))). +-define(IMPLIES(Pre,Prop),eqc:implies(Pre,??Pre,?DELAY(Prop))). +-define(FORALL(X,Gen,Prop),eqc:forall(Gen,fun(X)->Prop end)). +-define(WHENFAIL(Action,Prop),eqc:whenfail(fun(_) -> Action end,?LAZY(Prop))). +-define(TRAPEXIT(E),eqc:trapexit(?DELAY(E))). +-define(TIMEOUT(Limit,Prop),eqc:timeout(Limit,?LAZY(Prop))). +-define(ALWAYS(N,P),eqc:always(N,?DELAY(P))). +-define(SOMETIMES(N,P),eqc:sometimes(N,?DELAY(P))). +% eqc_imports.hrl +-import(eqc_gen, + [pick/1,pick/2, + includeif/2,return/1,applygen/2, + noshrink/1,shrinkings/1,shrinking_path/2, + timeout/2, + resize/2, + parameter/1, parameter/2, with_parameter/3, with_parameters/2, + choose/2, + shuffle/1, + sample/1, sampleshrink/1, + oneof/1, frequency/1, + non_empty/1, + elements/1, growingelements/1, list/1, shrink_list/1, vector/2, + function0/1, function1/1, function2/1, function3/1, function4/1, + bool/0, maybe/1, char/0, int/0, shrink_int/3, nat/0, largeint/0, + real/0, orderedlist/1, + binary/0, binary/1, bitstring/0, bitstring/1, + default/2, weighted_default/2, + seal/1,open/1,peek/1, + fault/2, fault_rate/3, more_faulty/2, less_faulty/2, no_faults/1, + prop_shrinks_without_duplicates/1, shrink_without_duplicates/1, + is_generator/1]). + +-import(eqc_symbolic, + [eval/1,eval/2,defined/1,well_defined/1,pretty_print/1,pretty_print/2]). + +-import(eqc,[equals/2, + fails/1, + conjunction/1, + collect/2,collect/3,classify/3,aggregate/2,aggregate/3,measure/3, + %distribution/0, + with_title/1, + %print_distribution/1, + numtests/2, + on_output/2, + on_test/2, + quickcheck/1, + counterexample/0,counterexample/1, + current_counterexample/0, + module/1, + check/2, + recheck/1]). + +-compile({parse_transform,eqc_warn}). From 8b0ca364832403e16b80704496c61ddcd3405dcc Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Thu, 5 May 2011 02:50:46 +0200 Subject: [PATCH 170/192] modified makefile to run quickcheck tests. Usage: make eqc_db --- Makefile | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Makefile b/Makefile index 38f69d5..52fcf4b 100644 --- a/Makefile +++ b/Makefile @@ -42,9 +42,19 @@ run: -mnesia dir '"/tmp/ggs"' \ -boot start_sasl \ -pa $(LIBDIR)/erlv8/ebin/ \ + -pa $(LIBDIR)/eqc/ebin/ \ -pa ebin \ -pa src \ -s start_ggs +eqc_db: + $(ERLC) -pa $(BEAMDIR) -pa $(LIBDIR)/eqc/ebin -pa $(SRCDIR) -pa $(TESTDIR) $(TESTDIR)/ggs_db_eqc_test.erl + erl -mnesia dir '"/tmp/ggs"' \ + -pa $(LIBDIR)/eqc/ebin/ \ + -pa ebin/ \ + -pa src/ \ + -pa tests/ \ + -s ggs_db_eqc_test + force_look: true From 2dcfd674760ae73c3d5d984e8e18f46df58c19c5 Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Thu, 5 May 2011 02:52:08 +0200 Subject: [PATCH 171/192] Added quickcheck tests for ggs_db.erl --- tests/ggs_db_eqc_test.erl | 66 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 tests/ggs_db_eqc_test.erl diff --git a/tests/ggs_db_eqc_test.erl b/tests/ggs_db_eqc_test.erl new file mode 100644 index 0000000..a29a795 --- /dev/null +++ b/tests/ggs_db_eqc_test.erl @@ -0,0 +1,66 @@ +-module(ggs_db_eqc_test). + +-include_lib("lib/eqc/include/eqc.hrl"). + +-compile(export_all). + + +start() -> + io:format("prop_set_Item: "), + eqc:quickcheck(ggs_db_eqc_test:prop_setItem()), + io:format("prop_remove_Item: "), + eqc:quickcheck(ggs_db_eqc_test:prop_removeItem()), + io:format("prop_clear: "), + eqc:quickcheck(ggs_db_eqc_test:prop_clear()), + io:format("prop_length: "), + eqc:quickcheck(ggs_db_eqc_test:prop_length()), + io:format("prop_key: "), + eqc:quickcheck(ggs_db_eqc_test:prop_key()). + +%% new(length) == old(length) or +%% new(length) == old(length) + 1 +prop_setItem() -> + ggs_db:init(), + F = (fun(T,N,K,V) -> ggs_db:setItem(T,N,K,V), ggs_db:length(T,N) end), + ?FORALL({T,N,K,V},{bitstring(),bitstring(),bitstring(),bitstring()}, + (ggs_db:length(T,N) + 1 == F(T,N,K,V)) or + (ggs_db:length(T,N) == F(T,N,K,V))). + + +%% new(length) >= 0 and +%% old(length) == new(length) or +%% old(length) - 1 == new(length) +prop_removeItem() -> + ggs_db:init(), + F = (fun(T,N,K) -> ggs_db:removeItem(T,N,K), ggs_db:length(T,N) end), + G = (fun(A,B) -> ((A == B) or (A == B + 1)) and (B >= 0) end), + ?FORALL({T,N,K},{bitstring(),bitstring(),bitstring()}, + G(ggs_db:length(T,N), F(T,N,K))). + + +%% clear(X) -> (length(X,?) == 0) +prop_clear() -> + ggs_db:init(), + F = (fun(T,N) -> ggs_db:clear(T), ggs_db:length(T,N) end), + ?FORALL({T,N},{bitstring(),bitstring()}, + F(T,N) == 0). + +%% ? -> length(?,?) >= 0 +prop_length() -> + ggs_db:init(), + F = fun(T,N,K,V) -> ggs_db:setItem(T,N,K,V), ggs_db:length(T,N) end, + G = fun(T,N,K) -> ggs_db:removeItem(T,N,K), ggs_db:length(T,N) end, + ?FORALL({{T,N,K,V},{T2,N2,K2}}, + {{bitstring(),bitstring(),bitstring(),bitstring()}, + {bitstring(),bitstring(),bitstring()}}, + (((F(T,N,K,V) >= 0) and (G(T2,N2,K2) >= 0)))). + + +%% key(X,Y,length(X,Y)) -> Exists +prop_key() -> + ggs_db:init(), + F = fun(T,N) -> case ggs_db:length(T,N) of 0 -> true; X -> + case ggs_db:key(T,N,X) of _ -> true end end end, + ?FORALL({T,N},{bitstring(),bitstring()}, + F(T,N)). + From d69b12b8d6c81fcbea5ec6dca549c28b42df63e6 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 5 May 2011 05:12:19 +0200 Subject: [PATCH 172/192] prittier code --- src/ggs_gamevm.erl | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index a6ce71a..bdd0af7 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -89,7 +89,10 @@ expose(Global, Table) -> {"sendCommand", fun(#erlv8_fun_invocation{}, [Player, Command, Args])-> ggs_table:send_command(Table, Player, {Command, Args}) end}, - {"sendCommandToAll", fun(#erlv8_fun_invocation{}, [Command, Args])-> ggs_table:notify_all_players(Table, {Command, Args}) end} + {"sendCommandToAll", fun(#erlv8_fun_invocation{}, [Command, Args])-> + erlang:display(Args), + ggs_table:notify_all_players(Table, {Command, Args}) + end} %{"setTimeout", fund(#erlv8_fun_invocation{}, [Time, FunctionName])-> setTimeout(Time, FunctionName) end} ])). From fcaf8f71bc0a4ecbf9d4ddb673f6a75b6fee1372 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 5 May 2011 05:12:55 +0200 Subject: [PATCH 173/192] implemented bots --- games/JS-chat/chat.rb | 147 ++++++++++++++++++++++++++++++----- games/JS-chat/chat_server.js | 2 +- games/JS-chat/ggs-network.rb | 5 +- games/JS-chat/my-random.rb | 27 +++++++ 4 files changed, 157 insertions(+), 24 deletions(-) mode change 100644 => 100755 games/JS-chat/chat.rb create mode 100644 games/JS-chat/my-random.rb diff --git a/games/JS-chat/chat.rb b/games/JS-chat/chat.rb old mode 100644 new mode 100755 index 434b521..f5441eb --- a/games/JS-chat/chat.rb +++ b/games/JS-chat/chat.rb @@ -4,19 +4,34 @@ $: << "." require 'ggs-network.rb' require 'ggs-delegate.rb' +require 'my-random.rb' +require 'readline' class Chat include GGSDelegate + include MyRandom - def initialize - print "Table token (empty for new): " - table_token = gets.chomp + @@log_file_path = "/tmp/ggs-log.csv" + @@bot_threads = [] + + def initialize(is_bot=false, table_token="") + @is_bot = is_bot + @log = nil + @ignore = false + + stty_save = `stty -g`.chomp + trap('INT') { system('stty', stty_save); exit } + + print "Table token (empty for new): " unless @is_bot + table_token = gets.chomp unless @is_bot + @ggs_network = GGSNetwork.new(self, table_token) - @ggs_network.connect("home.jeena.net", 9000) + @ggs_network.connect("ggs.jeena.net", 9000) end - def ggsNetworkReady(ggs_network, am_i_host) + def ggsNetworkReady(ggs_network, am_i_host) unless am_i_host + say @ggs_network.table_token source_code = File.open("chat_server.js", "rb").read @ggs_network.define(source_code) else @@ -26,14 +41,29 @@ class Chat def ggsNetworkDefined(ggs_network, defined) if defined - print "Your nickname: " - nick = gets.chomp - @ggs_network.sendCommand("/nick", nick) - Thread.new { + @nick = "" + while @nick == "" + print "\rYour nickname: " unless @is_bot + unless @is_bot + @nick = gets.chomp + else + @nick = random_nick + end + end + + @ggs_network.sendCommand("/nick", @nick) + + t = Thread.new { loop do - input + unless @is_bot + input + else + sleep(rand 2) # interfall for bot to do something + random_function + end end } + @@bot_threads << t if @is_bot else source_code = File.open("chat_server.js", "rb").read @ggs_network.define(source_code) @@ -50,22 +80,60 @@ class Chat protected + def start_bots(number) + number.times { |n| + say "" + @@bot_threads << Thread.new { + Chat.new(true, @ggs_network.table_token) + } + } + end + + def stop_bots + @@bot_threads.each do |bot| + bot.kill + end + @bot_threads = [] + say "" + end + def message(message) - puts message + say message end def notice(notice) - puts "<#{notice}>" + say "<#{notice}>" end - def input - message = gets.chomp - if message[0..5] == "/nick " - @ggs_network.sendCommand("/nick", message[6,-1]) + def input(message="") + message = Readline.readline('> ', true) unless @is_bot + + if message[0,6] == "/nick " + @nick = message[6..-1] + @ggs_network.sendCommand("/nick", @nick) elsif message == "/ping" ping() + elsif message[0,6] == "/bots " + + number = message[6..-1].to_i + say "" + start_bots(number) + + elsif message == "/bots" + stop_bots + elsif message == "/log" + toggle_log + elsif message == "/help" + help + elsif message == "/ignore" + @ignore = @ignore ? false : true + if @ignore + say "" + else + say "" + end else - @ggs_network.sendCommand("message", message) + @ggs_network.sendCommand("message", message) unless message == "" end end @@ -74,12 +142,51 @@ class Chat @ggs_network.sendCommand("ping", @ggs_network.player_token) end - def pong(id) - puts "" + def pong(server_log) + time = (Time.now - @start_ping).to_s + say "" + + File.open(@@log_file_path, 'a') {|f| f.write(time << ",#{server_log}\n") } unless @log.nil? + end + + def say(something) + unless @ignore or @is_bot + puts "\r#{something}" + print "> " + end + + end + + def toggle_log + if @log.nil? + say "" + @log = Thread.new { + loop { + sleep 1 + ping + } + } + else + @log.kill + @log = nil + say "" + end + end + + def help + puts "+-----------------------------------------------+" + puts "| something | normal message |" + puts "| /nick something | changing your nick |" + puts "| /bots n | start n bots |" + puts "| /bots | stop all bots |" + puts "| /log | toggle logging |" + puts "| /ignore | toggle ignoring everyone |" + puts "| /help | show this help |" + puts "+-----------------------------------------------+" end end if __FILE__ == $0 - Chat.new + Chat.new end diff --git a/games/JS-chat/chat_server.js b/games/JS-chat/chat_server.js index 28eba6f..dd92019 100644 --- a/games/JS-chat/chat_server.js +++ b/games/JS-chat/chat_server.js @@ -13,7 +13,7 @@ function changeNick(player_id, nick) { GGS.localStorage.setItem("nick_" + player_id, nick); if (!old_nick) { - GGS.sendCommandToAll("notice", nick + " joined"); + GGS.sendCommandToAll("notice", nick + " joined ä"); } else { GGS.sendCommandToAll("notice", old_nick + " is now called " + nick); } diff --git a/games/JS-chat/ggs-network.rb b/games/JS-chat/ggs-network.rb index dad7a05..7f17818 100644 --- a/games/JS-chat/ggs-network.rb +++ b/games/JS-chat/ggs-network.rb @@ -7,7 +7,7 @@ class GGSNetwork public - attr_accessor :delegate, :player_token + attr_accessor :delegate, :player_token, :table_token def initialize(delegate, table_token="") @table_token = table_token @@ -80,7 +80,7 @@ class GGSNetwork message = "" message += "Token: #{@player_token}\n" unless @player_token.nil? message += "#{serverOrGame}-Command: #{command}\n" + - "Content-Length: #{args.length}\n\n" + "Content-Length: #{args.bytesize}\n\n" message += args if args.length > 0 @@ -90,7 +90,6 @@ class GGSNetwork def parse_hello(message) @player_token, shall_define, @table_token = message.split(",") @am_i_host = shall_define == "true" - puts "Table-Token: " + @table_token end end diff --git a/games/JS-chat/my-random.rb b/games/JS-chat/my-random.rb new file mode 100644 index 0000000..c6a87ba --- /dev/null +++ b/games/JS-chat/my-random.rb @@ -0,0 +1,27 @@ +module MyRandom + def random_function + funcs = [] + funcs << lambda { ping() } + funcs << lambda { input("/nick " + random_nick) } + 20.times { funcs << lambda { input(random_message) } } + + funcs[rnd(0,funcs.length)].call + end + + def random_message + random_string(rnd(1,30)) + end + + def random_nick + random_string(rnd(1,6)) + end + + def random_string(length) + o = [('a'..'z'),('A'..'Z')].map{|i| i.to_a}.flatten; + (0..length).map{ o[rand(o.length)] }.join; + end + + def rnd(min, max) + ((rand * (max - min)) + min).to_i + end +end \ No newline at end of file From 036e5b450d7dd14444ab7ced842b061bdc9012e2 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 5 May 2011 05:13:28 +0200 Subject: [PATCH 174/192] removed unnecessary file --- texput.log | 21 --------------------- 1 file changed, 21 deletions(-) delete mode 100644 texput.log diff --git a/texput.log b/texput.log deleted file mode 100644 index c116103..0000000 --- a/texput.log +++ /dev/null @@ -1,21 +0,0 @@ -This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) (format=latex 2011.3.22) 22 MAR 2011 15:09 -entering extended mode - restricted \write18 enabled. - %&-line parsing enabled. -**Hej - -! Emergency stop. -<*> Hej - -End of file on the terminal! - - -Here is how much of TeX's memory you used: - 3 strings out of 495062 - 104 string characters out of 1182644 - 45108 words of memory out of 3000000 - 3282 multiletter control sequences out of 15000+50000 - 3640 words of font info for 14 fonts, out of 3000000 for 9000 - 28 hyphenation exceptions out of 8191 - 0i,0n,0p,6b,6s stack positions out of 5000i,500n,10000p,200000b,50000s -No pages of output. From 08e086084c59da269494f44cced04c72091a87e5 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 5 May 2011 12:51:10 +0200 Subject: [PATCH 175/192] added serverLog to API --- games/JS-chat/chat.rb | 5 ++++- games/JS-chat/chat_server.js | 4 ++-- src/ggs_gamevm.erl | 8 ++++++-- src/ggs_stats.erl | 12 ++---------- 4 files changed, 14 insertions(+), 15 deletions(-) diff --git a/games/JS-chat/chat.rb b/games/JS-chat/chat.rb index f5441eb..e603456 100755 --- a/games/JS-chat/chat.rb +++ b/games/JS-chat/chat.rb @@ -26,7 +26,7 @@ class Chat table_token = gets.chomp unless @is_bot @ggs_network = GGSNetwork.new(self, table_token) - @ggs_network.connect("ggs.jeena.net", 9000) + @ggs_network.connect("localhost", 9000) end def ggsNetworkReady(ggs_network, am_i_host) @@ -125,6 +125,8 @@ class Chat toggle_log elsif message == "/help" help + elsif message == "/exit" + exit elsif message == "/ignore" @ignore = @ignore ? false : true if @ignore @@ -181,6 +183,7 @@ class Chat puts "| /bots | stop all bots |" puts "| /log | toggle logging |" puts "| /ignore | toggle ignoring everyone |" + puts "| /exit | exit chat |" puts "| /help | show this help |" puts "+-----------------------------------------------+" end diff --git a/games/JS-chat/chat_server.js b/games/JS-chat/chat_server.js index dd92019..8224ba5 100644 --- a/games/JS-chat/chat_server.js +++ b/games/JS-chat/chat_server.js @@ -4,7 +4,7 @@ function playerCommand(player_id, command, args) { } else if(command == "message") { message(player_id, args); } else if(command == "ping") { - GGS.sendCommand(player_id, "pong", args); + GGS.sendCommand(player_id, "pong", GGS.serverInfo() + ""); } } @@ -13,7 +13,7 @@ function changeNick(player_id, nick) { GGS.localStorage.setItem("nick_" + player_id, nick); if (!old_nick) { - GGS.sendCommandToAll("notice", nick + " joined ä"); + GGS.sendCommandToAll("notice", nick + " joined"); } else { GGS.sendCommandToAll("notice", old_nick + " is now called " + nick); } diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index bdd0af7..5b1dc42 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -90,9 +90,13 @@ expose(Global, Table) -> ggs_table:send_command(Table, Player, {Command, Args}) end}, {"sendCommandToAll", fun(#erlv8_fun_invocation{}, [Command, Args])-> - erlang:display(Args), ggs_table:notify_all_players(Table, {Command, Args}) - end} + end}, + {"serverInfo", fun(#erlv8_fun_invocation{}, []) -> + {ok, TableList} = ggs_table:get_player_list(Table), + integer_to_list(length(TableList)) + end} + %{"log", fun(#erlv8_fun_invocation{}, [Arg]) -> erlang:display(Arg) end } %{"setTimeout", fund(#erlv8_fun_invocation{}, [Time, FunctionName])-> setTimeout(Time, FunctionName) end} ])). diff --git a/src/ggs_stats.erl b/src/ggs_stats.erl index e106ddb..0c43562 100644 --- a/src/ggs_stats.erl +++ b/src/ggs_stats.erl @@ -37,16 +37,8 @@ init(_Args) -> handle_cast({add_one, Type}, St) -> case Type of - server -> NewSt = #ate { - server_messages = St#ate.server_messages + 1, - client_messages = St#ate.client_messages, - stats = St#ate.stats - }; - client -> NewSt = #ate { - server_messages = St#ate.server_messages, - client_messages = St#ate.client_messages + 1, - stats = St#ate.stats - } + server -> NewSt = St#ate { server_messages = St#ate.server_messages + 1 }; + client -> NewSt = St#ate { client_messages = St#ate.client_messages + 1 } end, {noreply, NewSt}; From b39ad8e97f3aca40d894b5abc50e2ee830efce06 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 5 May 2011 13:47:12 +0200 Subject: [PATCH 176/192] bugfix serverInfo --- games/JS-chat/chat.rb | 1 + src/ggs_gamevm.erl | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/games/JS-chat/chat.rb b/games/JS-chat/chat.rb index e603456..46d6a8a 100755 --- a/games/JS-chat/chat.rb +++ b/games/JS-chat/chat.rb @@ -26,6 +26,7 @@ class Chat table_token = gets.chomp unless @is_bot @ggs_network = GGSNetwork.new(self, table_token) + #@ggs_network.connect("192.168.0.2", 9000) @ggs_network.connect("localhost", 9000) end diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 5b1dc42..1a2eb43 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -93,8 +93,8 @@ expose(Global, Table) -> ggs_table:notify_all_players(Table, {Command, Args}) end}, {"serverInfo", fun(#erlv8_fun_invocation{}, []) -> - {ok, TableList} = ggs_table:get_player_list(Table), - integer_to_list(length(TableList)) + PlayerList = ggs_coordinator:get_all_players(), + integer_to_list(length(PlayerList)) end} %{"log", fun(#erlv8_fun_invocation{}, [Arg]) -> erlang:display(Arg) end } %{"setTimeout", fund(#erlv8_fun_invocation{}, [Time, FunctionName])-> setTimeout(Time, FunctionName) end} From e6ff8b6f16f2b433cb17ca840dd98726e930be51 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 5 May 2011 14:29:36 +0200 Subject: [PATCH 177/192] changed log file names --- games/JS-chat/chat.rb | 8 ++++---- src/ggs_stats.erl | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/games/JS-chat/chat.rb b/games/JS-chat/chat.rb index 46d6a8a..aef27e5 100755 --- a/games/JS-chat/chat.rb +++ b/games/JS-chat/chat.rb @@ -11,7 +11,7 @@ class Chat include GGSDelegate include MyRandom - @@log_file_path = "/tmp/ggs-log.csv" + @@log_file_path = "/tmp/ggs-ping-log.csv" @@bot_threads = [] def initialize(is_bot=false, table_token="") @@ -26,8 +26,8 @@ class Chat table_token = gets.chomp unless @is_bot @ggs_network = GGSNetwork.new(self, table_token) - #@ggs_network.connect("192.168.0.2", 9000) - @ggs_network.connect("localhost", 9000) + @ggs_network.connect("192.168.0.2", 9000) + #@ggs_network.connect("localhost", 9000) end def ggsNetworkReady(ggs_network, am_i_host) @@ -146,7 +146,7 @@ class Chat end def pong(server_log) - time = (Time.now - @start_ping).to_s + time = ((Time.now - @start_ping) * 1000).to_s say "" File.open(@@log_file_path, 'a') {|f| f.write(time << ",#{server_log}\n") } unless @log.nil? diff --git a/src/ggs_stats.erl b/src/ggs_stats.erl index 0c43562..02d61d6 100644 --- a/src/ggs_stats.erl +++ b/src/ggs_stats.erl @@ -45,7 +45,7 @@ handle_cast({add_one, Type}, St) -> handle_cast(print, St) -> CS = length(ggs_coordinator:get_all_players()), S = lists:concat([CS,";",St#ate.server_messages,";",St#ate.client_messages]), - log("/tmp/ggs-log.csv", S), + log("/tmp/ggs-mps-log.csv", S), io:fwrite("CS:~w | CM:~w | SM:~w |~n", [CS, St#ate.server_messages, St#ate.client_messages]), {noreply, St}; From 9efd739cbb3c925a307263d535b4de401df823ab Mon Sep 17 00:00:00 2001 From: Kallfaktorn Date: Wed, 11 May 2011 09:10:07 +0200 Subject: [PATCH 178/192] Quickcheck for ggs_network. Part of the pongbot. --- games/pong_bot_e/current_counterexample.eqc | Bin 0 -> 5 bytes games/pong_bot_e/ggs_network.erl | 6 +- games/pong_bot_e/ggs_network_eqc_test.erl | 86 +++++++++++++++++ games/pong_bot_e/pong_bot.erl | 2 +- .../pong_bot_e/test/ggs_network_eqc_test.erl | 62 ++++++++++++ .../pong_bot_e/v.01/ggs_network_eqc_test.erl | 90 ++++++++++++++++++ .../pong_bot_e/v0.2/ggs_network_eqc_test.erl | 66 +++++++++++++ .../pong_bot_e/v0.3/ggs_network_eqc_test.erl | 72 ++++++++++++++ 8 files changed, 381 insertions(+), 3 deletions(-) create mode 100644 games/pong_bot_e/current_counterexample.eqc create mode 100644 games/pong_bot_e/ggs_network_eqc_test.erl create mode 100644 games/pong_bot_e/test/ggs_network_eqc_test.erl create mode 100644 games/pong_bot_e/v.01/ggs_network_eqc_test.erl create mode 100644 games/pong_bot_e/v0.2/ggs_network_eqc_test.erl create mode 100644 games/pong_bot_e/v0.3/ggs_network_eqc_test.erl diff --git a/games/pong_bot_e/current_counterexample.eqc b/games/pong_bot_e/current_counterexample.eqc new file mode 100644 index 0000000000000000000000000000000000000000..b3e181a684245832d78600e96047168c1e679a0e GIT binary patch literal 5 McmZq9W?*Ch00cq+@Bjb+ literal 0 HcmV?d00001 diff --git a/games/pong_bot_e/ggs_network.erl b/games/pong_bot_e/ggs_network.erl index b2506cb..713bd27 100644 --- a/games/pong_bot_e/ggs_network.erl +++ b/games/pong_bot_e/ggs_network.erl @@ -2,10 +2,12 @@ -export([connect/0,append_key_value_strings_to_dict/2,key_value_string_to_list/1]). -export([read/2, send_command/3]). +%For quickcheck +-export([receive_content/1,receive_data/3]). + connect() -> %{ok,Socket} = gen_tcp:connect("ggs.jeena.net", 9000,[{active, false}]), - {ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]), - Socket. + {ok,Socket} = gen_tcp:connect("localhost", 9000,[{active, false}]). read(Socket, Ref) -> Content = receive_content(Socket), diff --git a/games/pong_bot_e/ggs_network_eqc_test.erl b/games/pong_bot_e/ggs_network_eqc_test.erl new file mode 100644 index 0000000..42b8f5c --- /dev/null +++ b/games/pong_bot_e/ggs_network_eqc_test.erl @@ -0,0 +1,86 @@ +-module(ggs_network_eqc_test). + +-include_lib("../../lib/eqc/include/eqc.hrl"). + +-compile(export_all). + + +start() -> + {ok, ListenSocket} = listen(), + eqc:quickcheck(prop_connect()), + gen_tcp:close(ListenSocket), + + {ok, ListenSocket2} = listen(), + eqc:quickcheck(prop_receive_content(ListenSocket2)), + %gen_tcp:close(ListenSocket2), + %timer:sleep(100), + + %{ok, ListenSocket} = listen(), + eqc:quickcheck(prop_receive_data(ListenSocket2)). + + +prop_connect() -> + {Atom, Socket} = ggs_network:connect(), + gen_tcp:close(Socket), + eqc:equals(Atom, ok). + +%% ?String++\n\n -> ok +prop_receive_content(ListenSocket) -> + G = fun(N) -> String = integer_to_list(N) ++"\n\n", + accept_run_compare(String,ListenSocket, fun(X) -> ggs_network:receive_content(X) end, "\n") end, + ?FORALL(NaturalNumber, nat(), G(NaturalNumber)). + +%% old(String) == new(String) +prop_receive_data(ListenSocket) -> + G = fun(N) -> String = integer_to_list(N), + Length = length(String), + accept_run_compare(String,ListenSocket, fun(S) -> ggs_network:receive_data(S,Length,"") end, "") end, + ?FORALL(NaturalNumber, nat(), G(NaturalNumber)). + +%% Helpers +accept_run_compare(Arg, ListenSocket, Fun, Newline) -> + spawn(fun() -> {ok, AcceptSocket} = accept(ListenSocket), + gen_tcp:send(AcceptSocket, Arg), + gen_tcp:close(AcceptSocket) end), + + {ok, ConnectSocket} = ggs_network:connect(), + Pid = spawn(fun() -> C = Fun(ConnectSocket), + gen_tcp:close(ConnectSocket), + receive + {From, getcontent} -> From!{C} end end ), + Pid!{self(), getcontent}, + receive + {C} -> eqc:equals(C++Newline,Arg) end. + +listen() -> + listen(9000). + +listen(Port) -> + case gen_tcp:listen(Port, [binary, {packet, 0}, {active, false}]) of + {ok, LSock} -> + {ok, LSock}; + {error, Reason} -> + io:format("Creation of listen socket failed: ~s~n", [Reason]) + end. + +recv(AcceptSocket) -> + gen_tcp:recv(AcceptSocket, 0). + +accept(ListenSocket) -> + case gen_tcp:accept(ListenSocket) of + {ok, Socket} -> {ok, Socket}; + {error, Reason} -> io:format("Error accepting listen socket~s~n", [Reason]); + _ -> io:format("Something bad happened with accept/1~n") + end. + + +%% new(length) == old(length) or +%% new(length) == old(length) + 1 +prop_setItem() -> + ggs_db:init(), + F = (fun(T,N,K,V) -> ggs_db:setItem(T,N,K,V), ggs_db:length(T,N) end), + ?FORALL({T,N,K,V},{bitstring(),bitstring(),bitstring(),bitstring()}, + (ggs_db:length(T,N) + 1 == F(T,N,K,V)) or + (ggs_db:length(T,N) == F(T,N,K,V))). + + diff --git a/games/pong_bot_e/pong_bot.erl b/games/pong_bot_e/pong_bot.erl index 4006303..ccc2e15 100644 --- a/games/pong_bot_e/pong_bot.erl +++ b/games/pong_bot_e/pong_bot.erl @@ -34,7 +34,7 @@ init(_Args) -> Ball = new_pos(), Paused = true, Start = false, - Socket = ggs_network:connect(), %Localhost is set internally inside ggs_network. + {ok, Socket} = ggs_network:connect(), %Localhost is set internally inside ggs_network. State1 = dict:new(), State2 = dict:store(player1, Player1, State1), State3 = dict:store(player2, Player2, State2), diff --git a/games/pong_bot_e/test/ggs_network_eqc_test.erl b/games/pong_bot_e/test/ggs_network_eqc_test.erl new file mode 100644 index 0000000..ebe69e5 --- /dev/null +++ b/games/pong_bot_e/test/ggs_network_eqc_test.erl @@ -0,0 +1,62 @@ +-module(ggs_network_eqc_test). + +-include_lib("../../lib/eqc/include/eqc.hrl"). + +-compile(export_all). + + +start() -> + eqc:quickcheck(prop_connect()). + +prop_connect() -> + {Atom, Value} = ggs_network:connect(), + eqc:equals(Atom, ok). + + +%% new(length) == old(length) or +%% new(length) == old(length) + 1 +prop_setItem() -> + ggs_db:init(), + F = (fun(T,N,K,V) -> ggs_db:setItem(T,N,K,V), ggs_db:length(T,N) end), + ?FORALL({T,N,K,V},{bitstring(),bitstring(),bitstring(),bitstring()}, + (ggs_db:length(T,N) + 1 == F(T,N,K,V)) or + (ggs_db:length(T,N) == F(T,N,K,V))). + + +%% new(length) >= 0 and +%% old(length) == new(length) or +%% old(length) - 1 == new(length) +prop_removeItem() -> + ggs_db:init(), + F = (fun(T,N,K) -> ggs_db:removeItem(T,N,K), ggs_db:length(T,N) end), + G = (fun(A,B) -> ((A == B) or (A == B + 1)) and (B >= 0) end), + ?FORALL({T,N,K},{bitstring(),bitstring(),bitstring()}, + G(ggs_db:length(T,N), F(T,N,K))). + + +%% clear(X) -> (length(X,?) == 0) +prop_clear() -> + ggs_db:init(), + F = (fun(T,N) -> ggs_db:clear(T), ggs_db:length(T,N) end), + ?FORALL({T,N},{bitstring(),bitstring()}, + F(T,N) == 0). + +%% ? -> length(?,?) >= 0 +prop_length() -> + ggs_db:init(), + F = fun(T,N,K,V) -> ggs_db:setItem(T,N,K,V), ggs_db:length(T,N) end, + G = fun(T,N,K) -> ggs_db:removeItem(T,N,K), ggs_db:length(T,N) end, + ?FORALL({{T,N,K,V},{T2,N2,K2}}, + {{bitstring(),bitstring(),bitstring(),bitstring()}, + {bitstring(),bitstring(),bitstring()}}, + (((F(T,N,K,V) >= 0) and (G(T2,N2,K2) >= 0)))). + + +%% key(X,Y,length(X,Y)) -> Exists +prop_key() -> + ggs_db:init(), + F = fun(T,N) -> case ggs_db:length(T,N) of 0 -> true; X -> + case ggs_db:key(T,N,X) of _ -> true end end end, + ?FORALL({T,N},{bitstring(),bitstring()}, + F(T,N)). + diff --git a/games/pong_bot_e/v.01/ggs_network_eqc_test.erl b/games/pong_bot_e/v.01/ggs_network_eqc_test.erl new file mode 100644 index 0000000..5b830c0 --- /dev/null +++ b/games/pong_bot_e/v.01/ggs_network_eqc_test.erl @@ -0,0 +1,90 @@ +-module(ggs_network_eqc_test). + +-include_lib("../../lib/eqc/include/eqc.hrl"). + +-compile(export_all). + + +start() -> + {ok, ListenSocket} = listen(), + register(listen, ListenSocket), + Pid = spawn(fun() -> {ok, AcceptSocket} = accept(ListenSocket), + + receive {From, accept} -> From!{AcceptSocket} end end), + {ok, ConnectSocket} = ggs_network:connect(), + Pid!{self(), accept}, + receive + {AcceptSocket} -> + io:format("AcceptSocket created~n"), + %eqc:quickcheck(prop_connect()), + %eqc:quickcheck(prop_receive_content(AcceptSocket, ConnectSocket)) + prop_receive_content(AcceptSocket, ConnectSocket) + end. + +prop_connect() -> + {Atom, _} = ggs_network:connect(), + eqc:equals(Atom, ok). + +prop_receive_content(AcceptSocket, ConnectSocket) -> + %{ok, ConnectSocket} = ggs_network:connect(), + io:format("Connected~n"), + %spawn(fun() -> {ok, B} = gen_tcp:recv(ConnectSocket, 1), io:format("Data: ~s~n",[B]) end), + %timer:sleep(300), + Pid = spawn(fun() -> C = receive_content(ConnectSocket), + io:format("Content: ~s~n", [C]) end), + + io:format("Before send to AcceptSocket~n"), + gen_tcp:send(AcceptSocket, "Hello\n\n"), + io:format("After send to AcceptSocket~n"), + eqc:equals(ok,ok). + +receive_content(Socket) -> + receive_content_(0, "", Socket). + +receive_content_(Amount, Headers, Socket) -> + {ok, Char1} = gen_tcp:recv(Socket, 1), + case Char1 of + "\n" -> case Amount of + 1 -> Headers; + _ -> receive_content_(Amount + 1, + Headers ++ Char1, + Socket) + end; + _ -> receive_content_(0, Headers ++ Char1, Socket) + end. + + + +%% Helpers +listen() -> + listen(9000). + +listen(Port) -> + case gen_tcp:listen(Port, [binary, {packet, 0}, {active, false}]) of + {ok, LSock} -> + {ok, LSock}; + {error, Reason} -> + io:format("Creation of listen socket failed: ~s~n", [Reason]) + end. + +recv(AcceptSocket) -> + gen_tcp:recv(AcceptSocket, 0). + +accept(ListenSocket) -> + case gen_tcp:accept(ListenSocket) of + {ok, Socket} -> {ok, Socket}; + {error, Reason} -> io:format("Error accepting listen socket~s~n", [Reason]); + _ -> io:format("Something bad happened with accept/1~n") + end. + + +%% new(length) == old(length) or +%% new(length) == old(length) + 1 +prop_setItem() -> + ggs_db:init(), + F = (fun(T,N,K,V) -> ggs_db:setItem(T,N,K,V), ggs_db:length(T,N) end), + ?FORALL({T,N,K,V},{bitstring(),bitstring(),bitstring(),bitstring()}, + (ggs_db:length(T,N) + 1 == F(T,N,K,V)) or + (ggs_db:length(T,N) == F(T,N,K,V))). + + diff --git a/games/pong_bot_e/v0.2/ggs_network_eqc_test.erl b/games/pong_bot_e/v0.2/ggs_network_eqc_test.erl new file mode 100644 index 0000000..911c4e3 --- /dev/null +++ b/games/pong_bot_e/v0.2/ggs_network_eqc_test.erl @@ -0,0 +1,66 @@ +-module(ggs_network_eqc_test). + +-include_lib("../../lib/eqc/include/eqc.hrl"). + +-compile(export_all). + + +start() -> + {ok, ListenSocket} = listen(), + register(listen, ListenSocket), + Pid = spawn(fun() -> {ok, AcceptSocket} = accept(ListenSocket), + gen_tcp:send(AcceptSocket, "Hello\n\n"), + gen_tcp:close(AcceptSocket) end), + eqc:quickcheck(prop_receive_content()), + gen_tcp:close(ListenSocket). + + + +prop_connect() -> + {Atom, _} = ggs_network:connect(), + eqc:equals(Atom, ok). + +prop_receive_content() -> + {ok, ConnectSocket} = ggs_network:connect(), + Pid = spawn(fun() -> C = ggs_network:receive_content(ConnectSocket), + gen_tcp:close(ConnectSocket), + receive + {From, getcontent} -> From!{C} end end ), + Pid!{self(), getcontent}, + receive + {C} -> eqc:equals(C,"Hello\n") + end. + +%% Helpers +listen() -> + listen(9000). + +listen(Port) -> + case gen_tcp:listen(Port, [binary, {packet, 0}, {active, false}]) of + {ok, LSock} -> + {ok, LSock}; + {error, Reason} -> + io:format("Creation of listen socket failed: ~s~n", [Reason]) + end. + +recv(AcceptSocket) -> + gen_tcp:recv(AcceptSocket, 0). + +accept(ListenSocket) -> + case gen_tcp:accept(ListenSocket) of + {ok, Socket} -> {ok, Socket}; + {error, Reason} -> io:format("Error accepting listen socket~s~n", [Reason]); + _ -> io:format("Something bad happened with accept/1~n") + end. + + +%% new(length) == old(length) or +%% new(length) == old(length) + 1 +prop_setItem() -> + ggs_db:init(), + F = (fun(T,N,K,V) -> ggs_db:setItem(T,N,K,V), ggs_db:length(T,N) end), + ?FORALL({T,N,K,V},{bitstring(),bitstring(),bitstring(),bitstring()}, + (ggs_db:length(T,N) + 1 == F(T,N,K,V)) or + (ggs_db:length(T,N) == F(T,N,K,V))). + + diff --git a/games/pong_bot_e/v0.3/ggs_network_eqc_test.erl b/games/pong_bot_e/v0.3/ggs_network_eqc_test.erl new file mode 100644 index 0000000..ed9e3d5 --- /dev/null +++ b/games/pong_bot_e/v0.3/ggs_network_eqc_test.erl @@ -0,0 +1,72 @@ +-module(ggs_network_eqc_test). + +-include_lib("../../lib/eqc/include/eqc.hrl"). + +-compile(export_all). + + +start() -> + {ok, ListenSocket} = listen(), + eqc:quickcheck(prop_connect()), + gen_tcp:close(ListenSocket), + {ok, ListenSocket2} = listen(), + eqc:quickcheck(prop_receive_content(ListenSocket2)). + + + +prop_connect() -> + {Atom, Socket} = ggs_network:connect(), + gen_tcp:close(Socket), + eqc:equals(Atom, ok). + +%% ?String++\n\n -> ok +prop_receive_content(ListenSocket) -> + F = fun(X) -> Pid2 = spawn(fun() -> {ok, AcceptSocket} = accept(ListenSocket), + gen_tcp:send(AcceptSocket, X), + gen_tcp:close(AcceptSocket) end), + + {ok, ConnectSocket} = ggs_network:connect(), + Pid = spawn(fun() -> C = ggs_network:receive_content(ConnectSocket), + gen_tcp:close(ConnectSocket), + receive + {From, getcontent} -> From!{C} end end ), + Pid!{self(), getcontent}, + receive + {C} -> eqc:equals(C++"\n",X) end end, + G = fun(N) -> String = integer_to_list(N) ++"\n\n", + F(String) end, + ?FORALL(NaturalNumber, nat(), G(NaturalNumber)). + +%% Helpers +listen() -> + listen(9000). + +listen(Port) -> + case gen_tcp:listen(Port, [binary, {packet, 0}, {active, false}]) of + {ok, LSock} -> + {ok, LSock}; + {error, Reason} -> + io:format("Creation of listen socket failed: ~s~n", [Reason]) + end. + +recv(AcceptSocket) -> + gen_tcp:recv(AcceptSocket, 0). + +accept(ListenSocket) -> + case gen_tcp:accept(ListenSocket) of + {ok, Socket} -> {ok, Socket}; + {error, Reason} -> io:format("Error accepting listen socket~s~n", [Reason]); + _ -> io:format("Something bad happened with accept/1~n") + end. + + +%% new(length) == old(length) or +%% new(length) == old(length) + 1 +prop_setItem() -> + ggs_db:init(), + F = (fun(T,N,K,V) -> ggs_db:setItem(T,N,K,V), ggs_db:length(T,N) end), + ?FORALL({T,N,K,V},{bitstring(),bitstring(),bitstring(),bitstring()}, + (ggs_db:length(T,N) + 1 == F(T,N,K,V)) or + (ggs_db:length(T,N) == F(T,N,K,V))). + + From f81fec6b9c9f7a5de5a956d45192d458127dda1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 16 May 2011 12:48:58 +0200 Subject: [PATCH 179/192] Added python tictactoe client --- doc/report | 2 +- games/tic-tac-toe-python/ggskpanel.glade | 135 ++++++++++++ games/tic-tac-toe-python/kpanel.py | 44 ++++ games/tic-tac-toe-python/server.js | 156 ++++++++++++++ games/tic-tac-toe-python/ttt.glade | 248 +++++++++++++++++++++++ games/tic-tac-toe-python/ttt.py | 122 +++++++++++ 6 files changed, 706 insertions(+), 1 deletion(-) create mode 100644 games/tic-tac-toe-python/ggskpanel.glade create mode 100644 games/tic-tac-toe-python/kpanel.py create mode 100644 games/tic-tac-toe-python/server.js create mode 100644 games/tic-tac-toe-python/ttt.glade create mode 100644 games/tic-tac-toe-python/ttt.py diff --git a/doc/report b/doc/report index 0031285..a94993d 160000 --- a/doc/report +++ b/doc/report @@ -1 +1 @@ -Subproject commit 00312859714bef6e9a4fdb9931a41fef56eeb89a +Subproject commit a94993dc5a626605bdf45c45f398270fe33eaaf1 diff --git a/games/tic-tac-toe-python/ggskpanel.glade b/games/tic-tac-toe-python/ggskpanel.glade new file mode 100644 index 0000000..3f85df9 --- /dev/null +++ b/games/tic-tac-toe-python/ggskpanel.glade @@ -0,0 +1,135 @@ + + + + + + 561 + 521 + + + True + + + True + + + True + <span size="x-large">GGS Killtrolpanel</span> + True + + + False + 0 + + + + + True + kill_process_icon.jpg + + + False + False + 1 + + + + + False + False + 0 + + + + + True + 3 + 2 + True + + + All players + True + True + True + + + + + + Coordinator + True + True + True + + + + 1 + 2 + + + + + Dispatcher + True + True + True + + + + 1 + 2 + + + + + Coordinator backup + True + True + True + + + + 1 + 2 + 1 + 2 + + + + + All tables + True + True + True + + + + 2 + 3 + + + + + All GameVMs + True + True + True + + + + 1 + 2 + 2 + 3 + + + + + 1 + + + + + + diff --git a/games/tic-tac-toe-python/kpanel.py b/games/tic-tac-toe-python/kpanel.py new file mode 100644 index 0000000..84fb5e1 --- /dev/null +++ b/games/tic-tac-toe-python/kpanel.py @@ -0,0 +1,44 @@ +#!/usr/bin/env python + +import sys, socket, thread, gobject, getpass, time, os +try: + import pygtk + pygtk.require("2.16") +except: + pass +try: + import gtk + import gtk.glade +except: + sys.exit(1) + +class GGSKPanel: + + def __init__(self): + #Set the Glade file + self.gladefile = "ttt.glade" + self.wTree = gtk.glade.XML(self.gladefile, "window1") + + #Create our dictionay and connect it + dic = { "on_window1_destroy_event" : gtk.main_quit + ,"on_coordinatorButton_clicked" : lambda x: self.terminateProcess("ggs_coordinator") + ,"on_coordinatorBackupButton_clicked" :\ + lambda x: self.terminateProcess("ggs_coordinator_backup") + ,"on_dispatcherButton_clicked" : lambda x: self.terminateProcess("ggs_dispatcher") + } + + self.wTree.signal_autoconnect(dic) + + self.wTree.get_widget("window1").show() + + def terminateProcess(self, process): + os.system("echo \"exit(whereis(%s), 'Bye bye').\" | erl_call -sname ggs -e" % process) + + def setStatus(self, msg): + self.wTree.get_widget("statusbar").push(0, msg) + + +if __name__ == "__main__": + chat = GGSKPanel() + gobject.threads_init() + gtk.main() diff --git a/games/tic-tac-toe-python/server.js b/games/tic-tac-toe-python/server.js new file mode 100644 index 0000000..d98eaf7 --- /dev/null +++ b/games/tic-tac-toe-python/server.js @@ -0,0 +1,156 @@ +function playerCommand(player_id, command, args) { + if (commaned == "hi") { + hi(player_id); + } else if (command == "set") { + move(player_id, args); + } else if (command == "new") { + newGame(); + } +} + +var ROWS = 3; + +function hi(player_id) { + var p1_id = GGS.localStorage.getItem("p1_id"); + var p2_id = GGS.localStorage.getItem("p2_id"); + if (p1_id == "") { + GGS.localStorage.setItem("p1_id", player_id); + GGS.sendCommand(player_id, "welcome", "1"); + } else if (p2_id == "") { + GGS.localStorage.setItem("p2_id", player_id); + GGS.sendCommand(player_id, "welcome", "2"); + } else { + GGS.sendCommand(player_id, "not_welcome", "Already have 2 players on this table"); + } +} + +function move(player_id, args) { + var nextPlayer = GGS.localStorage.getItem("next_player"); + var p1_id = GGS.localStorage.getItem("p1_id"); + var p2_id = GGS.localStorage.getItem("p2_id"); + var valid = false; + + if(nextPlayer == 1 && player_id == p1_id) { + valid = true; + } else if (nextPlayer == 2 && player_id == p2_id) { + valid = true; + } + + if (valid) { + + var p = nextPlayer; + var props = JSON.parse(args); + var gameBoard = JSON.parse(GGS.localStorage.getItem("game_board")); + + if (gameBoard[props.x][props.y] == 0) { + + gameBoard[props.x][props.y] = p; + GGS.localStorage.setItem("game_board", JSON.stringify(gameBoard)); + GGS.sendCommandToAll("game_board", boardAsString(gameBoard)); + + if (this.checkIfWon(p, gameBoard)) { + if (p == 1) { + GGS.sendCommand(p1_id, "winner", "You win!"); + GGS.sendCommand(p2_id, "loser", "You lose!"); + } else { + GGS.sendCommand(p1_id, "loser", "You lose!"); + GGS.sendCommand(p2_id, "winner", "You win!"); + } + } + + if (nextPlayer == 1) { + GGS.localStorage.setItem("next_player", 2); + GGS.sendCommand(p1_id, "yourturn", ""); + } else { + GGS.localStorage.setItem("next_player", 1); + GGS.sendCommand(p2_id, "yourturn", ""); + } + + } else { + GGS.sendCommand(plaer_id, "warning", "Already set, chose something else."); + } + + } else { + GGS.sendCommand(player_id, "warning", "Not your turn!"); + } +} + +function checkIfWon(player) { + + var gameBoard = JSON.parse(GGS.localStorage.getItem("game_board")); + + for (i = 0; i < ROWS; ++i) { + for (j = 0; j < ROWS; ++j) { + if (gameBoard[i][j] != 'X') { + break; + } + } + if (j == ROWS) { + return true; + } + + for (j = 0; j < ROWS; ++j) { + if (gameBoard[j][i] != 'X') { + break; + } + } + if (j == ROWS) { + return true; + } + } + + // Now check diagnols + for (i = 0; i < ROWS; ++i) { + if (gameBoard[i][i] != 'X') { + break; + } + } + + if (i == ROWS) { + return true; + } + + for (i = 0; i < ROWS; ++i) { + if (gameBoard[i][ROWS - i - 1] != 'X') { + break; + } + } + if (i == ROWS) { + return true; + } + + return false; +} + +function newGame() { + // Initiate game with empty rows and columns + var gameBoard = []; + for (var i=0; i < ROWS; i++) { + gameBoard[i] = []; + for (var j=0; i < ROWS; i++) { + gameBoard[i][j] = ''; + } + } + + GGS.localStorage.setItem("game_board", JSON.stringify(gameBoard)); + GGS.sendCommandToAll("new_game", ""); + GGS.sendCommandToAll("game_board", boardAsString(gameBoard)); +} + +function boardAsString(gameBoard) { + var out = ""; + for (var i=0; i < ROWS; i++) { + for (var j=0; j < ROWS; j++) { + var p = gameBoard[i][j]; + if (p == 1) { + out += "X"; + } else if (p == 2) { + out +="O"; + } else { + out += " "; + } + } + } + + return out; +} diff --git a/games/tic-tac-toe-python/ttt.glade b/games/tic-tac-toe-python/ttt.glade new file mode 100644 index 0000000..4b3025d --- /dev/null +++ b/games/tic-tac-toe-python/ttt.glade @@ -0,0 +1,248 @@ + + + + + + 561 + 521 + False + + + True + False + + + True + False + + + True + False + 7 + <span size="x-large">GGS-Pong</span> + True + + + True + False + 0 + + + + + False + False + 0 + + + + + True + False + 3 + 3 + True + + + True + True + True + False + + + + + + True + True + True + False + + + + 1 + 2 + + + + + True + True + True + False + + + + 1 + 2 + + + + + True + True + True + False + + + + 1 + 2 + 1 + 2 + + + + + True + True + True + False + + + + 2 + 3 + + + + + True + True + True + False + + + + 1 + 2 + 2 + 3 + + + + + True + True + True + False + + + + 2 + 3 + + + + + True + True + True + False + + + + 2 + 3 + 1 + 2 + + + + + True + True + True + False + + + + 2 + 3 + 2 + 3 + + + + + True + True + 1 + + + + + True + False + + + True + True + + ggs.jeena.net:9000 + True + False + False + True + True + + + True + True + 0 + + + + + True + True + + False + False + True + True + + + True + True + 1 + + + + + + True + True + True + False + + + + True + True + 2 + + + + + False + True + 2 + + + + + True + False + 2 + + + False + True + 3 + + + + + + diff --git a/games/tic-tac-toe-python/ttt.py b/games/tic-tac-toe-python/ttt.py new file mode 100644 index 0000000..06ef9bd --- /dev/null +++ b/games/tic-tac-toe-python/ttt.py @@ -0,0 +1,122 @@ +#!/usr/bin/env python + +import sys, socket, thread, gobject, getpass, time, os +try: + import pygtk + pygtk.require("2.16") +except: + pass +try: + import gtk + import gtk.glade +except: + sys.exit(1) + +class GGSTTT: + + def __init__(self): + #Set the Glade file + self.gladefile = "ttt.glade" + self.wTree = gtk.glade.XML(self.gladefile, "window1") + host = "localhost" + port = 9000 + + #Create our dictionay and connect it + dic = { "on_window1_destroy_event" : gtk.main_quit + ,"on_x0y0_clicked" : lambda x: self.sendMove("{'x':0,'y':0}") + ,"on_x0y1_clicked" : lambda x: self.sendMove("{'x':0,'y':1}") + ,"on_x0y2_clicked" : lambda x: self.sendMove("{'x':0,'y':2}") + ,"on_x1y0_clicked" : lambda x: self.sendMove("{'x':1,'y':0}") + ,"on_x1y1_clicked" : lambda x: self.sendMove("{'x':1,'y':1}") + ,"on_x1y2_clicked" : lambda x: self.sendMove("{'x':1,'y':2}") + ,"on_x2y0_clicked" : lambda x: self.sendMove("{'x':2,'y':0}") + ,"on_x2y1_clicked" : lambda x: self.sendMove("{'x':2,'y':1}") + ,"on_x2y2_clicked" : lambda x: self.sendMove("{'x':2,'y':2}") + ,"on_connectBtn_clicked" : lambda x: self.doConnect() + } + + self.wTree.signal_autoconnect(dic) + + self.wTree.get_widget("window1").show() + + def doConnect(self): + self.setStatus("Not connected") + hostport = self.wTree.get_widget("adress").get_text() + host, port = hostport.split(":") + + self.connect(host, int(port)) + thread.start_new_thread(self.listen, ()) + + token = self.wTree.get_widget("token").get_text() + self.s.send("Server-Command: hello\n" + + "Content-Type: text\n" + + "Content-Length: %s\n" % len(token)+ + "\n"+ + token) + self.s.send("Game-Command: hi\n" + + "Content-Type: text\n" + + "Content-Length: 0\n"+ + "\n") + + def sendMove(self, move): + print "Sending move", move + cmd = "set" + self.s.send("Game-Command: %s\n" % cmd + + "Content-Type: text\n" + + "Content-Length: %s\n" % len(move)+ + "\n"+ + move) + + def setStatus(self, msg): + self.wTree.get_widget("statusbar").push(0, msg) + + def listen(self): + msg = {} + print "listening" + fs = self.s.makefile() + while True: + line = fs.readline() + print "Received: '%s" % line.strip() + if line != "\n": + key = line.split(":")[0] + value = line.split(":")[1] + msg[key] = value.strip() + else: + msg["DATA"] = fs.read(int("%s" % msg["Content-Size"])) + print "Got data:", msg + self.protocolHandler(msg) + + def protocolHandler(self, msg): + if msg["Client-Command"] == "hello": + data = msg["DATA"] + self.token, defined, table_token = data.split(",") + if defined == "false": + print "Defining game" + js = open("server.js").read() + self.s.send("Server-Command: define\n"+ + "Content-Type: text\n" + + ("Content-Length: %s\n" % len(js))+ + "\n%s" % js) + + elif msg["Client-Command"] == "welcome": + self.setStatus("You are player %s" % msg["data"]) + elif msg["Client-Command"] == "chat": + gobject.idle_add(self.updateChatText, msg["DATA"]) + elif msg["Client-Command"] == "lusers": + print msg + gobject.idle_add(self.updateUsers, msg["DATA"]) + + def connect(self, host,port): + print "Connecting" + self.setStatus("Connecting") + self.s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + self.s.connect((host, port)) + self.setStatus("Connected!") + + + + +if __name__ == "__main__": + ttt = GGSTTT() + gobject.threads_init() + gtk.main() From 620b19bff6ce775775131bafaeb9cbefded81253 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 16 May 2011 16:29:27 +0200 Subject: [PATCH 180/192] Tic tac toe works --- doc/report | 2 +- games/tic-tac-toe-python/server.js | 20 +++++------ games/tic-tac-toe-python/ttt.py | 56 ++++++++++++++++++++---------- src/ggs_player.erl | 1 + 4 files changed, 50 insertions(+), 29 deletions(-) diff --git a/doc/report b/doc/report index a94993d..2d5eaad 160000 --- a/doc/report +++ b/doc/report @@ -1 +1 @@ -Subproject commit a94993dc5a626605bdf45c45f398270fe33eaaf1 +Subproject commit 2d5eaad6fdeb6e07d8b7f86ba53cda3e6351835a diff --git a/games/tic-tac-toe-python/server.js b/games/tic-tac-toe-python/server.js index d98eaf7..f924659 100644 --- a/games/tic-tac-toe-python/server.js +++ b/games/tic-tac-toe-python/server.js @@ -1,5 +1,5 @@ function playerCommand(player_id, command, args) { - if (commaned == "hi") { + if (command == "hi") { hi(player_id); } else if (command == "set") { move(player_id, args); @@ -13,12 +13,14 @@ var ROWS = 3; function hi(player_id) { var p1_id = GGS.localStorage.getItem("p1_id"); var p2_id = GGS.localStorage.getItem("p2_id"); - if (p1_id == "") { + if (!p1_id) { GGS.localStorage.setItem("p1_id", player_id); + GGS.localStorage.setItem("next_player", 1); GGS.sendCommand(player_id, "welcome", "1"); - } else if (p2_id == "") { + } else if (!p2_id) { GGS.localStorage.setItem("p2_id", player_id); GGS.sendCommand(player_id, "welcome", "2"); + newGame(); } else { GGS.sendCommand(player_id, "not_welcome", "Already have 2 players on this table"); } @@ -37,7 +39,6 @@ function move(player_id, args) { } if (valid) { - var p = nextPlayer; var props = JSON.parse(args); var gameBoard = JSON.parse(GGS.localStorage.getItem("game_board")); @@ -65,9 +66,8 @@ function move(player_id, args) { GGS.localStorage.setItem("next_player", 1); GGS.sendCommand(p2_id, "yourturn", ""); } - } else { - GGS.sendCommand(plaer_id, "warning", "Already set, chose something else."); + GGS.sendCommand(player_id, "warning", "Already set, chose something else."); } } else { @@ -126,14 +126,14 @@ function newGame() { // Initiate game with empty rows and columns var gameBoard = []; for (var i=0; i < ROWS; i++) { - gameBoard[i] = []; - for (var j=0; i < ROWS; i++) { - gameBoard[i][j] = ''; + gameBoard[i] = [""]; + for (var j=0; j < ROWS; j++) { + gameBoard[i][j] = ""; } } GGS.localStorage.setItem("game_board", JSON.stringify(gameBoard)); - GGS.sendCommandToAll("new_game", ""); + GGS.sendCommandToAll("new_game", ""); GGS.sendCommandToAll("game_board", boardAsString(gameBoard)); } diff --git a/games/tic-tac-toe-python/ttt.py b/games/tic-tac-toe-python/ttt.py index 06ef9bd..6cbe104 100644 --- a/games/tic-tac-toe-python/ttt.py +++ b/games/tic-tac-toe-python/ttt.py @@ -23,15 +23,15 @@ class GGSTTT: #Create our dictionay and connect it dic = { "on_window1_destroy_event" : gtk.main_quit - ,"on_x0y0_clicked" : lambda x: self.sendMove("{'x':0,'y':0}") - ,"on_x0y1_clicked" : lambda x: self.sendMove("{'x':0,'y':1}") - ,"on_x0y2_clicked" : lambda x: self.sendMove("{'x':0,'y':2}") - ,"on_x1y0_clicked" : lambda x: self.sendMove("{'x':1,'y':0}") - ,"on_x1y1_clicked" : lambda x: self.sendMove("{'x':1,'y':1}") - ,"on_x1y2_clicked" : lambda x: self.sendMove("{'x':1,'y':2}") - ,"on_x2y0_clicked" : lambda x: self.sendMove("{'x':2,'y':0}") - ,"on_x2y1_clicked" : lambda x: self.sendMove("{'x':2,'y':1}") - ,"on_x2y2_clicked" : lambda x: self.sendMove("{'x':2,'y':2}") + ,"on_x0y0_clicked" : lambda x: self.sendMove("{\"x\":0,\"y\":0}") + ,"on_x0y1_clicked" : lambda x: self.sendMove("{\"x\":0,\"y\":1}") + ,"on_x0y2_clicked" : lambda x: self.sendMove("{\"x\":0,\"y\":2}") + ,"on_x1y0_clicked" : lambda x: self.sendMove("{\"x\":1,\"y\":0}") + ,"on_x1y1_clicked" : lambda x: self.sendMove("{\"x\":1,\"y\":1}") + ,"on_x1y2_clicked" : lambda x: self.sendMove("{\"x\":1,\"y\":2}") + ,"on_x2y0_clicked" : lambda x: self.sendMove("{\"x\":2,\"y\":0}") + ,"on_x2y1_clicked" : lambda x: self.sendMove("{\"x\":2,\"y\":1}") + ,"on_x2y2_clicked" : lambda x: self.sendMove("{\"x\":2,\"y\":2}") ,"on_connectBtn_clicked" : lambda x: self.doConnect() } @@ -53,10 +53,6 @@ class GGSTTT: "Content-Length: %s\n" % len(token)+ "\n"+ token) - self.s.send("Game-Command: hi\n" + - "Content-Type: text\n" + - "Content-Length: 0\n"+ - "\n") def sendMove(self, move): print "Sending move", move @@ -93,15 +89,39 @@ class GGSTTT: if defined == "false": print "Defining game" js = open("server.js").read() + self.wTree.get_widget("token").set_text(table_token) self.s.send("Server-Command: define\n"+ "Content-Type: text\n" + - ("Content-Length: %s\n" % len(js))+ - "\n%s" % js) + "Content-Length: %s\n" % str(len(js))+ + "\n" + + js) + if defined == "true": + self.s.send("Game-Command: hi\n" + + "Content-Type: text\n" + + "Content-Length: 0\n"+ + "\n") elif msg["Client-Command"] == "welcome": - self.setStatus("You are player %s" % msg["data"]) - elif msg["Client-Command"] == "chat": - gobject.idle_add(self.updateChatText, msg["DATA"]) + self.setStatus("You are player %s" % msg["DATA"]) + elif msg["Client-Command"] == "warning": + self.setStatus("Warning: %s" % msg["DATA"]) + elif msg["Client-Command"] == "not_welcome": + self.setStatus("You are not welcome: %s" % msg["DATA"]) + elif msg["Client-Command"] == "game_board": + self.wTree.get_widget("x0y0").set_label(msg["DATA"][0]) + self.wTree.get_widget("x0y1").set_label(msg["DATA"][1]) + self.wTree.get_widget("x0y2").set_label(msg["DATA"][2]) + self.wTree.get_widget("x1y0").set_label(msg["DATA"][3]) + self.wTree.get_widget("x1y1").set_label(msg["DATA"][4]) + self.wTree.get_widget("x1y2").set_label(msg["DATA"][5]) + self.wTree.get_widget("x2y0").set_label(msg["DATA"][6]) + self.wTree.get_widget("x2y1").set_label(msg["DATA"][7]) + self.wTree.get_widget("x2y2").set_label(msg["DATA"][8]) + elif msg["Client-Command"] == "defined": + self.s.send("Game-Command: hi\n" + + "Content-Type: text\n" + + "Content-Length: 0\n"+ + "\n") elif msg["Client-Command"] == "lusers": print msg gobject.idle_add(self.updateUsers, msg["DATA"]) diff --git a/src/ggs_player.erl b/src/ggs_player.erl index a7b9b36..f9f42da 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -102,6 +102,7 @@ handle_cast({srv_cmd, "hello", _Headers, TableToken}, State) -> {noreply, State#state{ table = TPid } } end; handle_cast({srv_cmd, "define", _Headers, Data}, #state { table = Table } = State) -> + erl:display(Data), ggs_table:notify(Table, self(), {server, define, Data}), {noreply, State}; handle_cast({game_cmd, Command, _Headers, Data}, #state { table = Table } = State) -> From a90c7bef48d574bd103fff11b29411a431f38d75 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 16 May 2011 17:05:59 +0200 Subject: [PATCH 181/192] fixed winner problem --- games/tic-tac-toe-python/server.js | 36 +++++++++++++++--------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/games/tic-tac-toe-python/server.js b/games/tic-tac-toe-python/server.js index d98eaf7..12b4387 100644 --- a/games/tic-tac-toe-python/server.js +++ b/games/tic-tac-toe-python/server.js @@ -1,5 +1,5 @@ function playerCommand(player_id, command, args) { - if (commaned == "hi") { + if (command == "hi") { hi(player_id); } else if (command == "set") { move(player_id, args); @@ -13,12 +13,14 @@ var ROWS = 3; function hi(player_id) { var p1_id = GGS.localStorage.getItem("p1_id"); var p2_id = GGS.localStorage.getItem("p2_id"); - if (p1_id == "") { + if (!p1_id) { GGS.localStorage.setItem("p1_id", player_id); + GGS.localStorage.setItem("next_player", 1); GGS.sendCommand(player_id, "welcome", "1"); - } else if (p2_id == "") { + } else if (!p2_id) { GGS.localStorage.setItem("p2_id", player_id); GGS.sendCommand(player_id, "welcome", "2"); + newGame(); } else { GGS.sendCommand(player_id, "not_welcome", "Already have 2 players on this table"); } @@ -37,7 +39,6 @@ function move(player_id, args) { } if (valid) { - var p = nextPlayer; var props = JSON.parse(args); var gameBoard = JSON.parse(GGS.localStorage.getItem("game_board")); @@ -48,7 +49,7 @@ function move(player_id, args) { GGS.localStorage.setItem("game_board", JSON.stringify(gameBoard)); GGS.sendCommandToAll("game_board", boardAsString(gameBoard)); - if (this.checkIfWon(p, gameBoard)) { + if (this.checkIfWon()) { if (p == 1) { GGS.sendCommand(p1_id, "winner", "You win!"); GGS.sendCommand(p2_id, "loser", "You lose!"); @@ -65,9 +66,8 @@ function move(player_id, args) { GGS.localStorage.setItem("next_player", 1); GGS.sendCommand(p2_id, "yourturn", ""); } - } else { - GGS.sendCommand(plaer_id, "warning", "Already set, chose something else."); + GGS.sendCommand(player_id, "warning", "Already set, chose something else."); } } else { @@ -75,13 +75,13 @@ function move(player_id, args) { } } -function checkIfWon(player) { +function checkIfWon() { - var gameBoard = JSON.parse(GGS.localStorage.getItem("game_board")); + var gameBoard = JSON.parse(GGS.localStorage.getItem("game_board")); for (i = 0; i < ROWS; ++i) { for (j = 0; j < ROWS; ++j) { - if (gameBoard[i][j] != 'X') { + if (gameBoard[i][j] != 1) { break; } } @@ -90,7 +90,7 @@ function checkIfWon(player) { } for (j = 0; j < ROWS; ++j) { - if (gameBoard[j][i] != 'X') { + if (gameBoard[j][i] != 1) { break; } } @@ -101,7 +101,7 @@ function checkIfWon(player) { // Now check diagnols for (i = 0; i < ROWS; ++i) { - if (gameBoard[i][i] != 'X') { + if (gameBoard[i][i] != 1) { break; } } @@ -111,7 +111,7 @@ function checkIfWon(player) { } for (i = 0; i < ROWS; ++i) { - if (gameBoard[i][ROWS - i - 1] != 'X') { + if (gameBoard[i][ROWS - i - 1] != 1) { break; } } @@ -126,14 +126,14 @@ function newGame() { // Initiate game with empty rows and columns var gameBoard = []; for (var i=0; i < ROWS; i++) { - gameBoard[i] = []; - for (var j=0; i < ROWS; i++) { - gameBoard[i][j] = ''; + gameBoard[i] = [""]; + for (var j=0; j < ROWS; j++) { + gameBoard[i][j] = 0; } } GGS.localStorage.setItem("game_board", JSON.stringify(gameBoard)); - GGS.sendCommandToAll("new_game", ""); + GGS.sendCommandToAll("new_game", ""); GGS.sendCommandToAll("game_board", boardAsString(gameBoard)); } @@ -153,4 +153,4 @@ function boardAsString(gameBoard) { } return out; -} +} \ No newline at end of file From ba471084da3701156acd9a4d292a68212dad89b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 16 May 2011 17:10:35 +0200 Subject: [PATCH 182/192] Fixed fonts and added a dialog to TTT --- games/tic-tac-toe-python/ggskpanel.glade | 135 ----------------------- games/tic-tac-toe-python/kpanel.py | 44 -------- games/tic-tac-toe-python/ttt.py | 43 +++++++- 3 files changed, 42 insertions(+), 180 deletions(-) delete mode 100644 games/tic-tac-toe-python/ggskpanel.glade delete mode 100644 games/tic-tac-toe-python/kpanel.py diff --git a/games/tic-tac-toe-python/ggskpanel.glade b/games/tic-tac-toe-python/ggskpanel.glade deleted file mode 100644 index 3f85df9..0000000 --- a/games/tic-tac-toe-python/ggskpanel.glade +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - 561 - 521 - - - True - - - True - - - True - <span size="x-large">GGS Killtrolpanel</span> - True - - - False - 0 - - - - - True - kill_process_icon.jpg - - - False - False - 1 - - - - - False - False - 0 - - - - - True - 3 - 2 - True - - - All players - True - True - True - - - - - - Coordinator - True - True - True - - - - 1 - 2 - - - - - Dispatcher - True - True - True - - - - 1 - 2 - - - - - Coordinator backup - True - True - True - - - - 1 - 2 - 1 - 2 - - - - - All tables - True - True - True - - - - 2 - 3 - - - - - All GameVMs - True - True - True - - - - 1 - 2 - 2 - 3 - - - - - 1 - - - - - - diff --git a/games/tic-tac-toe-python/kpanel.py b/games/tic-tac-toe-python/kpanel.py deleted file mode 100644 index 84fb5e1..0000000 --- a/games/tic-tac-toe-python/kpanel.py +++ /dev/null @@ -1,44 +0,0 @@ -#!/usr/bin/env python - -import sys, socket, thread, gobject, getpass, time, os -try: - import pygtk - pygtk.require("2.16") -except: - pass -try: - import gtk - import gtk.glade -except: - sys.exit(1) - -class GGSKPanel: - - def __init__(self): - #Set the Glade file - self.gladefile = "ttt.glade" - self.wTree = gtk.glade.XML(self.gladefile, "window1") - - #Create our dictionay and connect it - dic = { "on_window1_destroy_event" : gtk.main_quit - ,"on_coordinatorButton_clicked" : lambda x: self.terminateProcess("ggs_coordinator") - ,"on_coordinatorBackupButton_clicked" :\ - lambda x: self.terminateProcess("ggs_coordinator_backup") - ,"on_dispatcherButton_clicked" : lambda x: self.terminateProcess("ggs_dispatcher") - } - - self.wTree.signal_autoconnect(dic) - - self.wTree.get_widget("window1").show() - - def terminateProcess(self, process): - os.system("echo \"exit(whereis(%s), 'Bye bye').\" | erl_call -sname ggs -e" % process) - - def setStatus(self, msg): - self.wTree.get_widget("statusbar").push(0, msg) - - -if __name__ == "__main__": - chat = GGSKPanel() - gobject.threads_init() - gtk.main() diff --git a/games/tic-tac-toe-python/ttt.py b/games/tic-tac-toe-python/ttt.py index 6cbe104..71ee0b9 100644 --- a/games/tic-tac-toe-python/ttt.py +++ b/games/tic-tac-toe-python/ttt.py @@ -1,6 +1,6 @@ #!/usr/bin/env python -import sys, socket, thread, gobject, getpass, time, os +import sys, socket, thread, gobject, getpass, time, os, pango try: import pygtk pygtk.require("2.16") @@ -38,6 +38,7 @@ class GGSTTT: self.wTree.signal_autoconnect(dic) self.wTree.get_widget("window1").show() + def doConnect(self): self.setStatus("Not connected") @@ -117,6 +118,15 @@ class GGSTTT: self.wTree.get_widget("x2y0").set_label(msg["DATA"][6]) self.wTree.get_widget("x2y1").set_label(msg["DATA"][7]) self.wTree.get_widget("x2y2").set_label(msg["DATA"][8]) + self.wTree.get_widget("x0y0").get_child().modify_font(pango.FontDescription("sans 48")) + self.wTree.get_widget("x0y1").get_child().modify_font(pango.FontDescription("sans 48")) + self.wTree.get_widget("x0y2").get_child().modify_font(pango.FontDescription("sans 48")) + self.wTree.get_widget("x1y0").get_child().modify_font(pango.FontDescription("sans 48")) + self.wTree.get_widget("x1y1").get_child().modify_font(pango.FontDescription("sans 48")) + self.wTree.get_widget("x1y2").get_child().modify_font(pango.FontDescription("sans 48")) + self.wTree.get_widget("x2y0").get_child().modify_font(pango.FontDescription("sans 48")) + self.wTree.get_widget("x2y1").get_child().modify_font(pango.FontDescription("sans 48")) + self.wTree.get_widget("x2y2").get_child().modify_font(pango.FontDescription("sans 48")) elif msg["Client-Command"] == "defined": self.s.send("Game-Command: hi\n" + "Content-Type: text\n" + @@ -125,6 +135,37 @@ class GGSTTT: elif msg["Client-Command"] == "lusers": print msg gobject.idle_add(self.updateUsers, msg["DATA"]) + elif msg["Client-Command"] == "winner": + message = gtk.MessageDialog(None, gtk.DIALOG_MODAL, gtk.MESSAGE_INFO, gtk.BUTTONS_NONE, msg["DATA"]) + message.add_button("New game", gtk.RESPONSE_OK) + message.add_button("Exit", gtk.RESPONSE_CLOSE) + resp = message.run() + if resp == gtk.RESPONSE_CLOSE: + sys.exit(1) + message.destroy() + elif resp == gtk.RESPONSE_OK: + print "new game" + self.s.send("Game-Command: new\n" + + "Content-Type: text\n" + + "Content-Length: 0\n"+ + "\n") + message.destroy() + elif msg["Client-Command"] == "loser": + message = gtk.MessageDialog(None, gtk.DIALOG_MODAL, gtk.MESSAGE_INFO, gtk.BUTTONS_NONE, msg["DATA"]) + message.add_button("New game", gtk.RESPONSE_OK) + message.add_button("Exit", gtk.RESPONSE_CLOSE) + resp = message.run() + if resp == gtk.RESPONSE_CLOSE: + sys.exit(1) + message.destroy() + elif resp == gtk.RESPONSE_OK: + print "new game" + self.s.send("Game-Command: new\n" + + "Content-Type: text\n" + + "Content-Length: 0\n"+ + "\n") + message.destroy() + def connect(self, host,port): print "Connecting" From 8ee0fe53e6cc1c18bf8b2b45b5b8a87abb4eb71c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 16 May 2011 17:12:37 +0200 Subject: [PATCH 183/192] Fixed name --- games/tic-tac-toe-python/ttt.glade | 3 ++- games/tic-tac-toe-python/ttt.py | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/games/tic-tac-toe-python/ttt.glade b/games/tic-tac-toe-python/ttt.glade index 4b3025d..147b280 100644 --- a/games/tic-tac-toe-python/ttt.glade +++ b/games/tic-tac-toe-python/ttt.glade @@ -18,8 +18,9 @@ True False + 0.41999998688697815 7 - <span size="x-large">GGS-Pong</span> + <span size="x-large">GGS Tic Tac Toe</span> True diff --git a/games/tic-tac-toe-python/ttt.py b/games/tic-tac-toe-python/ttt.py index 71ee0b9..47324b5 100644 --- a/games/tic-tac-toe-python/ttt.py +++ b/games/tic-tac-toe-python/ttt.py @@ -145,7 +145,7 @@ class GGSTTT: message.destroy() elif resp == gtk.RESPONSE_OK: print "new game" - self.s.send("Game-Command: new\n" + + self.s.send("Game-Command: new\n" + "Content-Type: text\n" + "Content-Length: 0\n"+ "\n") @@ -160,7 +160,7 @@ class GGSTTT: message.destroy() elif resp == gtk.RESPONSE_OK: print "new game" - self.s.send("Game-Command: new\n" + + self.s.send("Game-Command: new\n" + "Content-Type: text\n" + "Content-Length: 0\n"+ "\n") From 3ffe26f9aef2a8946391f24eb12ec0a4b8ae83ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 16 May 2011 17:15:53 +0200 Subject: [PATCH 184/192] removed dialog --- games/tic-tac-toe-python/ttt.py | 35 +++++---------------------------- 1 file changed, 5 insertions(+), 30 deletions(-) diff --git a/games/tic-tac-toe-python/ttt.py b/games/tic-tac-toe-python/ttt.py index 47324b5..77f47b5 100644 --- a/games/tic-tac-toe-python/ttt.py +++ b/games/tic-tac-toe-python/ttt.py @@ -135,36 +135,11 @@ class GGSTTT: elif msg["Client-Command"] == "lusers": print msg gobject.idle_add(self.updateUsers, msg["DATA"]) - elif msg["Client-Command"] == "winner": - message = gtk.MessageDialog(None, gtk.DIALOG_MODAL, gtk.MESSAGE_INFO, gtk.BUTTONS_NONE, msg["DATA"]) - message.add_button("New game", gtk.RESPONSE_OK) - message.add_button("Exit", gtk.RESPONSE_CLOSE) - resp = message.run() - if resp == gtk.RESPONSE_CLOSE: - sys.exit(1) - message.destroy() - elif resp == gtk.RESPONSE_OK: - print "new game" - self.s.send("Game-Command: new\n" + - "Content-Type: text\n" + - "Content-Length: 0\n"+ - "\n") - message.destroy() - elif msg["Client-Command"] == "loser": - message = gtk.MessageDialog(None, gtk.DIALOG_MODAL, gtk.MESSAGE_INFO, gtk.BUTTONS_NONE, msg["DATA"]) - message.add_button("New game", gtk.RESPONSE_OK) - message.add_button("Exit", gtk.RESPONSE_CLOSE) - resp = message.run() - if resp == gtk.RESPONSE_CLOSE: - sys.exit(1) - message.destroy() - elif resp == gtk.RESPONSE_OK: - print "new game" - self.s.send("Game-Command: new\n" + - "Content-Type: text\n" + - "Content-Length: 0\n"+ - "\n") - message.destroy() + elif msg["Client-Command"] == "loser" or msg["Client-Command"] == "winner": + self.s.send("Game-Command: new\n" + + "Content-Type: text\n" + + "Content-Length: 0\n"+ + "\n") def connect(self, host,port): From f07bceb019dc8aed7b4b229ccb923a5ea0ff9f85 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 16 May 2011 17:54:07 +0200 Subject: [PATCH 185/192] added log, fixed checkIfWon() --- games/tic-tac-toe-python/server.js | 12 ++++++------ src/ggs_gamevm.erl | 4 ++-- src/ggs_player.erl | 1 - 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/games/tic-tac-toe-python/server.js b/games/tic-tac-toe-python/server.js index 12b4387..fd208b1 100644 --- a/games/tic-tac-toe-python/server.js +++ b/games/tic-tac-toe-python/server.js @@ -15,7 +15,6 @@ function hi(player_id) { var p2_id = GGS.localStorage.getItem("p2_id"); if (!p1_id) { GGS.localStorage.setItem("p1_id", player_id); - GGS.localStorage.setItem("next_player", 1); GGS.sendCommand(player_id, "welcome", "1"); } else if (!p2_id) { GGS.localStorage.setItem("p2_id", player_id); @@ -48,8 +47,8 @@ function move(player_id, args) { gameBoard[props.x][props.y] = p; GGS.localStorage.setItem("game_board", JSON.stringify(gameBoard)); GGS.sendCommandToAll("game_board", boardAsString(gameBoard)); - - if (this.checkIfWon()) { + GGS.log(this.checkIfWon(gameBoard)) + if (this.checkIfWon(gameBoard)) { if (p == 1) { GGS.sendCommand(p1_id, "winner", "You win!"); GGS.sendCommand(p2_id, "loser", "You lose!"); @@ -75,9 +74,9 @@ function move(player_id, args) { } } -function checkIfWon() { +function checkIfWon(gameBoard) { - var gameBoard = JSON.parse(GGS.localStorage.getItem("game_board")); + //var gameBoard = JSON.parse(GGS.localStorage.getItem("game_board")); for (i = 0; i < ROWS; ++i) { for (j = 0; j < ROWS; ++j) { @@ -133,8 +132,9 @@ function newGame() { } GGS.localStorage.setItem("game_board", JSON.stringify(gameBoard)); - GGS.sendCommandToAll("new_game", ""); + GGS.sendCommandToAll("new_game", ""); GGS.sendCommandToAll("game_board", boardAsString(gameBoard)); + GGS.localStorage.setItem("next_player", 1); } function boardAsString(gameBoard) { diff --git a/src/ggs_gamevm.erl b/src/ggs_gamevm.erl index 1a2eb43..ea06fba 100644 --- a/src/ggs_gamevm.erl +++ b/src/ggs_gamevm.erl @@ -95,8 +95,8 @@ expose(Global, Table) -> {"serverInfo", fun(#erlv8_fun_invocation{}, []) -> PlayerList = ggs_coordinator:get_all_players(), integer_to_list(length(PlayerList)) - end} - %{"log", fun(#erlv8_fun_invocation{}, [Arg]) -> erlang:display(Arg) end } + end}, + {"log", fun(#erlv8_fun_invocation{}, [Arg]) -> erlang:display(Arg) end } %{"setTimeout", fund(#erlv8_fun_invocation{}, [Time, FunctionName])-> setTimeout(Time, FunctionName) end} ])). diff --git a/src/ggs_player.erl b/src/ggs_player.erl index f9f42da..a7b9b36 100644 --- a/src/ggs_player.erl +++ b/src/ggs_player.erl @@ -102,7 +102,6 @@ handle_cast({srv_cmd, "hello", _Headers, TableToken}, State) -> {noreply, State#state{ table = TPid } } end; handle_cast({srv_cmd, "define", _Headers, Data}, #state { table = Table } = State) -> - erl:display(Data), ggs_table:notify(Table, self(), {server, define, Data}), {noreply, State}; handle_cast({game_cmd, Command, _Headers, Data}, #state { table = Table } = State) -> From 2377df94be40d85c1ac20c9e793e129868dffb83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 16 May 2011 18:00:11 +0200 Subject: [PATCH 186/192] Added win/lose msg --- games/tic-tac-toe-python/ttt.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/games/tic-tac-toe-python/ttt.py b/games/tic-tac-toe-python/ttt.py index 77f47b5..9c85606 100644 --- a/games/tic-tac-toe-python/ttt.py +++ b/games/tic-tac-toe-python/ttt.py @@ -127,11 +127,13 @@ class GGSTTT: self.wTree.get_widget("x2y0").get_child().modify_font(pango.FontDescription("sans 48")) self.wTree.get_widget("x2y1").get_child().modify_font(pango.FontDescription("sans 48")) self.wTree.get_widget("x2y2").get_child().modify_font(pango.FontDescription("sans 48")) + self.setStatus("") elif msg["Client-Command"] == "defined": self.s.send("Game-Command: hi\n" + "Content-Type: text\n" + "Content-Length: 0\n"+ "\n") + self.setStatus("") elif msg["Client-Command"] == "lusers": print msg gobject.idle_add(self.updateUsers, msg["DATA"]) @@ -140,6 +142,7 @@ class GGSTTT: "Content-Type: text\n" + "Content-Length: 0\n"+ "\n") + self.setStatus(msg["DATA"]) def connect(self, host,port): From e6e8aac6168ec497b5bd7eb495914288f823db2a Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 16 May 2011 18:08:37 +0200 Subject: [PATCH 187/192] added draw --- games/tic-tac-toe-python/server.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/games/tic-tac-toe-python/server.js b/games/tic-tac-toe-python/server.js index fd208b1..32b609f 100644 --- a/games/tic-tac-toe-python/server.js +++ b/games/tic-tac-toe-python/server.js @@ -56,7 +56,9 @@ function move(player_id, args) { GGS.sendCommand(p1_id, "loser", "You lose!"); GGS.sendCommand(p2_id, "winner", "You win!"); } - } + } else if(allFieldsFull(gameBoard)) { + GGS.sendCommandToAll("draw", "It was a dwaw!"); + }allFieldsFull(gameBoard) if (nextPlayer == 1) { GGS.localStorage.setItem("next_player", 2); @@ -121,6 +123,17 @@ function checkIfWon(gameBoard) { return false; } +function allFieldsFull(gameBoard) { + for (var i=0; i < ROWS; i++) { + for(var j=0; j < ROWS; j++) { + if (gameBoard[i][j] == 0) { + return false; + } + } + } + return true; +} + function newGame() { // Initiate game with empty rows and columns var gameBoard = []; From e607c66c692e016cb576cfacb4d56ff8a2014e64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 16 May 2011 18:10:47 +0200 Subject: [PATCH 188/192] Added messages again --- games/tic-tac-toe-python/ttt.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/games/tic-tac-toe-python/ttt.py b/games/tic-tac-toe-python/ttt.py index 9c85606..f42cdcd 100644 --- a/games/tic-tac-toe-python/ttt.py +++ b/games/tic-tac-toe-python/ttt.py @@ -137,7 +137,12 @@ class GGSTTT: elif msg["Client-Command"] == "lusers": print msg gobject.idle_add(self.updateUsers, msg["DATA"]) - elif msg["Client-Command"] == "loser" or msg["Client-Command"] == "winner": + elif msg["Client-Command"] == "loser" or msg["Client-Command"] == "winner" or msg["Client-Command"] == "draw": + md = gtk.MessageDialog(None, + gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_INFO, + gtk.BUTTONS_CLOSE, msg["DATA"]) + md.run() + md.destroy() self.s.send("Game-Command: new\n" + "Content-Type: text\n" + "Content-Length: 0\n"+ From 37dd3efe3b5d94021c5a3e63dccc798837e12ab3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Mon, 16 May 2011 18:13:30 +0200 Subject: [PATCH 189/192] Removed dialogs again... --- games/tic-tac-toe-python/ttt.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/games/tic-tac-toe-python/ttt.py b/games/tic-tac-toe-python/ttt.py index f42cdcd..85472d7 100644 --- a/games/tic-tac-toe-python/ttt.py +++ b/games/tic-tac-toe-python/ttt.py @@ -138,11 +138,11 @@ class GGSTTT: print msg gobject.idle_add(self.updateUsers, msg["DATA"]) elif msg["Client-Command"] == "loser" or msg["Client-Command"] == "winner" or msg["Client-Command"] == "draw": - md = gtk.MessageDialog(None, - gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_INFO, - gtk.BUTTONS_CLOSE, msg["DATA"]) - md.run() - md.destroy() +# md = gtk.MessageDialog(None, +# gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_INFO, +# gtk.BUTTONS_CLOSE, msg["DATA"]) +# md.run() +# md.destroy() self.s.send("Game-Command: new\n" + "Content-Type: text\n" + "Content-Length: 0\n"+ From 25b522ea8d99427c9a78fd4e9ee75c7e00cf528e Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Mon, 16 May 2011 18:18:58 +0200 Subject: [PATCH 190/192] fixed problem with crash if you click too early --- games/tic-tac-toe-python/server.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/games/tic-tac-toe-python/server.js b/games/tic-tac-toe-python/server.js index 32b609f..5c8d5dd 100644 --- a/games/tic-tac-toe-python/server.js +++ b/games/tic-tac-toe-python/server.js @@ -1,9 +1,12 @@ function playerCommand(player_id, command, args) { + var p1_id = GGS.localStorage.getItem("p1_id"); + var p2_id = GGS.localStorage.getItem("p2_id"); + if (command == "hi") { hi(player_id); - } else if (command == "set") { + } else if (command == "set" && p1_id && p2_id) { move(player_id, args); - } else if (command == "new") { + } else if (command == "new" && p1_id && p2_id) { newGame(); } } From ae3719494cfd7257c01ac1e0dff8f5227939b540 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 8 Nov 2012 23:49:07 +0100 Subject: [PATCH 191/192] removed report and fixed .gitmodules --- doc/report | 1 - 1 file changed, 1 deletion(-) delete mode 160000 doc/report diff --git a/doc/report b/doc/report deleted file mode 160000 index 2d5eaad..0000000 --- a/doc/report +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2d5eaad6fdeb6e07d8b7f86ba53cda3e6351835a From 9fc3837ea9ab881a5c162621e2f53a6073cb3925 Mon Sep 17 00:00:00 2001 From: Jeena Paradies Date: Thu, 8 Nov 2012 23:50:01 +0100 Subject: [PATCH 192/192] fixed problems in .gitmodules --- .gitmodules | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.gitmodules b/.gitmodules index afaa5ca..ef2ff2b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,9 +1,6 @@ -[submodule "doc/report"] - path = doc/report - url = git@github.com:jeena/GGS-report.git [submodule "lib/erlv8"] path = lib/erlv8 url = https://github.com/beamjs/erlv8.git [submodule "lib/erlang_js"] path = lib/erlang_js - url = git@github.com:jonte/erlang_js.git + url = https://github.com/jonte/erlang_js.git

      0C|*T)xreaN%#FEZuHbd9`z`9)^63OvUsGn#<< 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 e-;W;7tM-soP0?4+K~iN+OQidLKb6)4$c=2 z9X@jOSWzo2l#ib{SvhrjY30mn5KJGqWCI4V zt1Zuxd=MGTlPuyi9zTFMQD3fB%+F_;nN0m9c&ViQFw<_@9oR`(42fwCBMxob)mFQv zoeB}f5`2?OhzHbzcFfdtn$1aEt(?mnED<3cPe~W^?5sV%$)7D2^`6lHoUu>jVtLL|C~cwk@EYxYIG=2&V|cvoF? zwe_y~FHf43`-w*dbXYKyuD14{vL+1VM0IyrJr;H`RKSS+UKyAH68- zu4!1k*k9n6^-J4z9;hE|IMGA%Xan6q_t6e|h2EkM=sWs}=WrEo;On@Jdw7Un<2U#{ v{)j)}&-e@eiofAsq(YX+3aODRYitx%6uz&uEd_SEowmCzlnN^lKv+t7KijRqN?&2S?Y2DD+1=Y^=yYbCnWdDv zJiIgjuA z?mg#BGOMYU9STiiLYYUp@N#$1HnQ=ckvz;(wiOQ^;ijb;dS6g6Q-@S|x^`DdY1ypu z+2wP+329L*(xE1sQz>p)YEsoydn9b=18OE`DmJ89d-zB~s&S*bjcgk~!nMu$W^5-;F!tG}?( zl_5TU&*B3Gn2`cVydzrJ+-Y_wmjUcu2}yE*P0QZPt*oJ^xq0>8mGY|4>V2_D*wNbo zun7q+snb+5s;+27t0)y^Vpc-(b{Tr6Ih$?e8qX*;KM0vQ%Ql7z%pi8{hVgal9kT-% z9agegZWfjO%RadY_&0Cfy1LJ;fI}~4!*`BD<#VWdR6Y#lvQ0zNxCtkSMea0RZwa^F zw{zF-hDb) zW|(oXI1g4rl4FtPoDJcYdW=VN$s?e^0{?C`4Ml=Y7)s?x@%}Vrp)sNn6%Ib#Gt&kL$Y`$~QV$QpQ46C3l+K+)lN9@=SkPh+u0kE+ojF_Ma52;4?)LVSZ^l}b z`hTgetkeFnYEcKX91tX)o*Dtyb1pFE7xQ7pLD4~{WoDWd4t~DwqL6(Ek6nZb>WIQS zil>{WUVNw&RiJ9L04+t0Xe&ygJUWNoL?5D$(I@B%`V@VJen!8dn;78|JO_Jm1+K(Z zxCRGsJ>G=3;B9yh?!tXIjWalhkK5;w65v zgoMZ@vW09TJ4g%ZC5K6#oF{LS_sAFII{A^@qFyRdAC+kpt)_ljOY7)-+C;b0Hrh@5 zsX|BS2|7kk($n-=dWOD0FVI)$8}uFeKK+PZp`X)9`aQitf1|hPpNz0_R>}OVo;9$A zEXWqKrED2n#n!O3Y(3k^HnUdN#`;-`ah72!8)POMW~1zR_7;1WO|Wm+x9mIi1N({n k!fvu#><{)AyX~3nsqpwbvL}Gt55a{MU7T8{7SHm(0fe6xp8x;= diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo b/games/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo deleted file mode 100644 index bd04210..0000000 --- a/games/Pong/build/Debug-iphonesimulator/Pong.app/PkgInfo +++ /dev/null @@ -1 +0,0 @@ -APPL???? \ No newline at end of file diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong b/games/Pong/build/Debug-iphonesimulator/Pong.app/Pong deleted file mode 100755 index b23b9f39fd8b51d053c19593de3646293c16092e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 153464 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 diff --git a/games/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib b/games/Pong/build/Debug-iphonesimulator/Pong.app/PongViewController.nib deleted file mode 100644 index 8923a7e0306c94f9a820c7e22b992f65a1fb306f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3576 zcma)83v?9a6~6zx|5+dt0>Q{DBvIaBv)Ld>5jNrBf+Rwo1Z15glVo7ByX?#c<978I zEfuZhSZqCNeSw0ns#Q@$YxP(U9;6;hK^q^(da52ptD?0aMcX?w2?^lwbkCWYf9Jn* zAK(4%y?;y6GHoXqJOl(d;6VTpG!i9C>PnnMvZ*A|vesyI?52`#BW0V3_{tJJ)!J#| zzr!Gb3<^+CApk@08U{Hrt++l~ZMH;OTMgSbTTIJzda4rfcC#a$(j8P_FEx5%+9*$| zE|I*%=r*hx--x%9@9i|0__1X)n(?;82LF>hZv%D3(VY5F~_*VsWjRXDPuuO-(bc&Vp?u}v{G+f*O5x3 z<84(5E0Jo#H|`(1xjtH(Zs|6S4R%Z$Q6G(@9sJTZuQd8!qi7XEVYuJaB=z-aBc=@> zB#0K4>GryqhGbfnwj48Q8Fh(tYv;naj;v}^SSeGON*Sfvbjma|lgR|96$Z1@3NztZ zxGE0@v)SfMD2(f}ieT2yUj#1R0hLe%3t%BEg2gPra@hzriWRZRZ2FrXH2uJgfF-aL zp;(4j4a{Z3*bvHwQcZBp4IeNULJPCe*vd?~YbzYiz5#Vm4-L?W&^EzJXogj&VKrRV zh#^|ZPQAW9y25B{K)ftB@{x#!3t&~E3$ui{R3VHG3NKC>M!aYq0~olm9B=LOB?c|q z;BwGW)=xn{EBasfVr|g59SmrP4z$^Td0FK;&_{_=OzPWvV-N~12J0~XE|(IBz;Md) zJh;z@Kjed5UgiQ&kv$to2NiUm0&*l}`9Gw_g|RskuIR(@JuMf03R$=ct_B9zAZ<4y zZLdY*hTuB*8KS!hevV2v!wqmF`~p|Mge`cV1;2u=a0~nzegn6{l9+})rphvtc3r|J z=o%zwr;d%OroG)Z91Oe;3676NNOdeIkMVJ5S)vWIgGF3#8>y&ESKVt|3ryQ%Axipc zJnTKPM%vb?5leUH(uC=Uh}*S2wqtlPurV4G&#wgUr?9arFE*@h!!cWRpNJ2@!`t9Nc&HER z!PIk=9>T);omV!G!ej6_tVS9)cAAdi)8EyqaV+Qb`g#(cf?ZyHJ=0euQyzM_Xdd3& zQo%<{sgah zT-@t1@p0G(uOS!r58|Sm;s|Cn?$Us=N$fm!K4rz2%@VDoC{j3(%Ryxp#vnpv+3c!J zS?~h4zhNGi2L~tb5GL=in>;qLczzjTg}>8s(CD_v>1EmXH0_MKa$`BOs@^#j$=|(5 z{sA9g93T2|P&Uo?dJ1|y_5bm@d?q#r&+C3S{Dk}yj&6s~;S2b3O?BqFHjm9XL`IO2D49=2 z!6H%s`TfMgCbGb=9W(A7u5cdKCeo=^gO%e<3Nx-L=@y!OX_@Cg8A~Q?C*#O?Qs_0N z6*wo%E~6&xSO#{D{*x6p0c`O8-oV>aK>paL1AZ36V%JYL6G!79M?wP;4pe%(7vZSJ z-Bn3T?=ezkr<;ku0#9f@&hi1FkSpZpXE7Aq!)6Qzvgsb|VAZvFP&L{jedl020vF&B zb0P%cLS#@HXUGHa0v;L&DczKUPSFXp5CQofU4%UgUGpWu^xig)=i#3zYvd#UyI*}$He2}3Gt-(o%p>3 z5+?}~l>*XGDMva_3QG~GLDHqT#H5>~Ez-@>?b036ozhO}acP(Iy!48+UwT*iP&y)g zAsv;zmWRl>a=tuT9xE5gljV>+N3N2W$PIE#?vNjqUzA^xUzT5y_sXxz`{dW;{qpPb z0r{}}rrayPEq^JWl)qQy%B(jmk~R z7UgDThw_B7M|oM2NxVj-eB1F`Y!q=uCPMT}*3e6J1BUXo9Y%HcitF zw1;MBmR?P-r?=AE=pFPujp}vkCiQyt26d}?pSnYRKz&GkM14kmRo$oVS6^2TsE5^$)Q{C8 r>SyZb>WM%gFf@=8$PMHL#s?+^CI_Ylf^O>q;5h$Dmio{Bd!X`v2_fjN diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong deleted file mode 100755 index cc9f7c41966c2d69e8517fb3b00562b06d9f0ca5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24384 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 diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o deleted file mode 100644 index f9984a2fd156f2cd6267aef338e277af0bfc6a93..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37916 zcmchA3w)f{Rp*_DodENVc?c0CzFD=HHEASV=UkrbrT800*^?5&kFY~$m z-Nrlv7{6Bn&cAIIZ)T?IT&M<_W@e@jo|z7w`Rf_}A%7I#-5)Y$H523J62JJ-GIHf? zai+wg8p~jQejbvH`kVi+34S6^u3U1f_&-}@^8Z~KONE?!adEa>bgQ-5^m1jiqHMN< zeOW?Z_??L3KYR$AnaMk|wfUL3N_Nqa=dsfxC&meu&vW?yQT#n(%eaIxY<3nUAFqr; zX|BwKnVI@Bs+hcwFB!Af4#1<{m}+zC%E->nR-ALqWn5J;<_)Ov5APB5@PAG1$X2qY zdB<&P#{?#;8#&j$L$kkvc95>{X)0qeo0IM|_NBlH$7jHnp-=LEQyIlVi9_1d4wmtk zAZo9SSJ4jAHa^W|lyd@TY{xN-!()JK0F5_%n#x$J&6Y5`Zetn$WXJN?zq>N37nhbV z!rtx^s1KNW(zrUd;%Z!Ix1tH+m*cX=Z0rdR4DZ`RSQyEu1sP+Hh z59oL3|InD0XYb6-EIQQ%jw#Bh=N~NN6f!oJ;THhd%#2?K$F!-81(b0m@cKU(Y5{&O zQ-&}RVqrW+rbhz&dr`(ic-)UNn6LF=W7Y>?`DNRYD`s7nooVb#9CWb(m|uMTcI30w ztSz&?9c?IM2Ouxlc07c3G_XZ~Jly$;Gv_w z8l(AGPSIgf^J21D6;~`}%H@BB- z$1-KOwI!!=xiUDn91o7=D;U$u%xz&YJMVCFXdI8@c3w8xGEj{7Y3vKwSfMlzl5H&G zjGdQ`?>H~T?2PXFGfUuy%ay^tunhL)RofTJLAFnl-iGJIhn3enhwsBc=9)T=KYl#f ziF*^*ET1p?L4MZN___3p=I0)KJocHkJEEVt=8ni`+VQt#A-*g2EWcyBqQ4i}W_~d8 zqDh*M+&RAC!fl^x>xe&o=~p#h1o_U6OTL9D@~*t)p0RfPdg~q0Pp`o5Eeow3*L0Xy z247~LSHbgM#vk*(^Kmb4^m{HXA*DS%{%Mr;L->n7{o~(gdHO>ynpb}88xP@`GU>nK z6ETr{*R`xQ-JwqJ#qT%=VqN0B(GN!C=UNP$heP zBZrQj>^?Sor<1D|&N&04-RZ&M!BqE-k)@@g(>+nj4R+7g3dMYP=KAZ?JG*z}%hm4T zou+l@r0Z1Np*tO?lpQ)=DYF1~=yJp+W+=X(b+FgJc9gVKk2OmdL<16?To0+NMd(ZF;5I4QV zvg0f35fdwlXkEAbCpi-keg&-x(kr!+lrc4nGFHT|7{u34;&0_H{s$4939DLTZ}}F!SI^8W7D^^| z;%+=dlk%LsU}97H949=xWMb3$oWQdPV;pX_OUcSTv0K?xt;S1wD{-R9ILi4pa>Zs?&IyXqCU#p3V5>I9-gdt&hjLHs?R@gu z>YhawHXxd8HPY7)0V;i6YYQ92I0@;P*d5aVuDQJ>HoGRSozKn}aweAhh~Isulq=`K zAx$h#oM@7LcITZc$JNB<#wBqF6PIc>asDnz>_=jubS_&gD|Y93 z!A>I)V_PhrcPb`!_Pt1qC7)nzNUbelw=l7yO>GSoFheae<{m&#fZrA>MIlv%JY^wL zl0s?IpCzP3Y7-d;>P_rEg*-<{9pD{5 zEZum%P3K|@o@6e%OiP4gkwL;*`R{r>t=*4DO#F@bT1T=>#0g8pnXe_nO3vcfTIO6! z8eS{8m9nN#7PuNT9f5mmfgPpr;rql$LEUWEEZ8B zo-fxp9*Ovuka2zM==d}w4YmvC#TDS$z@+tBaToj*?lk=C8F`t3i76)djPr zMHAwzS~IO#%R*6&&O&Q^?aKR+aP>cH&Im!_X+b;IRepjPdHjbi3&w$3DUW$>-M)U) zEVf5K_okV-Vs_p&>(|{jh1U*;p^8cW(yLRAXViGOWC4M z%=%XCbSpsB#if*4f29_%Q4@yE`l~ddO-jU`ch1QJZ39(J#@|M<~xw?cyw&>qmPO#BMbegpr>$Ry&-hJxy_u3GtLb%iD37Zhuv zly@#1&tjrlH*Q#e1WG|@APWS7Pi$C20GK;^vygQc%mzED97a3O8|-km#5O~CFdNos zS6gEsN)9i(=2X$(jfrBomQcSGzUklx2%nM~G1XYnN-Z3(3JSP-)o1Gph>ac^m&L#N z*2gi18%7TuFLP&3w5|OH5LaI?ZR?nWTg^q&wqAdO9zDdiE1v=w`KGXKBip84nC@1e zFXS;QZC86)7o5WULe;cw4&|2&ZP$EDv!CD^ZEf3{WA<{TFpnL%t&?qF)szWLTNlg5 zX2jYBzpZBvQW9~ZZ9F+~@SKCDx3*ll0aKdqy%9tmP zO#8au4rd~Gv|I!WXpL`a{qsi9IK(bMI@Y~b2Wg9MU4I9J^=nQ}9LQFtsuzpSm@}8H z6(LlH(hd}}xw9tHm~w0>dsoeAPM?OH;1+8+_AUyk!!O%x-NgElLQ!y}29D)msJL@? zW=J@zR&>7YPuCgKUc=%Nu9_8wJO-u&#+^5vZztD^N4hY|?S(~%rHiP=9jj!|%LsSQ zD7>=)UdT`7D0Z68I}~ASJ;ISPYDBwpXQeS&Md~0D7Qq3e&sV@d@;bzwvkKoLg}8Pc zI&+%Z&eT~aS6+0+3l+EO&)Vq)r!<;fk}bS5ugKR(5!^p=&QevHp=8nNC_)<%@=ms> zY?nhdr;yDGfjxE{LiU2`oY(ZL{q(7`1;`|MthJ+#lXo$SOGRvjoePS%DL~9EIQbd| z*rH6hC!D)#g$hT!pvW7ETyQ5!Bd5VC%I8hzoeJ2XfRR!TG+VA5o2&1%={&1=S4nN4 zLx0|#soLy05Q1wui;8n4ak3s=I7hM&6+0INcEuXPmaAXv!D+$HGIh9)qRa+)0PDrJq zI9Cv75eugPnw&1zatjAbmSkPUSV0WuLatbIp8vU&P8bNSUPCgSH3i2AF6k8J zp^Q1%%CQR9g#0v}=M*hUG?=ohH7qN?`tu5m5SVw0sJr4y?T$NMt{k%H)8#1|J2)Mt z^MYm}D{H5yI1eSkcIKjju>RuhF38KZb9k^+1IJdmp!04;!Xk`&%@)c#Ryx2%`X-}c8M zr*y2I;qZ?^mYWyiy!|HFQ=`dlO~)dKq|IL0;(^8kN$e+q2;Q6IEx?bnR~MXYo*JO4)M-v;%^kLQ=msKnOZt zEtiY4n!z<)!`i*pj?c5yJ(NA9v!%l9QR;qO8BIcOkz{4FuIv9uN<*KQvK35f1Lb$^ z_4}S%fW@I6j9TCLP07EVg9`YOaz0zEM>1VEY8lY`w2ozw_9+tdz(tlJdsl(IW@)DD zCLJYcg91K|l_g?d1C#5z`R}DYP!RLFfi@z%NfGvT#5hd*R}FHQ_5r<8UYc6Sf}?7M zBT0emN26I+sVY+tEY7Y2+M+R#*@EN9z?rU5O+1X@sKH_hCM)}<=^9g#odk9k(&}L+ z3-KXT+PG#sZsFtQGB{=ken{cdt7n{ip?aWJt$Oq@u~Qm)206ixatn6r2oYY_EjxCz zm$!HP2sZ7mBVXUfr#qTPTI3GXb^NFM2+xOy+Uq_g6VvsUV>^hkz@_U}Zz+|}mqbXI z%jTS8m4Y`|rfcc}=t|LK5yPQ8gTfoQ9fx?LbiBM&1{XA4(<-1Xt)7`HR~Dx@oFe6Q zom9XDU3o#5bPaZ$Eu$T=Yj4Ar;+_y-oaB$(L5Tk0=_Yk*!-mUEN1D zK?IRJ2H-HH*&-!c6i!KGYXUlZ_mn1x#DSr&7QnAZ(4-Q@H`6^W;HZcau<;e{ zMx*NxPAUTB1C?~eifCHLx=;6S0&C;=0|usEAh`E zpQKlpl5+$80q1U~Xrj%46Wk%4yhyW99h)+mo^JLSE!lSC)qaiR1xJ}Ac${<8A$5C= zsRNw`vvdw(B~y0snpKB!vQ%_j*F*6dScftqTP~c?wsmzt)6@4$Xy2+>&m9wR8MM0& zIFiHO>#mbOvLp+x24oO3vfMYX76RTfgL=?M$iD#*L_?EF}1 zv~I>!)}FBJog>VJu;V~0^hUBLEOck{ch=l0bqci!ZJ5#u1tYal&l_=xFfAtQSFw2 zx+kV5O^=ne*K=K`z-fA{V7-p(vQueQr~z7Sr01^R?7-3_OXSjoQAOrvmx=>pFeflU zHL9L|;zpB)kvbc!D$_H-DcB=U^zXz zd$uy?8RX2{o&}nL=}9U0c7SERbS}AkOwTY^Ry27>Z1Yp#+&z1A56lC#=*-EEt9WU} zTZnD`7#omLydv;m5LgHyUayEtfK)5lLe(`rd-qB6sz@r8OC#0tA{e?r-l&iZfXvm3 z#h|}8Xn*eoU@4m?)15?fOwWx>=XMkTrputoeVYDYDE$Q6WqNK>$U`B>fikxCMbmS$ zf<8bH=SM6DJ#XTq#gY#*H3xyso3{O&wpj9`Ojjc$Bqz1}^^DM37)w4PFwwrx9GjbS zVHoN;ptk5o1JJD=XjDO;BnUoSIQd>0xR+4X>v3jAs$wwYlzJx7m7 zJp7-4&lAVJ=tBAq$Wt+nFG(pcpww2<*NOMZ^NY*@MLy>&l#AGZCbP5H zN_wUg`Vyf9tXeH&`U{fhWu_Jt@#MyC_VSy4lGlqBFl z?1O|0Ig%ynw%oIH3d=N>d?-r0BduZ3eJ1E`H?6H(TDZP_o7(Cb@x#-8zpeetpe51w zTyZOG+roZ}&Lc=#`nGLPW|&H6*;hd1Ta>#^l+ZQ1QmJ_Lp%zrD+{3g!)YD253o$** zKPSuOv$Z9Y>}V4agWS(T4(8|KK)|waO>*mN;G@a~tA#3e>HyZMF!D2LW*F9`FfbyL zU$UE%9!*||ZLWb6CVTYp-q>b{C?>g0=l_yU2}A)nzwXA)l1zS0md%3%%!;J1Ly;W# zdM^k1-4PD-0rc1ohOl}Sf@C&1AZb)x2lj1eKFU-BiV`q0p9933L`C1-)5_NS0v_lN zyCLUzd#m#Mem3f1&1g$n=xJpi!%B%>z-pbzotmQ0bc94z(MQBB&2B^*|QOk|JmCRxOeH8xy9M7@|0D zdOJ1K9Z2VTk`dEs?%g@~2DUoS0sT@iMjp;F`XqHQWRx!HHEqKL)#~YS(?+kKVu$ zYYQ-fE~-}B*Q@@fjsS&?g{&%?X5Y0+5ZwT)<^oHMG83`7^!2Hhy@T*F+ePas#4^E$=m5?W3)oXo*wO4c^w^HoAbk#mb63Sho41FhrlS|arMFF8wv>fUr z)D&zfOOA+T@z=vrSxmI3u}9d9`qjLt7lcF^AZxPMR4&ET1+>K+PUuMQ4%*XYXoeKU)Q>QduZvww6SaC zcaXC6Wym4B4!ne1>Vw((DJG0cLX7Ix)_(wO*O+36MdF`{aZnOg(uuJ36()=;hIJks zfoMOQ74wYQbx1+#FHp&yM6V=ob{$qQO#xzC*kvs()K+XSLJO#M^4j%(fZglrmD@>L zCbF4k%3aqhK*9{s6P>(~X&{-$$~W{jQr7#&xUy$6X?O!zvitObhL3*9bk z2NvEmN`v7kYq+{B)_Ae7bl5jv2}@bFuu9pb9Swr8+$?(f8tc72M-ag%(9R&O@!aZK zK%8bXnl+~hD;8_7OLmJ8Z1v`KS!0?mDKYg2gK)yBW+7doN9Y+2`3S<~33rk;s{1r?T47^g3Fa*krw<&O8@65Y zR4IVKR{>;ly-Sji_3-s2;uHZv4pW!$_kk|1rpM2xi%sIt4!DIG+@QJw)i(*nl&S|e zenLnt5!+1X=-?(D0+NHe7CEPbSAR;7ND(D!K!~+)Ro@@nOl==d=P>99tV}c$47MpH zK_a7-c<`E^m10O5ehbEM9%-svLkNx;Y=1)Fs*qvS*h1eWKe*+W1xjKe8G`p={8Y9e zqH6{_UXHUZLNjzyIu~claB+-?#b3N#gH|;s;ZSc^pKBPQQ{{QAUOG+(yVP;Y)vM!S zdoQ!fYIT1d>^^duRg-jr^$?8y0hpl9lB;4cdjcixGTvL|27?1*MV2XKH3TAPiw~{8 zHYJjT4IK$$AY?B;4%wzaYNIf+JPQ0G*^)>b%fmfK5%sL)F`!jq&xu_YK1x3h4jJSP zwXo&O7|$}?#H_e1g5NRJM6qW1V$9H%LD2lF*idR`8e)y-y_yo?Q(Qo1XjnIEk*+-i zv=N(-ga8ihQFxvE3-AMu#XviU(uyMzkynOR;x}{({*fXqwGPbT#fxSrqghncwq7+q zi{nQj4PCEzA{{jrEn#3BD|qqD&>Iv}Jzd}TxeHWJd(1<38sFW{Ms+dTt zaf^I}kV}L*REi@a9pu|X+gXbQ7R@O!*7y9{9~Wc<8Cmcc7#+9-1Ygj>~Pg-hD0I0!qcl~|FJw?l$ju2UGojT&KyJORsw<7;S_ z;vgJhj`1paWE;>V1R}u60$pfmi2OC0L@3d`2Ina&9y&BG>3gve^R&RK$hM9ft_R2A zVcfjgwpGbScuaxDh>)~vwsi_rOf>B|^(1fW(j2O4SK-vlEr^`3ty=-I$`O}$0J`I- z&C{bGF7kTGkb89N?YlcEd4&w`1^BhFFF-6G*knU7Vw>L%4R62(TT?#Ljt^{R+32|L z)B|n0N5QU$&BP2`qf!BkBXr6RwCm%3^}P;k(MQ@w;58HxvO|*&$2R{JGi=qz$=K!> z_}Hm7dpM6zur=1MJgs}@Y__6><-7fH`4bkxeX?oR+ z6P3Ul+Uk0(xklAQIMyY+1Tu>k(AjG(HDZ~gOTX9JXUNIWXGW5*iVt+t(A}Q3VY36a zb80Qp=!$a5v;OEoivjK7YN;8$L$DLoSX2#4QGsQ^c2byX$vGbYw0AM#iFb3hv|lkY zwymRR<$&#%uj4`Duxjss?U8UbO7v9qT&$1*+cOCywq3ztMbL^09A?1Uo+OmmhBY0A zN#Q_91h;l4i6pL4`lhZ->lXF{nzshj02PslVnq7F!VR1K@d-0vtxXb4Oj{sm%nS_Z zG)wd_EF3ve&kxJ#gNc%FPc{RCiYGC|1sCU`&ay*8nkv!5uE-lFg@J0XM&=j~j$>(0TdK{tbI22u)>5Mt7!(wf!YtoWiK#A=Zp6_sYX0B_fTm0qxP;U)Ba zIgP%Ob_wv0^z9zL5u^m04yFa{86zaI%!{yx;kW6tEm1xe!V;SSrQJZHHGQ^aA~=PM z91#bNT3h;T`$Te*DC!f=l2$H5B<2HcYVr ziV(P^c(syB?e1I4i1J8TN*7t}Zlp-9lEo6ZWh{)X))s~Ankh@;B8O@Gwc_{&(v&53 z5xpQ#L6(I~#fig=ds0Bk62EW=m6;kbEZGZ#kYJGPBI5Q7In}s4hGSB8A&B(lN~lQy zvs5pV7rPojETxIbN^?y^k;id4tgV!#ERn+Mi?l(MDj}sTafxUKHVn(vQQ_hUvvgqR zf^pHLEM19Mrs5@W!ktwqF=eStxLToP5rpPp#4;%>rweCeT&H^0Ov*~-!q{@*K}OwH zDi@xHx~n=BCS|2?Jrd!0G_ysr7H@AzS$SJ{86;8ldMXato{wh*Z9OM}0s=a)g0=8B z9AG&crXnj+3s0k7YPnjr+;&7M2DMc;5A@Zo;%;wlFvx zV9^3}A4-h~^NW&!wHHddLafM*WsL&}*aZAaaRf#&tgwwG9&cX~J2RNA93T>rAZ4X) ztnavgGK8VMCS~PrEb2H7lsuG!wb#&O*QCakDPwuZ+r7o_w_|Dn$CJ;R)FDN}8b?EY z=R*_PVMW7=k9#qF*sttj(5hwqPbePNKYE3e)`6&ydb5JC>^+b;I#ai3Iu^T^F7_;w znp6N5xCc17WKu^o6^q(S6|ZW_MlE9z$8p-mtp?K`c-&LRG&5GSB6;&2Lb1`ySk@R_ zt`cDg(`ClQrEKIfmNm|=2mn2_uoGG~mU5g2(3+GT%*d3YU?t<^33q<42$Rwn<_OlV zf`n1oC9L5ef&3QmAPsD$3a002AS+j@jp!zIO6$c6N1r^UTIwcu81s*}rA{j%miuK8 zm3GzN62a;Z&}>`j0fE9oJULZkQq~s(Hh>A^#))&U8f`mP!x7qfe*;ZfXABsD6iY4H zE(r-d9)o(0n;*czxkXx^40r>IEtKFzV4X*BkTPZcFJKKG=!~RWcMDj9mwv0HTPF+H zfR}#e2(Cm(Sw9OFy_bHgq~D>V1c63J9icO4M;DyjSxj+OVPFRFcDP_B$kRz9*(I#} zu*EbrtC(OB3CJ^kl(EvAN#zs_{!j{>c(zWW&I+#?4jdkjH8sc)w29~8omrix6W`!dp9#_$leWqbj zU20Cofs%lyG$GkIGafDxTJ-aai`%4n)H%V!B|fdHUX_}o6d2`UkU0=Mwo0-hn66-g zP0g$M6Q?&ICesHh5(5m2qCuF{f`;zn*amV`RGtW+1%=}5MgWzt(A1q87J3P%1O%kZ z?2JjB{d`;k3F`s3np9B%56fXOx2n>$pKVd0k1PX4-jYHewa|t>l-WuKwCY(Ffodz4 zyx>)ZXq^hWOF>T})7@AqBcPFTMb9&&Dq7&vk&Y{&&!${zyRqaKfl6fqanqp%U42~o z`&9z77aD*y1wLylIZ>NM%-I2iwj5@VDwco2RShq7PD6E{vzS7csqVl5S3jlkx7XU9R@Ff7jXXLa-un7cccPrXALulSM5Fp*7NZ$eyoG(i{X(n~A z4%2H)7MjF~s7iI#!F>{``xqD+OFkIofw6fQFFkHmE=|j+5|es|W`77M`4D&ygV~oHD5g6ys6BnB)CZG{zP5+5AXh#jqk&@uMZ4GdN_@>8;!M3;iR}rXs`>5$Kh@_srPZQ z<0=y$I9}09I85sO3VIfxImiQ3(kV-OAD}-lmVB-bc0|wL7U1DX{eWhEz7AoE{349? zLB)EZ4hzD#uD1{A5WEPeo*)c%aFcpiN#SJxJzu%FHhZF?W0o0dihOHh-B~olF!&c`Mt&u{Gl~(F=S=CcCNGWtGS6+gt zq+*7x)+s6^MQ7Si^!U6Pwu+~yjySk73o9DDcs6bhxm`1CHBiwVA%?jJ5%ijezbAA; zXV_|>qB?5r;*&g~Zb7eSRtpvNvCea*2&z6oK^wN3sOXR2JkV0}?gW;abjK>8R3PPO z->}s-sW%4hP@=Y0hf|MChW2F7VW($ehBp!zP15nFMoRTx4sTNbrMQYkQ}#M=HG|20 zi|Fv?k4t_!__%s)r0lRYl)^Gf%jWPkK{T@KfNn)o8gADOod!~=$P8~)S3E4IJZCf9sdiObP9?95S(hfBiEXC%G2E?! z!0l>m9k$-bqLj_EqsXIj!SL>1027NQmq_Y7Kc=?sw)mb6lSjm*I7Ob)B%1r;ziJ*l z+4ee!qPoz-_&RvdSm;B19W2pcaM8!>BAPvIpTs26i@t0}OzWjR{rirAhUiTMg<+$z zdo(0NjmX*4LB1rXhwa{eyaI+%xkz(^xS01?7c(S0o4EQ&SU5&(u~h76z}lu*XK+&7M!H*D zk@fZD&7P!&Q{T>0=wf0qd$y}z0ivXDqcD4VNiK4jSVTS87VOydku67ghPV#knms%2 z!sZRqvk=(=_UzQ5uC|L`3A|#DWj&Dk@5Oy-=~KUc0_IHeAZ%%Ho`HElk(w)1l!KeJ z)yQZc+9BaDU-JPmKa|+RM=5+#j;D6a@y)!Vq7K+YWkGVw$fI|!n{ZOuC?nVn-1dfxUCb+mC|%Qbg+Xor*8^6=X8C6g{`l9*DMMEbP{B~7}lKpIgb z#yhN+s#n>2opQ8)g&@nAPAj2kgx9ql?`6p=~4NlRmlmR(bt zzF*VfucY@gJ)*3R+i^kYM%dFN;z6)n4(JZc?KlL~1H$Q1&B=|q;y^x{Ak{(6XV1oT zAIH{AB`|%^+nVJZSbAJV0Bp)UPMAKVQpfEmD9fJLA(Ug#@G$gB#J4D1_k79|ma+M}T6$7DwuBNIh{2?fs7zChZSG{pj_TtD zphCCPkaj(bl|H7Rds&Jcf2e~VClr!2j#NI!F?fqU%aJ#^RS=87=RVr-6Kpt68S+$| zUzs)b*i)A2DaDaPv*B7B(54klPSMta`w}2o(esZ5bCRb6?QvRRIHYKmjMC>Q707W~ z@n@$m=vmfB*)B_IK6loZUsQ}w5<}w*8xZc+_QDd-&vlB2k6KDjvwP(|hR{S=kGqqtQ5JgyTBYPI>34BS$CA(DjAL6ov!0=J5c_=A zB3%D?5dnY8q#wemG2F9dA`}4YvzW|PWJar6GEcmchoFG?78`1K)QUJK;I)`2L9*hC zFqvOe-bQgDge-J`C=%SemH8#b5Z7XJakd~7={Lk={*z`AS7VSxyt^><>ZLHDHaw~5 zqA)h2YrJ9z{qu@0UdRA_w2a`=swF7hG&8@fn4(z*n6}B>KQBm|crjI|^}nLIL?~*? z1=ObeCi9eL5fwDZ0u7e!kx~3r#Slfb4udkOVEme5h#p#pp(Z)O`E|un7p6b8Qz8%G z|MRj%W}a3o(L?J>vgaBs4Q75r@k9*`@EVZ*vm%KDqJ0;7S0m_kZb5<6Zs(XB}Ec%sn;S6xzOgD%$F5IWacIeOKrMn zOy(Szfw`J=JGnwB}ToKT{cE}Volfw{y zq7_YR{C5>sysr(oO$+>4#T7Nc!?i<-a|s9_5j&NRo|>#Ozo%J5C1}W^x1QEv|Gr|2 ze&AvIdk|F-#WtBgP(+PHv7_fBT8jn`7UjJR&uIqLA3_wN`-!aK|Dq_WL4;7o?7kvM zf2c^JNq8-!+YR_RWhj577@|ppFzQNqUUAg%8>&hSymmdB%-0o5+`gfbV3zbz{#a2& zGx1PJ=v*n&Wohw$RTNQBJQQ7WfvD+?(hG_!YKn(@num&%Y=CAd(`5ccQAK(2P<{GE z#o@i|zbURLE*|a?SkkeHX8u%R;v4p0TANUKa5+@wMa2}g#=}$+ZN&UD#Z)E74zHY> z3OXPR?hpcF5qyo);fMhhdIMtI064fHg7V2p-Adlwn%>Gy%qkF zB8iLHYp;*wE!A%*lK7fEq`IYQGJmNk;%ja|@k;qCMWN4Gw6x62nm~857#lMGT@qsA z=!Nd+6VU%qMEZ2)z+L9AH9=gr>OMe3n=f^l%r_M--r9-`hrL}?9hQ17%@q;mZxmHj z#TorHj%4ref#zgI*mlZXhoETWK!Ycl^!(ZMYea1U2-heHMba=0S`^=tXQ z7M=N)B8v;y_PNfyk@??>Aa39s0<@~i9C(Tng63etX>Z& z);OgJlliuSv49gAuHjw(hRe(J#yA{q&HR&MVeuvqV$MkvVt7rHu~HMb!4v26&^)UY zn#?~d5KFNMsKn+|@xLf0)+4;=5VwL-CKeGCU4Y0^ycoo5k?;JgX2I%A^b{y@BEl1L zh{>3ULa-$3Ai_Inq&As|MZuCx^w@)Cl=8kqgied2ZvN27Wn9YGj zoak|N)`V>dyF>6N&!Xa1ev1Ys93RsNMV*IMftgyI{Xqs>*TyF%fuvlOg zO<1S1KH5r)2HuhAp?{~L2cWBjMFBTq7fN|$pvp`gG=7yu06R(aF!-zfoF}b|awkGo zw4z`^t+x5VTb9dbS9ZfavzawE7kH1vQ3Se0>qF7Z&i*2-MGWYqxg8b`xnC-?L=_O; z;22d*U$i%w3ejN?V0s0nOn^+LO6yK6`2m}#?A~N*s%}2aWIK~ONgl#EMfhk4L3z7} za9$A}A;LLjbd0sc!GX+0-aQ^m{#Xda{nupf){D0u3ju^Vn#?^kmE#Q*gup}{x|>=E zjQWGg+&e5Ce6kryH1~{E>YrL3E{5aGJJe(OG;wI9678P<*@oQDi|k{`X9y3Q4G1=w zOM9gSUu=Y$%mX^kUnK;(eLdHEr}pky0_|7@O9JEaF14;a7lP|xTW>jj1Wwn}ba@PDRmYd?tV{h{O&FjmllcL4xW7uMjg9wNwqK9Qd{Bw! zwGf&o0Yf(M5z(LzX$ZrmI0{r>4z5`e%dwK#!)hRUkZ>FhsDpi2VGj{T(WvV9mNwj7 zyM#MkOy(nYNfM``{s4b%nxaiA0>K$<7P5HtVxeBDa2qKET5T2 z6z#_v(6kpnqQFOeU@)&H^P>vl;+#30<1*vF`bpid`z%P zk*vHc1uWjj74LE4g|`&zt+Tl>(H8&575@q1^9YY5Ytt{6$E{v_3yiTyMW`+K^4=F(u^}r0V6}x|yH7S$Nuu z#1Y9AJ}ADBB=fkA+e@gEFVo0;PAC86cx;{WnRC;(a)Ia=f zPk7rs-wfJ_6fr|KB2g5wL~aIce2Q2hgM-qj2!asSm>1SQXk%5>?pRp#rG{grgE%yF zaY{l?>^ocrZPZE|n^?e2AiO=JG=I8KUGT1(9<-igF*$}~Fw`+c$GtD;4BF5Y8Xqyn zG#%qgHH7?lGobSz=K!PqyY7QkTJC1*xA|y37LBl9LtBEonfh%wi-h~|Zl-<>X9@0R z>ffz%A!bOOJHAu_mrI!bl!CC?0U->h)62Jf~)w$wHGGx=CWUSN((RA z!c$uK!nHrkYJ?Ud<#3oE`U!aUF5?*Zofc98F;`u5&b*WR1G_FlpG z%@treeP#z=l!ZA!OoXR{%1e=OVJ1R88I{Y@Baz6?8SAV*fp??PQ;w7Vu?IgECvd0s z-{ImwkP(=xiHz{oK#@pGgadF7>RQVmYuTXdOkIX^vc)3D4+ATLJ0~2n!^oA9-o%DA zvBWp-Uvp*Tsz@s?wTN!VtEX;88brveO)PQ4nj6>fhVHngqfhIBfLDw~A`=@T0IcjW z6B~w*k|2Pnt2RW|tYJQaSL3a7wvfHJfNl+7D?C`srbu6lma=vQO2JFdu9dI#*P?Z; zw)zzWT)6?o>}$cBzF12v!L$t{`uyxuw zO=ydUT7At9RM)W4qTGp@=Ti6)X#P$FwC&q+q+SMh%&@=xp5;{OQf z6s*QXhE76u`HnBM#DRMH=@AT98G=i&I)|&N+@Zqp1>6CDY-$klmn4O-rp9gw5cpC} zH-C1h=2nIfLR+lmouO=H@%vxu_o>7wxtw@tvM^ggbl8v>!p@f~XWgMuoOT#8svVF^-g1lE5dQaXfiOLl(MczT^J?NWgyeF7(Yz;@J z_#0L~1n@z0@DSu;E$_kCW4(mB{-Bxi0z40h4&eIdC4C${WCsNz^yr~O4&D-m_pbtm zXZuPxJYZ`Jz3$CR5G}=f;N`*IZ~y*KFM%Re_;(;)d8szVd-OvuyabWwya)BHc~1fg z*C1-E2UTab9KH6Enr`>?0HOQsyrj^G$RI#0r&j2J@u-anCqgoBK&#Uqyu2!~TQ#70 zM4Ez%y?jAo&6(8p86FI+1?};&FCXaZL4B=)rmv<%O;~2>EpX{U(veLrc3mW~E%A-Q z^U-aap8ERaA4Ruqh_1t)MhqfE%-i_ItuSitOYobLZq%HoU@ad$_O5F>~i-V@8{rG}TpQYFy$kW#4=MFRgp zMHkhfke9c?^6jrwg5)Kyv>P0q;?ieSBMq*h*Sqrlsvbi$d1oG-+nO_U!_A6VciPkB)EnFgzVLA@cm>-HZ!@@|U2g(Zx25q7 zx7wYVs(*JSjKBI)Ju~ZF4V3o+(e+&ymaLmEeK(;{VWAEGy)6dLA$^-`-9kXMysen; zdI-Y0B`5CT6-7s=1xHDOt1*KYC76)&#fULm-qh$^;5EGn9rxd8R^Y*R|0TG~4y1jj z>)UXT=`zEdFTiIim)RY`frZM&(+D+yJrTo-D@yd$LPi~xvQ?dUX;=J zX(on73}c=^zP5&XUO-wu(%62smB0CE)i3k3F`pRIw4eAi(w@Teq<#K4ol0@z-WQREDmfPMJM1?_M?Pa4lkcZ#K*aM?_WL3G{hF)T8Et7PZ&WC=V5B*L6Ibw7CT`1km96Rvl(U~I$r$uBe#> zr$}dlHgVC#*%Z7_h5m)%<+qLRk^z3No6dK`Djx9g)7EuTNa!8=3e*;*SKXm{A diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o deleted file mode 100644 index e5889c1f762670157f3698036d15c73e377d41e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6424 zcmb_gTWlOx89uW!>z(YyS!bPOV_WJ5r)_$PH>4&+v}&6=HJG@GiIWm&%Vc(UygTuD zW|^6_W7?7+MJg{)A|BwO5=z7q0a~f8RHP#1q2dXZO68$XsE7voz$HQgRYefK@64=s zz3a3I^hk5g{Fn2c|NqbJpLz4czx*dFgc!i1;8F3EHnEE6*L1vZP$mb3cmR5AQ;_p1 z#d?MjT4%zTKw}ukA3b@zL-XxC9`;Y5ZEhEWHV93eW5W_*R6Wx%Ttf9?us_Qc+S*kz zUGIib_1qvtZ8~KCZx~Ix8mul=JSPZSmC21TO2DQa^yMx1qM_AUq2%!xM$M|U>c)a^ zE?JU3^yP!crYV-?$EYXqyc=U&0|w^;g^;qeF>H6iBf~J(W4r_29Oh~`E!D*bu^piL zFw9EDx0d@cc4Pdb7`V12!sx2|F?`dlTS1>4D;U3ojxQIY-o@gLeOWTA(w$ykeh~Zc zc8u{+b~v`nkoMU@j6JZrjZuOfT-zvpzBpc03VQ8$1B>z=O14RHch!f{Y*k#$ZqSSI zH(-pS=RG%v5w14-G1569t^s5ECNON55vldX<3nJu?8mz3DSf^Kp)XZ>eIZ5?lAFPZ zmq(u+*JC^G|42K$%IT`HWQ7gJ6d3Ez4`Og>^kS?z0-0e%7(v~)76Q3G4jw-!-ICQ7 zoLekMdhA$#en^a(8JbcT@wh1rsT^0a9r7R|>;J)U%pjmQy%@vrg~!btd|?a@boLyN zA6eRV5W}%?DE9bLjN@^aDI0i)@Ap|?>?Z-jw0*6WMJ*l2EV0V8NNE&o<9Hkey`$*fyE zlsAe8Qvt@bd!KE9f#bt=>)1NI8285W()h@EaZDq+Z;d9-p^Y$T2Qg^JNvsdH%s<+8 zu?1V4LB;dx6|^<9+}m?_x(lv5dDq6*b+>5ky@CE4$bkTy1T z_1N~ldU>=_9MfJp_sc8O0x{I^{1s>5Yk0IPKf0Q|^8CBv+6z}-=%K#{ntSOwiXxO} z2D3SNH@6)-j~9)>8q}Xld{>dLIRtVR0ghs+DW5-bqI9%!+Ny^3vbATbG&!+v;?t$w z2b)dDD$TgniBhFyJGIhh_V1s(tF*i3g{6IWiG2A)VEIA$v}L(wdCvC;5R~UUw_aW{ zZFgcR8h{qCB$R=`uH)V+RU4)cQg6BI7>Q)i@cgi3BNJB_ zXB|XGcZGeaeB@PF)#3XsS7OZ10wbvn6w!PKPiiYGB$8xo%Bx@c9on>EEZMG5kJUgV z#wBf@5$b$IYm}Q!p&pND9kfg-gnEMA6XRI`zAnc}_%vpJwVITi>H`j11EQ&L7VU52YH{K~mbCCok z=i)YzRTzugz{ts}1S)qoNKE|gXa>0~b&WDzW52AzK~CT;$DTQ^;hgM69+b$?wf!Il zxBwU`Io5SCzz(z|rge>rB3fFrUe%=AXP*Zvp=k?_XJQlSTFq-Q9-Fmjt^5Mr^DM^)(30dk(xl!^M$hI$b5A4iM*Da zx*JzXf!&gi#N84C8V6g@MHe%$<~+|4`Qd@wC8!STsDP~$jL=)e^bBm`#9`;C1;e*+ zJT6s3hQ=DpyM zTn5Q$NL*-aZ_-R9N6o~A=62r-AIJBxG8n0c2nJmpAeqN+fuh)97*o?z{FFA`a9-Z- zGUmsu1T6!>kSJd%)eD5^ocC!7=LrI!S+kY)iwd)_iFC z;Tm7-@NtN*vGuf#tu||}dM)a5&0?Ii{0?c8`F#9wfe#d~X2@h%NmsA}9+MmnzKM6} z_;B8knO)U$q#CS@6mcbn9=KH9ELDqngClp;NKw31ipSC`mbp07Z(B(Y(d_iYfH;dn z8~Z*bMrG$+BJF#ic1kLb89spt%PPOZ%rKHUzT~(sMj=z7rE7lzU)OfZ`mn5*W&Lwm z{{;Ol<0jk;1uR2FnJFj`q;`s#LKz&L0;+B*D47iVQH*coHpl^d`ez_Z zwq@C^%AMH=C6@#W4zD|8vzbt;PENjn{tqBq8Y(EN-of2M@{eaT9ZsQpq7r56(gqOjumbw_niS#e-60P%Fy626Nn)JTCAkH%`k$`H;12Ib1sBImZkaJbx)D z+j9-iwT{kDG-Fnm*8HKv9R;R^L2a?z3jDI|R-IPODx3b&Cy)BcBbIqRd_u7Et3hZj zm1pgWZ~Cj{Y5wqA@%+W0Jngky{7A4pcS8OKB)9wp%d8b{K^u^(Vw9`3Q-2cxBtluJfUEAJ#G3i<_o=ix+=n-hf+MLflZ zD=HzLm47d}rV?TWJ2Wc%YLg)HM9s8GgUo`1OPR_?X0!3u7s$&s%PdL;M%h@}08) diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong deleted file mode 100755 index db258b9e5edaf45cd3ddc6041d2145ed42a080af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24124 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 OmnOPmgoV!!d;S~4krg5U diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList deleted file mode 100644 index 437e784..0000000 --- a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList +++ /dev/null @@ -1,4 +0,0 @@ -/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o -/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o -/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o -/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o deleted file mode 100644 index 484541303b63715a85c7909ec4de1edd3374bda3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 50260 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 z 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≥)X+{A#>w%;5MF?>?)_n~9xkMXB)ft111xIj9M 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 diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o deleted file mode 100644 index a0dae3d89dbc4a8d48b3d46ca448a52aed7550fe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37888 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 Pxr^8S4$j$Lm81L@=kc5? diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap deleted file mode 100644 index 5d74c43a95f00b611e8c37c40fb62cc2fe185bed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 793 ecmXR&%*|kAU|^771`*xvUIDC2k1s!N*Q8jhT4{-pvO0X5nQ<)5I=lgQbPD`i@)~^ z0N5-6R?3}vtNxVrYqjyB4igo#%d%TG<6pn=0tdZ@{i$&_xtzkjlp{q7zEaZzo`hI% tBuX9~=aIT9Xmi*`FG7M~-Fcvgj=#$`r^-1-;_2|}m~O+fDc#qd@B&N=GZz2= diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.dep b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.dep deleted file mode 100644 index c774d7e..0000000 --- a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.dep +++ /dev/null @@ -1,22 +0,0 @@ -00000000000000000000000000000000 0f42de934b02be27425d80e94e2ce9bb ffffffffffffffffffffffffffffffff 102 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM -89a4e5a739f57aa8e8ea3e15cc5b761f 1f9a1189ae3fb17ac84e38d4d647347e ffffffffffffffffffffffffffffffff 374 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -5e4188bca1209e6907167ccba41fdc53 6efcb0abef93d98698d1747a9433770b ffffffffffffffffffffffffffffffff 52796 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -9346fa5540614c5ec02d34effc152973 f723bf13552213eb405433fcc7271848 ffffffffffffffffffffffffffffffff 24124 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong -79447062259a391fff3ea9691d9fe04e 4360bd9891f9f8c37851d2b182b20d26 ffffffffffffffffffffffffffffffff 24384 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong -4ac30befb750e7aed0b410d6ddc14710 aab16e6b23eea33c6901c5fc0bc388f5 ffffffffffffffffffffffffffffffff 51000 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o -44fb34f96cc33184f223910d4ab9e6a0 addb2d5a42443237eff1bee352eac250 ffffffffffffffffffffffffffffffff 52200 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o -4ac30befb6f84004d0b410d6ddc14557 648d61647e0fcfcc9a4dac32389c7728 ffffffffffffffffffffffffffffffff 37888 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o -44fb34f96d6b962ef223910d4ab9e4e7 145a4966e13c87e79092957e658e06ee ffffffffffffffffffffffffffffffff 37916 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o -4ac30befb6d1fbe4d0b410d6ddc14b13 28f66a099b5c55692c60ad1fd78da8ce ffffffffffffffffffffffffffffffff 50260 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o -44fb34f96d422dcef223910d4ab9eaa3 31730fa90d486574857302c05f33f12a ffffffffffffffffffffffffffffffff 50340 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o -4ac30beffa10e689d0b410d6ddc14b75 758c9f53cbb309591f01f03e180b3931 ffffffffffffffffffffffffffffffff 6408 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o -44fb34f9218330a3f223910d4ab9eac5 f1b61bf7c6c59525052e80347504928b ffffffffffffffffffffffffffffffff 6424 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o -718f52da0df5d541d35bd6a744b504ec 55231c5c1fffc0f90abe72c737fda42a ffffffffffffffffffffffffffffffff 412 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent -00000000000000000000000000000000 ecb4bdc7df410459212fbfa97152a083 ffffffffffffffffffffffffffffffff 7780 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision -000000004d4068690000000000001e76 4ac30befb6d1e995d0b410d6ddc15ec2 ffffffffffffffffffffffffffffffff 10467032 /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch -000000004d4068690000000000001e76 44fb34f96d423fbff223910d4ab9ff72 ffffffffffffffffffffffffffffffff 10000088 /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch -000000004d69bf230000000000006f2d dc1646b51af74616a28f6d262501014e ffffffffffffffffffffffffffffffff 3735 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib -000000004d407d930000000000004e05 3d22fc710bec9fbd91c7fb5d1545cb92 ffffffffffffffffffffffffffffffff 1675 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib -00000000000000000000000000000000 718f52da0df5d541d35bd6a744b504ec ffffffffffffffffffffffffffffffff 8 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PkgInfo -00000000000000000000000000000000 718f52da0df5d541d35bd6a744b504ec ffffffffffffffffffffffffffffffff 926 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist -00000000000000000000000000000000 b499dab3b9352205654a1f76bd619630 ffffffffffffffffffffffffffffffff 485 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.hmap b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.hmap deleted file mode 100644 index c4f4adc22d462624f7d947201d0b5c05fbf4ae62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1691 zcmXR&%*|kAU|^77V_;wb(hWdt4#c=XI8Y)Th(YvV03f#u12Kpm1;Zl*oPgc{#VLp$ z3;>iLK<>epF9w4 - - - - application-identifier - L65268UWZ3.net.jeena.apps.pong - get-task-allow - - keychain-access-groups - - L65268UWZ3.net.jeena.apps.pong - - - diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong~.dep b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong~.dep deleted file mode 100644 index 4023882..0000000 --- a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong~.dep +++ /dev/null @@ -1,22 +0,0 @@ -718f52da0df5d541d35bd6a744b504ec 55231c5c1fffc0f90abe72c737fda42a ffffffffffffffffffffffffffffffff 412 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent -89a4e5a739f558cbe8ea3e15cc5b4da3 1f9a1189ae3fb17ac84e38d4d647347e ffffffffffffffffffffffffffffffff 374 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -00000000000000000000000000000000 ecb4bdc7df410459212fbfa97152a083 ffffffffffffffffffffffffffffffff 7780 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision -000000004d699d400000000000005491 dc1646b51af74616a28f6d262501014e ffffffffffffffffffffffffffffffff 1966 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib -000000004d407d930000000000004e05 3d22fc710bec9fbd91c7fb5d1545cb92 ffffffffffffffffffffffffffffffff 1675 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib -00000000000000000000000000000000 718f52da0df5d541d35bd6a744b504ec ffffffffffffffffffffffffffffffff 8 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PkgInfo -00000000000000000000000000000000 718f52da0df5d541d35bd6a744b504ec ffffffffffffffffffffffffffffffff 926 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist -00000000000000000000000000000000 b499dab3b9352205654a1f76bd619630 ffffffffffffffffffffffffffffffff 485 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist -00000000000000000000000000000000 0f42de934b02be27425d80e94e2ce9bb ffffffffffffffffffffffffffffffff 102 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM -5e4188bca1209e6907167ccba41fdc53 6efcb0abef93d98698d1747a9433770b ffffffffffffffffffffffffffffffff 52068 /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -9346fa5541e0082dc02d34effc1528a9 f723bf13552213eb405433fcc7271848 ffffffffffffffffffffffffffffffff 23396 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong -79447062241b7d6cff3ea9691d9fe194 4360bd9891f9f8c37851d2b182b20d26 ffffffffffffffffffffffffffffffff 23464 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong -4ac30befb750984fd0b410d6ddc14cc6 aab16e6b23eea33c6901c5fc0bc388f5 ffffffffffffffffffffffffffffffff 45424 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o -44fb34f96cc34e65f223910d4ab9ed76 addb2d5a42443237eff1bee352eac250 ffffffffffffffffffffffffffffffff 45924 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o -4ac30befb7509b0dd0b410d6ddc14f5b 648d61647e0fcfcc9a4dac32389c7728 ffffffffffffffffffffffffffffffff 37388 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o -44fb34f96cc34d27f223910d4ab9eeeb 145a4966e13c87e79092957e658e06ee ffffffffffffffffffffffffffffffff 37408 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o -4ac30befb6f81b7fd0b410d6ddc14b13 28f66a099b5c55692c60ad1fd78da8ce ffffffffffffffffffffffffffffffff 50260 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o -44fb34f96d6bcd55f223910d4ab9eaa3 31730fa90d486574857302c05f33f12a ffffffffffffffffffffffffffffffff 50340 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o -4ac30beffa10e689d0b410d6ddc14b75 758c9f53cbb309591f01f03e180b3931 ffffffffffffffffffffffffffffffff 6408 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o -44fb34f9218330a3f223910d4ab9eac5 f1b61bf7c6c59525052e80347504928b ffffffffffffffffffffffffffffffff 6424 /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o -000000004d4068690000000000001e76 4ac30befb6d1e995d0b410d6ddc15ec2 ffffffffffffffffffffffffffffffff 10467032 /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch -000000004d4068690000000000001e76 44fb34f96d423fbff223910d4ab9ff72 ffffffffffffffffffffffffffffffff 10000088 /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state.dat b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state.dat deleted file mode 100644 index d0b88b3..0000000 --- a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state.dat +++ /dev/null @@ -1,502 +0,0 @@ -TPong -v7 -r0 -t320469393.017794 -cCheck dependencies -cCpResource build/Debug-iphoneos/Pong.app/ResourceRules.plist /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist -cProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist Pong-Info.plist -cCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib -cCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib -cProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv6 objective-c com.apple.compilers.gcc.4_2 -cProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv7 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o /Users/jeena/Projects/Pong/main.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o /Users/jeena/Projects/Pong/main.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -cLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong normal armv7 -cLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong normal armv6 -cCreateUniversalBinary /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong normal "armv6 armv7" -cGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -cProcessProductPackaging "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision -cTouch /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -cProcessProductPackaging /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent -cCodeSign /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -c000000004CC7DC9E0000000000000110 -t1288166558 -s272 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist -c000000004CB3DFCF00000000000001A7 -t1286856655 -s423 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist -c000000004CB3DFCF00000000000001E5 -t1286856655 -s485 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics -c000000004CC10EF500000000003532B0 -t1287720693 -s3486384 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/Foundation.framework/Foundation -c000000004CC10F4700000000003E1F20 -t1287720775 -s4071200 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h -c000000004CC10F1C0000000000001466 -t1287720732 -s5222 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h -c000000004CC11AE60000000000000AA1 -t1287723750 -s2721 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/UIKit.framework/UIKit -c000000004CC11B750000000000C769F0 -t1287723893 -s13068784 - -N/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision -c000000004D699FBB0000000000001E64 -t1298767803 -s7780 - -N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.h -c000000004D407D9300000000000001C7 -t1296072083 -s455 -i - -N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -c000000004D69B93F0000000000000A80 -t1298774335 -s2688 -i"PongAppDelegate.h" -i"PongViewController.h" - -N/Users/jeena/Projects/Pong/Classes/PongView.h -c000000004D69BEBA0000000000000300 -t1298775738 -s768 -i - -N/Users/jeena/Projects/Pong/Classes/PongView.m -c000000004D69C20E0000000000000E05 -t1298776590 -s3589 -i"PongView.h" - -N/Users/jeena/Projects/Pong/Classes/PongViewController.h -c000000004D69BEB400000000000000E0 -t1298775732 -s224 -i - -N/Users/jeena/Projects/Pong/Classes/PongViewController.m -c000000004D69C1F60000000000000603 -t1298776566 -s1539 -i"PongViewController.h" -i"PongView.h" - -N/Users/jeena/Projects/Pong/MainWindow.xib -c000000004D407D930000000000004E05 -t1296072083 -s19973 - -N/Users/jeena/Projects/Pong/PongViewController.xib -c000000004D69BF230000000000006F2D -t1298775843 -s28461 - -N/Users/jeena/Projects/Pong/Pong_Prefix.pch -c000000004D407D9300000000000000B1 -t1296072083 -s177 -i -i - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -t1298776593 -s374 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM -t1298776592 -s102 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist -t1298767847 -s926 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib -t1298767847 -s1675 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PkgInfo -t1298767847 -s8 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -t1298776592 -s52796 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib -t1298775897 -s3735 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist -t1298767847 -s485 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision -t1298767848 -s7780 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong -t1298776592 -s24384 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong.LinkFileList -c000000004D699FE700000000000001A5 -t1298767847 -s421 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o -t1298775813 -s50340 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o -t1298776592 -s52200 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o -t1298776592 -s37916 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o -t1298767848 -s6424 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong -t1298776592 -s24124 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList -c000000004D699FE700000000000001A5 -t1298767847 -s421 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o -t1298775813 -s50260 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o -t1298776592 -s51000 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o -t1298776592 -s37888 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o -t1298767848 -s6408 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent -t1298767848 -s412 - -N/Users/jeena/Projects/Pong/main.m -c000000004D407D930000000000000160 -t1296072083 -s352 -i - -N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch -t1298767847 -s10467032 - -N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch -t1298767847 -s10000088 - -NPong-Info.plist -c000000004D699B7F0000000000000445 -t1298766719 -s1093 - -CCheck dependencies -r0 -lSLF07#2@18"Check dependencies320469392#320469392#0(0"0(0#1#0"8700022464#0"0# - -CCodeSign /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -s320469392.857553 -e320469393.017707 -r1 -xCodeSign -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -lSLF07#2@38"CodeSign build/Debug-iphoneos/Pong.app320469392#320469393#0(0"0(0#0#56"/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app8697824480#664" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" setenv _CODESIGN_ALLOCATE_ /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate /usr/bin/codesign -f -s "iPhone Developer: Richard Pannek (G62Q88N36M)" --resource-rules=/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist --entitlements /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -s320468613.562330 -e320468613.612767 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o -x/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -xnormal -xarmv6 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m320468613#320468613#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8687287424#1639" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -s320469392.687280 -e320469392.816000 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o -x/Users/jeena/Projects/Pong/Classes/PongView.m -xnormal -xarmv6 -xobjective-c -xcom.apple.compilers.gcc.4_2 -o/Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView initWithCoder:]': -o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: 'PongView' may not respond to '-startPositions' -o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: (Messages without a matching method signature -o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: will be assumed to return 'id' and accept -o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: '...' as arguments.) -o/Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView moveBall]': -o/Users/jeena/Projects/Pong/Classes/PongView.m:71: warning: 'PongView' may not respond to '-startPositions' -o/Users/jeena/Projects/Pong/Classes/PongView.m: At top level: -o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires method '-pointsP1' to be defined - use @synthesize, @dynamic or provide a method implementation -o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires the method 'setPointsP1:' to be defined - use @synthesize, @dynamic or provide a method implementation -o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires method '-pointsP2' to be defined - use @synthesize, @dynamic or provide a method implementation -o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires the method 'setPointsP2:' to be defined - use @synthesize, @dynamic or provide a method implementation -lSLF07#2@53"Compile /Users/jeena/Projects/Pong/Classes/PongView.m320469392#320469392#0(1487"/Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView initWithCoder:]': /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: 'PongView' may not respond to '-startPositions' /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: (Messages without a matching method signature /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: will be assumed to return 'id' and accept /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: '...' as arguments.) /Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView moveBall]': /Users/jeena/Projects/Pong/Classes/PongView.m:71: warning: 'PongView' may not respond to '-startPositions' /Users/jeena/Projects/Pong/Classes/PongView.m: At top level: /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires method '-pointsP1' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires the method 'setPointsP1:' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires method '-pointsP2' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires the method 'setPointsP2:' to be defined - use @synthesize, @dynamic or provide a method implementation 8(22@47"'PongView' may not respond to '-startPositions'320469392#89#107#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#28#0#28#0#26"'*' may not respond to '*'0(13@108"(Messages without a matching method signature will be assumed to return 'id' and accept '...' as arguments.)320469392#196#105#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#28#0#28#0#0"0(22@47"'PongView' may not respond to '-startPositions'320469392#565#107#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#71#0#71#0#26"'*' may not respond to '*'0(23@13"At top level:320469392#672#61#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#0#0#0#0#0"0(22@124"Property 'pointsP1' requires method '-pointsP1' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#733#185#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(22@131"Property 'pointsP1' requires the method 'setPointsP1:' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#918#192#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(22@124"Property 'pointsP2' requires method '-pointsP2' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#1110#185#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(22@131"Property 'pointsP2' requires the method 'setPointsP2:' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#1295#192#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(0#0#45"/Users/jeena/Projects/Pong/Classes/PongView.m8700203072#1625" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongView.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -s320469392.651677 -e320469392.740891 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o -x/Users/jeena/Projects/Pong/Classes/PongViewController.m -xnormal -xarmv6 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m320469392#320469392#0(0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8699045408#1645" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o /Users/jeena/Projects/Pong/main.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -s320460647.962908 -e320460648.107719 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o -x/Users/jeena/Projects/Pong/main.m -xnormal -xarmv6 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m320460647#320460648#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8626145920#1609" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -s320468613.603601 -e320468613.663325 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o -x/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -xnormal -xarmv7 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m320468613#320468613#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8689049920#1639" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -s320469392.739737 -e320469392.807440 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o -x/Users/jeena/Projects/Pong/Classes/PongView.m -xnormal -xarmv7 -xobjective-c -xcom.apple.compilers.gcc.4_2 -o/Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView initWithCoder:]': -o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: 'PongView' may not respond to '-startPositions' -o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: (Messages without a matching method signature -o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: will be assumed to return 'id' and accept -o/Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: '...' as arguments.) -o/Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView moveBall]': -o/Users/jeena/Projects/Pong/Classes/PongView.m:71: warning: 'PongView' may not respond to '-startPositions' -o/Users/jeena/Projects/Pong/Classes/PongView.m: At top level: -o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires method '-pointsP1' to be defined - use @synthesize, @dynamic or provide a method implementation -o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires the method 'setPointsP1:' to be defined - use @synthesize, @dynamic or provide a method implementation -o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires method '-pointsP2' to be defined - use @synthesize, @dynamic or provide a method implementation -o/Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires the method 'setPointsP2:' to be defined - use @synthesize, @dynamic or provide a method implementation -lSLF07#2@53"Compile /Users/jeena/Projects/Pong/Classes/PongView.m320469392#320469392#0(1487"/Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView initWithCoder:]': /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: 'PongView' may not respond to '-startPositions' /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: (Messages without a matching method signature /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: will be assumed to return 'id' and accept /Users/jeena/Projects/Pong/Classes/PongView.m:28: warning: '...' as arguments.) /Users/jeena/Projects/Pong/Classes/PongView.m: In function '-[PongView moveBall]': /Users/jeena/Projects/Pong/Classes/PongView.m:71: warning: 'PongView' may not respond to '-startPositions' /Users/jeena/Projects/Pong/Classes/PongView.m: At top level: /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires method '-pointsP1' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP1' requires the method 'setPointsP1:' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires method '-pointsP2' to be defined - use @synthesize, @dynamic or provide a method implementation /Users/jeena/Projects/Pong/Classes/PongView.m:153: warning: property 'pointsP2' requires the method 'setPointsP2:' to be defined - use @synthesize, @dynamic or provide a method implementation 8(22@47"'PongView' may not respond to '-startPositions'320469392#89#107#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#28#0#28#0#26"'*' may not respond to '*'0(13@108"(Messages without a matching method signature will be assumed to return 'id' and accept '...' as arguments.)320469392#196#105#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#28#0#28#0#0"0(22@47"'PongView' may not respond to '-startPositions'320469392#565#107#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#71#0#71#0#26"'*' may not respond to '*'0(23@13"At top level:320469392#672#61#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#0#0#0#0#0"0(22@124"Property 'pointsP1' requires method '-pointsP1' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#733#185#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(22@131"Property 'pointsP1' requires the method 'setPointsP1:' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#918#192#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(22@124"Property 'pointsP2' requires method '-pointsP2' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#1110#185#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(22@131"Property 'pointsP2' requires the method 'setPointsP2:' to be defined - use @synthesize, @dynamic or provide a method implementation320469392#1295#192#0(6@45"/Users/jeena/Projects/Pong/Classes/PongView.m320469390#153#0#153#0#0"0(0#0#45"/Users/jeena/Projects/Pong/Classes/PongView.m8700118784#1625" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongView.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -s320469392.738647 -e320469392.788396 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o -x/Users/jeena/Projects/Pong/Classes/PongViewController.m -xnormal -xarmv7 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m320469392#320469392#0(0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8699403520#1645" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o /Users/jeena/Projects/Pong/main.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -s320460647.965463 -e320460648.108976 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o -x/Users/jeena/Projects/Pong/main.m -xnormal -xarmv7 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m320460647#320460648#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8615296512#1609" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o 0# - -CCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib -s320460647.108356 -e320460647.417594 -r1 -xCompileXIB -x/Users/jeena/Projects/Pong/MainWindow.xib -lSLF07#2@25"CompileXIB MainWindow.xib320460647#320460647#0(0"0(0#0#41"/Users/jeena/Projects/Pong/MainWindow.xib8630338784#580" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib /Users/jeena/Projects/Pong/MainWindow.xib --sdk /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk 0# - -CCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib -s320468697.485707 -e320468697.823419 -r1 -xCompileXIB -x/Users/jeena/Projects/Pong/PongViewController.xib -lSLF07#2@33"CompileXIB PongViewController.xib320468697#320468697#0(0"0(0#0#49"/Users/jeena/Projects/Pong/PongViewController.xib8687603392#596" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib /Users/jeena/Projects/Pong/PongViewController.xib --sdk /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk 0# - -CCpResource build/Debug-iphoneos/Pong.app/ResourceRules.plist /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist -s320460647.084951 -e320460647.108263 -r1 -xCpResource -xbuild/Debug-iphoneos/Pong.app/ResourceRules.plist -x/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist -lSLF07#2@94"Copy /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist320460647#320460647#0(0"0(0#0#89"/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist8027754748485782528#544" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -exclude .git -resolve-src-symlinks /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app 0# - -CCreateUniversalBinary /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong normal "armv6 armv7" -s320469392.834881 -e320469392.837074 -r1 -xCreateUniversalBinary -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -xnormal -xarmv6 armv7 -lSLF07#2@77"CreateUniversalBinary build/Debug-iphoneos/Pong.app/Pong normal "armv6 armv7"320469392#320469392#0(0"0(0#0#38"/Users/jeena/Projects/Pong/armv6 armv78699147296#523" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/lipo -create /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong -output /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong 0# - -CGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -s320469392.837125 -e320469392.855507 -r1 -xGenerateDSYMFile -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -lSLF07#2@86"GenerateDSYMFile build/Debug-iphoneos/Pong.app.dSYM build/Debug-iphoneos/Pong.app/Pong320469392#320469392#0(0"0(0#0#61"/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong8699904896#394" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/dsymutil /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -o /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM 0# - -CLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong normal armv6 -s320469392.816061 -e320469392.834819 -r1 -xLd -x/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong -xnormal -xarmv6 -lSLF07#2@100"Link /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong320469392#320469392#0(0"0(0#0#0"8698714656#858" cd /Users/jeena/Projects/Pong setenv IPHONEOS_DEPLOYMENT_TARGET 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv6 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphoneos -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong.LinkFileList -dead_strip -miphoneos-version-min=3.0 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong 0# - -CLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong normal armv7 -s320469392.807515 -e320469392.827241 -r1 -xLd -x/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong -xnormal -xarmv7 -lSLF07#2@100"Link /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong320469392#320469392#0(0"0(0#0#0"8699873280#858" cd /Users/jeena/Projects/Pong setenv IPHONEOS_DEPLOYMENT_TARGET 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphoneos -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList -dead_strip -miphoneos-version-min=3.0 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong 0# - -CProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist Pong-Info.plist -s320460647.085574 -e320460647.098968 -r1 -xProcessInfoPlistFile -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist -xPong-Info.plist -lSLF07#2@23"Process Pong-Info.plist320460647#320460647#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong-Info.plist8624183552#579" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" builtin-infoPlistUtility Pong-Info.plist -genpkginfo /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PkgInfo -expandbuildsettings -format binary -platform iphoneos -resourcerulesfile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist -o /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist 0# - -CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv7 objective-c com.apple.compilers.gcc.4_2 -s320460647.421477 -e320460647.962835 -r1 -xProcessPCH -x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch -xPong_Prefix.pch -xnormal -xarmv7 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@26"Precompile Pong_Prefix.pch320460647#320460647#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8622066880#1522" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch 0# - -CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv6 objective-c com.apple.compilers.gcc.4_2 -s320460647.420828 -e320460647.936346 -r1 -xProcessPCH -x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch -xPong_Prefix.pch -xnormal -xarmv6 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@26"Precompile Pong_Prefix.pch320460647#320460647#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8623672672#1522" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch 0# - -CProcessProductPackaging "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision -s320460648.664649 -e320460648.665784 -r1 -xProcessProductPackaging -x/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision -lSLF07#2@189"ProcessProductPackaging "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" build/Debug-iphoneos/Pong.app/embedded.mobileprovision320460648#320460648#0(0"0(0#0#81"/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision8617274624#473" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" -o /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision 0# - -CProcessProductPackaging /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent -s320460648.667702 -e320460648.765541 -r1 -xProcessProductPackaging -x/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist -x/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent -lSLF07#2@166"ProcessProductPackaging /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent320460648#320460648#0(0"0(0#0#80"/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent8613426272#476" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist -entitlements -format xml -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent 0# - -CTouch /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -s320469392.855635 -e320469392.857447 -r1 -xTouch -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -lSLF07#2@62"Touch /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app320469392#320469392#0(0"0(0#0#0"8700259808#314" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/touch -c /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app 0# - diff --git a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state~.dat b/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state~.dat deleted file mode 100644 index fd1b197..0000000 --- a/games/Pong/build/Pong.build/Debug-iphoneos/Pong.build/build-state~.dat +++ /dev/null @@ -1,477 +0,0 @@ -TPong -v7 -r0 -t320460648.969474 -cCheck dependencies -cCpResource build/Debug-iphoneos/Pong.app/ResourceRules.plist /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist -cProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist Pong-Info.plist -cCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib -cCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib -cProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv6 objective-c com.apple.compilers.gcc.4_2 -cProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv7 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o /Users/jeena/Projects/Pong/main.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o /Users/jeena/Projects/Pong/main.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -cCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -cLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong normal armv7 -cLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong normal armv6 -cCreateUniversalBinary /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong normal "armv6 armv7" -cGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -cProcessProductPackaging "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision -cTouch /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -cProcessProductPackaging /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent -cCodeSign /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -c000000004CC7DC9E0000000000000110 -t1288166558 -s272 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist -c000000004CB3DFCF00000000000001A7 -t1286856655 -s423 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist -c000000004CB3DFCF00000000000001E5 -t1286856655 -s485 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics -c000000004CC10EF500000000003532B0 -t1287720693 -s3486384 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/Foundation.framework/Foundation -c000000004CC10F4700000000003E1F20 -t1287720775 -s4071200 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h -c000000004CC10F1C0000000000001466 -t1287720732 -s5222 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h -c000000004CC11AE60000000000000AA1 -t1287723750 -s2721 - -N/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/UIKit.framework/UIKit -c000000004CC11B750000000000C769F0 -t1287723893 -s13068784 - -N/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision -c000000004D699FBB0000000000001E64 -t1298767803 -s7780 - -N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.h -c000000004D407D9300000000000001C7 -t1296072083 -s455 -i - -N/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -c000000004D407D930000000000000A80 -t1296072083 -s2688 -i"PongAppDelegate.h" -i"PongViewController.h" - -N/Users/jeena/Projects/Pong/Classes/PongView.h -c000000004D699C1900000000000001E9 -t1298766873 -s489 -i - -N/Users/jeena/Projects/Pong/Classes/PongView.m -c000000004D699F4C000000000000073A -t1298767692 -s1850 -i"PongView.h" - -N/Users/jeena/Projects/Pong/Classes/PongViewController.h -c000000004D699A8300000000000000E0 -t1298766467 -s224 -i - -N/Users/jeena/Projects/Pong/Classes/PongViewController.m -c000000004D699A9400000000000005AE -t1298766484 -s1454 -i"PongViewController.h" - -N/Users/jeena/Projects/Pong/MainWindow.xib -c000000004D407D930000000000004E05 -t1296072083 -s19973 - -N/Users/jeena/Projects/Pong/PongViewController.xib -c000000004D699D400000000000005491 -t1298767168 -s21649 - -N/Users/jeena/Projects/Pong/Pong_Prefix.pch -c000000004D407D9300000000000000B1 -t1296072083 -s177 -i -i - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -t1298767848 -s374 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM -t1298767848 -s102 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist -t1298767847 -s926 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib -t1298767847 -s1675 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PkgInfo -t1298767847 -s8 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -t1298767848 -s52068 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib -t1298767847 -s1966 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist -t1298767847 -s485 - -N/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision -t1298767848 -s7780 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong -t1298767848 -s23464 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong.LinkFileList -c000000004D699FE700000000000001A5 -t1298767847 -s421 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o -t1298767848 -s50340 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o -t1298767848 -s45924 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o -t1298767848 -s37408 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o -t1298767848 -s6424 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong -t1298767848 -s23396 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList -c000000004D699FE700000000000001A5 -t1298767847 -s421 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o -t1298767848 -s50260 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o -t1298767848 -s45424 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o -t1298767848 -s37388 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o -t1298767848 -s6408 - -N/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent -t1298767848 -s412 - -N/Users/jeena/Projects/Pong/main.m -c000000004D407D930000000000000160 -t1296072083 -s352 -i - -N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch -t1298767847 -s10467032 - -N/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch -t1298767847 -s10000088 - -NPong-Info.plist -c000000004D699B7F0000000000000445 -t1298766719 -s1093 - -CCheck dependencies -r0 -lSLF07#2@18"Check dependencies320460647#320460647#0(0"0(0#1#0"8630472128#0"0# - -CCodeSign /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -s320460648.765593 -e320460648.969446 -r1 -xCodeSign -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -lSLF07#2@38"CodeSign build/Debug-iphoneos/Pong.app320460648#320460648#0(0"0(0#0#56"/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app8624671040#664" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" setenv _CODESIGN_ALLOCATE_ /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate /usr/bin/codesign -f -s "iPhone Developer: Richard Pannek (G62Q88N36M)" --resource-rules=/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist --entitlements /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -s320460647.963641 -e320460648.119205 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o -x/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -xnormal -xarmv6 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m320460647#320460648#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8624388736#1639" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongAppDelegate.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -s320460647.964859 -e320460648.125278 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o -x/Users/jeena/Projects/Pong/Classes/PongView.m -xnormal -xarmv6 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@53"Compile /Users/jeena/Projects/Pong/Classes/PongView.m320460647#320460648#0(0"0(0#0#45"/Users/jeena/Projects/Pong/Classes/PongView.m8617038528#1625" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongView.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongView.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -s320460647.964244 -e320460648.113556 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o -x/Users/jeena/Projects/Pong/Classes/PongViewController.m -xnormal -xarmv6 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m320460647#320460648#0(0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8621772064#1645" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/PongViewController.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o /Users/jeena/Projects/Pong/main.m normal armv6 objective-c com.apple.compilers.gcc.4_2 -s320460647.962908 -e320460648.107719 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o -x/Users/jeena/Projects/Pong/main.m -xnormal -xarmv6 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m320460647#320460648#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8626145920#1609" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/main.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -s320460647.966073 -e320460648.120333 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o -x/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -xnormal -xarmv7 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@60"Compile /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m320460647#320460648#0(0"0(0#0#52"/Users/jeena/Projects/Pong/Classes/PongAppDelegate.m8614640832#1639" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongAppDelegate.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongAppDelegate.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o /Users/jeena/Projects/Pong/Classes/PongView.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -s320460647.967790 -e320460648.124518 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o -x/Users/jeena/Projects/Pong/Classes/PongView.m -xnormal -xarmv7 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@53"Compile /Users/jeena/Projects/Pong/Classes/PongView.m320460647#320460648#0(0"0(0#0#45"/Users/jeena/Projects/Pong/Classes/PongView.m8613627648#1625" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongView.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongView.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o /Users/jeena/Projects/Pong/Classes/PongViewController.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -s320460647.966920 -e320460648.111460 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o -x/Users/jeena/Projects/Pong/Classes/PongViewController.m -xnormal -xarmv7 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@63"Compile /Users/jeena/Projects/Pong/Classes/PongViewController.m320460647#320460648#0(0"0(0#0#55"/Users/jeena/Projects/Pong/Classes/PongViewController.m8614028928#1645" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/Classes/PongViewController.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/PongViewController.o 0# - -CCompileC build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o /Users/jeena/Projects/Pong/main.m normal armv7 objective-c com.apple.compilers.gcc.4_2 -s320460647.965463 -e320460648.108976 -r1 -xCompileC -xbuild/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o -x/Users/jeena/Projects/Pong/main.m -xnormal -xarmv7 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@41"Compile /Users/jeena/Projects/Pong/main.m320460647#320460648#0(0"0(0#0#33"/Users/jeena/Projects/Pong/main.m8615296512#1609" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -include /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch -c /Users/jeena/Projects/Pong/main.m -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/main.o 0# - -CCompileXIB /Users/jeena/Projects/Pong/MainWindow.xib -s320460647.108356 -e320460647.417594 -r1 -xCompileXIB -x/Users/jeena/Projects/Pong/MainWindow.xib -lSLF07#2@25"CompileXIB MainWindow.xib320460647#320460647#0(0"0(0#0#41"/Users/jeena/Projects/Pong/MainWindow.xib8630338784#580" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/MainWindow.nib /Users/jeena/Projects/Pong/MainWindow.xib --sdk /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk 0# - -CCompileXIB /Users/jeena/Projects/Pong/PongViewController.xib -s320460647.108934 -e320460647.420748 -r1 -xCompileXIB -x/Users/jeena/Projects/Pong/PongViewController.xib -lSLF07#2@33"CompileXIB PongViewController.xib320460647#320460647#0(0"0(0#0#49"/Users/jeena/Projects/Pong/PongViewController.xib8626761312#596" cd /Users/jeena/Projects/Pong setenv IBC_MINIMUM_COMPATIBILITY_VERSION 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PongViewController.nib /Users/jeena/Projects/Pong/PongViewController.xib --sdk /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk 0# - -CCpResource build/Debug-iphoneos/Pong.app/ResourceRules.plist /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist -s320460647.084951 -e320460647.108263 -r1 -xCpResource -xbuild/Debug-iphoneos/Pong.app/ResourceRules.plist -x/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist -lSLF07#2@94"Copy /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist320460647#320460647#0(0"0(0#0#89"/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist8027754748485782528#544" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -exclude .git -resolve-src-symlinks /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/ResourceRules.plist /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app 0# - -CCreateUniversalBinary /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong normal "armv6 armv7" -s320460648.437664 -e320460648.645956 -r1 -xCreateUniversalBinary -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -xnormal -xarmv6 armv7 -lSLF07#2@77"CreateUniversalBinary build/Debug-iphoneos/Pong.app/Pong normal "armv6 armv7"320460648#320460648#0(0"0(0#0#38"/Users/jeena/Projects/Pong/armv6 armv78627110816#523" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/lipo -create /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong -output /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong 0# - -CGenerateDSYMFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -s320460648.646093 -e320460648.664574 -r1 -xGenerateDSYMFile -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -lSLF07#2@86"GenerateDSYMFile build/Debug-iphoneos/Pong.app.dSYM build/Debug-iphoneos/Pong.app/Pong320460648#320460648#0(0"0(0#0#61"/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong8623600384#394" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/usr/bin/dsymutil /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Pong -o /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app.dSYM 0# - -CLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong normal armv6 -s320460648.125338 -e320460648.431083 -r1 -xLd -x/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong -xnormal -xarmv6 -lSLF07#2@100"Link /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong320460648#320460648#0(0"0(0#0#0"8605251296#858" cd /Users/jeena/Projects/Pong setenv IPHONEOS_DEPLOYMENT_TARGET 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv6 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphoneos -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong.LinkFileList -dead_strip -miphoneos-version-min=3.0 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv6/Pong 0# - -CLd /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong normal armv7 -s320460648.124583 -e320460648.437609 -r1 -xLd -x/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong -xnormal -xarmv7 -lSLF07#2@100"Link /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong320460648#320460648#0(0"0(0#0#0"8612763040#858" cd /Users/jeena/Projects/Pong setenv IPHONEOS_DEPLOYMENT_TARGET 3.0 setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -L/Users/jeena/Projects/Pong/build/Debug-iphoneos -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -filelist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong.LinkFileList -dead_strip -miphoneos-version-min=3.0 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Objects-normal/armv7/Pong 0# - -CProcessInfoPlistFile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist Pong-Info.plist -s320460647.085574 -e320460647.098968 -r1 -xProcessInfoPlistFile -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist -xPong-Info.plist -lSLF07#2@23"Process Pong-Info.plist320460647#320460647#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong-Info.plist8624183552#579" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" builtin-infoPlistUtility Pong-Info.plist -genpkginfo /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/PkgInfo -expandbuildsettings -format binary -platform iphoneos -resourcerulesfile /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/ResourceRules.plist -o /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/Info.plist 0# - -CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv7 objective-c com.apple.compilers.gcc.4_2 -s320460647.421477 -e320460647.962835 -r1 -xProcessPCH -x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch -xPong_Prefix.pch -xnormal -xarmv7 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@26"Precompile Pong_Prefix.pch320460647#320460647#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8622066880#1522" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv7 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gosloautgrgfmxgzxskqjoinrwsy/Pong_Prefix.pch.gch 0# - -CProcessPCH /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch Pong_Prefix.pch normal armv6 objective-c com.apple.compilers.gcc.4_2 -s320460647.420828 -e320460647.936346 -r1 -xProcessPCH -x/var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch -xPong_Prefix.pch -xnormal -xarmv6 -xobjective-c -xcom.apple.compilers.gcc.4_2 -lSLF07#2@26"Precompile Pong_Prefix.pch320460647#320460647#0(0"0(0#0#42"/Users/jeena/Projects/Pong/Pong_Prefix.pch8623672672#1522" cd /Users/jeena/Projects/Pong setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c-header -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=3.0 -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-generated-files.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-own-target-headers.hmap -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-all-target-headers.hmap -iquote /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong-project-headers.hmap -F/Users/jeena/Projects/Pong/build/Debug-iphoneos -I/Users/jeena/Projects/Pong/build/Debug-iphoneos/include -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources/armv6 -I/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/DerivedSources -c /Users/jeena/Projects/Pong/Pong_Prefix.pch -o /var/folders/zD/zDRcSKAkH4qw4uzdwEpSCE+++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/Pong_Prefix-gukmsobkwrnrzghivaszxouymjcr/Pong_Prefix.pch.gch 0# - -CProcessProductPackaging "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision -s320460648.664649 -e320460648.665784 -r1 -xProcessProductPackaging -x/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision -lSLF07#2@189"ProcessProductPackaging "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" build/Debug-iphoneos/Pong.app/embedded.mobileprovision320460648#320460648#0(0"0(0#0#81"/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision8617274624#473" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" "/Users/jeena/Library/MobileDevice/Provisioning Profiles/6A9A419F-E593-49FC-98DE-2B027A0982C3.mobileprovision" -o /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app/embedded.mobileprovision 0# - -CProcessProductPackaging /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent -s320460648.667702 -e320460648.765541 -r1 -xProcessProductPackaging -x/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist -x/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent -lSLF07#2@166"ProcessProductPackaging /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent320460648#320460648#0(0"0(0#0#80"/Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent8613426272#476" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/Entitlements.plist -entitlements -format xml -o /Users/jeena/Projects/Pong/build/Pong.build/Debug-iphoneos/Pong.build/Pong.xcent 0# - -CTouch /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -s320460648.665825 -e320460648.667651 -r1 -xTouch -x/Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app -lSLF07#2@62"Touch /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app320460648#320460648#0(0"0(0#0#0"8614781120#314" cd /Users/jeena/Projects/Pong setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin" /usr/bin/touch -c /Users/jeena/Projects/Pong/build/Debug-iphoneos/Pong.app 0# - diff --git a/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o b/games/Pong/build/Pong.build/Debug-iphonesimulator/Pong.build/Objects-normal/i386/AsyncSocket.o deleted file mode 100644 index db9cf77622217306f130b3dfaf5be9a08c407f43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 220068 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�$eR;z*g=@-Pk8MytA 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

    2. x$CaZ!)FdCgbtZQaySSd)Yxjopr{`M> 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 b3B7K=8KN)@H)fd82qm^uLomve2ho23y?|z> diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/subclasses.pbxbtree b/games/Pong/build/Pong.build/Pong.pbxindex/subclasses.pbxbtree index 6400fc990eab5e81dd81732d1b233a7bed3b00c3..3a42df8cad88a2eb871ee8811f4ae37bd5c253e7 100644 GIT binary patch literal 1896 zcmc(fSxi?~5XOI_B1J^8THM!I<6e{yNsJMr24h?jQ@5t>Vr{KU0z}*3t|$aGC~gT* zq;-jk+7@wn0F8-35yMNhrnPAw8d2hc3q~JGzw=-G6ErvR$&-AUd+(W<^UXJNPc+b= zCBvka&`kES5aT`sR-|l+5R(EUQz3pgjMxLKGGW&|=)VAxglmgn&sT~Uj;w$$}$2_!U!xN_Jad*&X@Y5~0?j2c-~Dw$-3HCD5i1!(@w$o1JZpb+!w<0VV$r|C@Ki?@j5GC z=Q({k?}ur^AHrbe?3o8!gx-zvc=>es!LM)5A=p#|i>1}yKS94EF#0Gw7o0w>E-%ir z74LNZM@TrMITA9?L9vij2~)0z>hd}(^SHmyU5g=C_)}Vae;Pjh87BV%RlkPvc=;^T zjJP?uaaJ0a!oT8?b6&j^#$ABxLa^^%K6z#SIh$G`J+5hfg$UJ?B22gm-w44xUOq!L zqi#;033qBVH}}Qk71aKxUSaGGvo|_>X}JB7e~#PM!Gjl2`Vzuw{j*%~45l~u`M7>H z_IcRa*cxT5j5bm_8|hul_a9{UG#0ltDn2$=bufyx7p8A6r>o25@#35qZodC6qm9wd zE(8wEP*bpOYuHkrJG-HJJS1QKUP#9@Uh%q(_ z2Zj1RA$`2gx~dxf`oy@SnB52^G={vwEQXa>9?_l$BuN?L^|3{x$(-gjUr;ob}8{c8BhTrwAcBs)S{Qd8= zHvNq?>fQUUAVd8+zIk>1|4=J9e_p-3Cw-ho3#DzE@VRuaiq}kzH*%AVyF&0@_VOv8 JV>}eR*8k%YYi|Gm literal 1896 zcmc(fdu)zp7{-5ht?l$v$|x;TY=r5wjI1K4!=i*~nvhN;BON2%#G=I(hpmnkMU_rO zQOv{~X6w)_X-Op07U2&f4zc|qDui}p4S%rf`40WQWb!8d+LK(l-@|?1&vjkT{k{pn zODzQ^$3T?gSs~Fq2ri#um5{gyMijuXt?)q^EG&l2pFscFFhQuxgR;+5FC1I|GnBh* zE_|&haC-w>R=ipc-6Uq_UO1%K_#-qa{#6ATZD43Ee4}{c9^}3OecBq0ijMDk)w_LW zDZgevoL62+6C~(;VNWAH8oEA*y}A!+%KR3t3A>A6`YI?Fj;xlqYha!@IbO9JVNwZH zmO}M5_-8xx5YHt-TWL6>zVlZG{AyNo+83xMQh&}d_;81O-vsxC*a}!7tP}R_4)gKa zt3vxZf0Dj~9O0&rs-7vkV71UYqK{Wj@}7XdrIk>$4?dMwe;j~*2VwLN@I-L_I9*wDG(-Jf_x#=$15jI zGwSB_iEyJ4TJFowXYlZa<`$zY+FE_~^04?(aE_bd!BaTZ0x=H)v%KeT&F#woA9r2} z5jl_A8EfN>g$YJMlCeD5{NF)IiZQ2yQP;`%va@ka?_%`K^>n&iA1}^hV$J{Et!r;| za(#q>+9SK85v`ts-!kHYeXg`I-i|X;-Zd%)8d2{VSu+jC`!_Rv)8eNZr=ikkOiVP2 zgq=c5pRhk(d;KmAce)riR5Q1$v89_aT$-AMkEHoZKciickJEl#T+XE%xkHSx@4woM zQR3jA Pa%{9QWO_*bs}=tXtO{rV diff --git a/games/Pong/build/Pong.build/Pong.pbxindex/symbols0.pbxsymbols b/games/Pong/build/Pong.build/Pong.pbxindex/symbols0.pbxsymbols index 6a882d5af02c00865f55d1c12535bc14411a3126..6ee7734e9ad96ba452a8b9f7e8ef02d0d10f1782 100644 GIT binary patch literal 752024 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 lO8Pcfo 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

  • e+Np^`~;48tSv>l0E`HNJpZ1`gpzfbfw>3tMYBD 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 z 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