This commit is contained in:
louiscklaw
2025-02-01 02:02:45 +08:00
parent 8bf2589af5
commit 28bb51d79f
55 changed files with 4251 additions and 0 deletions

View File

@@ -0,0 +1,64 @@
<mxfile host="65bd71144e">
<diagram id="s-rzDiBvBLxu23ZU9ywy" name="Page-1">
<mxGraphModel dx="3712" dy="2324" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="32" value="" style="edgeStyle=none;html=1;" parent="1" source="2" target="31" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="2" value="start" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" parent="1" vertex="1">
<mxGeometry x="160" y="70" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="36" value="" style="edgeStyle=none;html=1;" parent="1" source="31" target="35" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="31" value="open password file&lt;br&gt;ac.txt" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="240" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="38" value="" style="edgeStyle=none;html=1;" parent="1" source="35" target="37" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="35" value="Read Password" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="380" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="40" value="Yes" style="edgeStyle=none;html=1;" parent="1" source="37" target="39" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="49" value="No" style="edgeStyle=none;html=1;" parent="1" source="37" target="48" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="37" value="Current user found ?" style="rhombus;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="160" y="510" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="45" value="" style="edgeStyle=none;html=1;" parent="1" source="39" target="44" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="39" value="Change Password" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="680" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="47" value="" style="edgeStyle=none;html=1;" parent="1" source="44" target="46" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="44" value="Save to file" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="820" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="46" value="End" style="ellipse;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="160" y="950" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="48" value="Display Error message" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="300" y="520" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="50" value="" style="endArrow=classic;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="48" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="370" y="700" as="sourcePoint"/>
<mxPoint x="200" y="920" as="targetPoint"/>
<Array as="points">
<mxPoint x="360" y="920"/>
</Array>
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>

View File

@@ -0,0 +1,52 @@
<mxfile host="65bd71144e">
<diagram id="s-rzDiBvBLxu23ZU9ywy" name="Page-1">
<mxGraphModel dx="2651" dy="1660" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="19" value="" style="edgeStyle=none;html=1;" parent="1" source="2" target="18" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="2" value="start" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" parent="1" vertex="1">
<mxGeometry x="160" y="70" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="23" value="" style="edgeStyle=none;html=1;" parent="1" source="18" target="22" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="18" value="Get userame and password from user" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="240" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="25" value="No" style="edgeStyle=none;html=1;" parent="1" source="22" target="24" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="29" value="Yes" style="edgeStyle=none;html=1;" parent="1" source="22" target="28" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="22" value="Username or password is empty ?" style="rhombus;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="85" y="380" width="230" height="150" as="geometry"/>
</mxCell>
<mxCell id="27" value="" style="edgeStyle=none;html=1;" parent="1" source="24" target="26" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="24" value="Write new account to file" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="655" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="26" value="end" style="ellipse;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="160" y="785" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="28" value="show missing field to user" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="450" y="425" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="30" value="" style="endArrow=classic;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="28" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="450" y="650" as="sourcePoint"/>
<mxPoint x="200" y="750" as="targetPoint"/>
<Array as="points">
<mxPoint x="510" y="750"/>
</Array>
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>

View File

@@ -0,0 +1,64 @@
<mxfile host="65bd71144e">
<diagram id="s-rzDiBvBLxu23ZU9ywy" name="Page-1">
<mxGraphModel dx="436" dy="581" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="4" value="" style="edgeStyle=none;html=1;" edge="1" parent="1" source="2" target="3">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="2" value="start" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1">
<mxGeometry x="160" y="70" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="6" value="" style="edgeStyle=none;html=1;" edge="1" parent="1" source="3" target="5">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="3" value="open password file ac.txt" style="whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="140" y="240" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="8" value="" style="edgeStyle=none;html=1;" edge="1" parent="1" source="5" target="7">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="5" value="read userame" style="whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="140" y="380" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="10" value="Yes" style="edgeStyle=none;html=1;" edge="1" parent="1" source="7" target="9">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="16" value="No" style="edgeStyle=none;html=1;" edge="1" parent="1" source="7" target="15">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="7" value="username found in file ?" style="rhombus;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="160" y="510" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="12" value="" style="edgeStyle=none;html=1;" edge="1" parent="1" source="9" target="11">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="9" value="delete user" style="whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="140" y="680" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="14" value="" style="edgeStyle=none;html=1;" edge="1" parent="1" source="11" target="13">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="11" value="write changes to file" style="whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="140" y="820" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="13" value="end" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="160" y="950" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="15" value="Display error message" style="whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="300" y="520" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="17" value="" style="endArrow=classic;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="15">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="370" y="710" as="sourcePoint"/>
<mxPoint x="200" y="920" as="targetPoint"/>
<Array as="points">
<mxPoint x="360" y="920"/>
</Array>
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>

124
task1/_docs/draft.md Normal file
View File

@@ -0,0 +1,124 @@
### Player VS Computer
1. game mode select
2. player vs computer
3. player login (username and password)
4. Game run (player vs computer)
5. Game finish
6. Show ranking
7. Back to start
```mermaid
graph TD;
A[Game Mode Select] --> B[Player vs Computer];
B --> C["Player Login (Username and Password)"];
C --> D["Game Run (Player vs Computer)"];
D --> E[Game Finish];
E --> F[Show Ranking?];
F --> H[show ranking to user];
H --> G[Back to Start];
F --> G[Back to Start];
```
### Player VS Player
1. game mode select
2. player vs computer
3. player1 login (username and password)
3. player2 login (username and password)
4. Game run (player vs computer)
5. Game finish
6. Show ranking
7. Back to start
```mermaid
graph TD;
A[Start] --> B[Game Mode Select];
B --> C[Player VS Computer];
C --> D["Player1 Login (username and password)"];
D --> E["Player2 Login (username and password)"];
E --> F["Game Run (Player VS Computer)"];
F --> G[Game Finish];
G --> H[Show Ranking?];
H --> J[show ranking to user];
H --> I[Back to Start];
J --> I;
I --> A;
```
### show ranking
1. read ranking
2. show to user
```mermaid
graph TD;
A[Start] --> B[Read Ranking];
B --> C[Show Ranking to User];
C --> D[End];
```
### change password
1. open password file `ac.txt`
2. read passwords
3. find current user
4. change password when username match
5. save to file
```mermaid
graph TD;
A[Start] --> B["Open Password File ac.txt"];
B --> C[Read Passwords];
C --> D[Find Current User];
D -->|Username Match| E[Change Password];
D -->|Username Not Found| F[Display Error Message];
E --> G[Save to File];
G --> H[End];
F --> H[End];
```
### create player
1. get username and password from user
2. check if username or password is empty
3. show missing to user if empty
4. username and password ok
5. write to account file
```mermaid
graph TD;
A[Start] --> B[Get Username and Password from User];
B --> C[Check if Username or Password is Empty];
C -->|Username or Password is Empty| D[Show Missing Fields to User];
C -->|Username and Password are Not Empty| E[Write to Account File];
D --> F[End];
E --> F[End];
```
### delete player
1. open password file `ac.txt`
2. read username
3. if username found in file
4. delete user
5. write change to file
```mermaid
graph TD;
A[Start] --> B["Open Password File ac.txt"];
B --> C[Read Username];
C --> D[Username Found in File?];
D -->|Yes| E[Delete User];
D -->|No| F[Display Error Message];
E --> G[Write Changes to File];
G --> H[End];
F --> H[End];
A@{ shape: circle}
H@{ shape: circle}
D@{ shape: diamond }
```

View File

@@ -0,0 +1,65 @@
<mxfile host="65bd71144e">
<diagram id="s-rzDiBvBLxu23ZU9ywy" name="Page-1">
<mxGraphModel dx="1968" dy="2324" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="31" value="" style="edgeStyle=none;html=1;" edge="1" parent="1" source="2" target="30">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="2" value="start" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" parent="1" vertex="1">
<mxGeometry x="160" y="70" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="33" value="" style="edgeStyle=none;html=1;" edge="1" parent="1" source="30" target="32">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="30" value="Player cs Computer" style="whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="140" y="240" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="35" value="" style="edgeStyle=none;html=1;" edge="1" parent="1" source="32" target="34">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="32" value="Player1 Login&lt;br&gt;(username and password)" style="whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="140" y="380" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="37" value="" style="edgeStyle=none;html=1;" edge="1" parent="1" source="34" target="36">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="34" value="Game run&amp;nbsp;&lt;br&gt;(player vs computer)" style="whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="140" y="520" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="41" value="" style="edgeStyle=none;html=1;" edge="1" parent="1" source="36" target="40">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="36" value="Game Finish" style="whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="140" y="660" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="43" value="Yes" style="edgeStyle=none;html=1;" edge="1" parent="1" source="40" target="42">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="40" value="Show&lt;br&gt;Ranking&lt;br&gt;?" style="rhombus;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="160" y="790" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="45" value="" style="edgeStyle=none;html=1;" edge="1" parent="1" source="42" target="44">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="42" value="Show ranking to user" style="whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="140" y="960" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="44" value="End" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="160" y="1090" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="46" value="No" style="endArrow=classic;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="40">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="340" y="910" as="sourcePoint"/>
<mxPoint x="200" y="1060" as="targetPoint"/>
<Array as="points">
<mxPoint x="360" y="830"/>
<mxPoint x="360" y="1060"/>
</Array>
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>

View File

@@ -0,0 +1,77 @@
<mxfile host="65bd71144e">
<diagram id="s-rzDiBvBLxu23ZU9ywy" name="Page-1">
<mxGraphModel dx="3093" dy="1937" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="31" value="" style="edgeStyle=none;html=1;" parent="1" source="2" target="30" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="2" value="start" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" parent="1" vertex="1">
<mxGeometry x="160" y="70" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="33" value="" style="edgeStyle=none;html=1;" parent="1" source="30" target="32" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="30" value="Game Mode Select" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="240" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="35" value="" style="edgeStyle=none;html=1;" parent="1" source="32" target="34" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="32" value="Player vs Computer" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="380" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="38" value="" style="edgeStyle=none;html=1;" parent="1" source="34" target="37" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="34" value="Player 1 Login&lt;br&gt;(username and password)" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="520" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="40" value="" style="edgeStyle=none;html=1;" parent="1" source="37" target="39" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="37" value="&#10;&lt;span style=&quot;color: rgb(240, 240, 240); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: center; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(42, 37, 47); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&quot;&gt;Player2 Login (username and password)&lt;/span&gt;&#10;&#10;" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="660" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="42" value="" style="edgeStyle=none;html=1;" parent="1" source="39" target="41" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="39" value="Game run&lt;br&gt;(Player vs computer)" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="800" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="44" value="" style="edgeStyle=none;html=1;" parent="1" source="41" target="43" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="41" value="Game Finish" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="940" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="46" value="Yes" style="edgeStyle=none;html=1;" parent="1" source="43" target="45" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="43" value="Show&lt;br&gt;Ranking&lt;br&gt;?" style="rhombus;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="160" y="1070" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="48" value="" style="edgeStyle=none;html=1;" parent="1" source="45" target="47" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="45" value="Show ranking to user" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="1240" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="47" value="End" style="ellipse;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="160" y="1370" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="49" value="No" style="endArrow=classic;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" parent="1" source="43" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="330" y="1090" as="sourcePoint"/>
<mxPoint x="200" y="1340" as="targetPoint"/>
<Array as="points">
<mxPoint x="340" y="1110"/>
<mxPoint x="340" y="1340"/>
</Array>
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>

View File

@@ -0,0 +1,31 @@
<mxfile host="65bd71144e">
<diagram id="s-rzDiBvBLxu23ZU9ywy" name="Page-1">
<mxGraphModel dx="2651" dy="1660" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="32" value="" style="edgeStyle=none;html=1;" parent="1" source="2" target="31" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="2" value="start" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" parent="1" vertex="1">
<mxGeometry x="160" y="70" width="80" height="80" as="geometry"/>
</mxCell>
<mxCell id="38" value="" style="edgeStyle=none;html=1;" parent="1" source="31" target="37" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="31" value="Read Ranking&lt;br&gt;ranking.csv" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="240" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="40" value="" style="edgeStyle=none;html=1;" parent="1" source="37" target="39" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="37" value="Show Ranking to user" style="whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="140" y="380" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="39" value="End" style="ellipse;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="160" y="510" width="80" height="80" as="geometry"/>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>