Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
C
CTF
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Grzegorz
CTF
Commits
9d157e38
Commit
9d157e38
authored
Apr 01, 2016
by
Antek Grzanka
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Door squeaking, removed console logs, some flags maybe? lol
parent
66566964
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
52 additions
and
26 deletions
+52
-26
index.html
service/src/main/resources/assets/index.html
+4
-9
main.css
service/src/main/resources/assets/statics/css/main.css
+14
-0
bkg.jpg
service/src/main/resources/assets/statics/img/bkg.jpg
+0
-0
door.png
service/src/main/resources/assets/statics/img/door.png
+0
-0
navigationController.js
...ces/assets/statics/js/controllers/navigationController.js
+2
-2
scoreboardController.js
...ces/assets/statics/js/controllers/scoreboardController.js
+3
-3
taskController.js
...resources/assets/statics/js/controllers/taskController.js
+3
-3
tasksController.js
...esources/assets/statics/js/controllers/tasksController.js
+1
-1
main.js
service/src/main/resources/assets/statics/js/main.js
+25
-8
No files found.
service/src/main/resources/assets/index.html
View file @
9d157e38
...
@@ -10,11 +10,7 @@
...
@@ -10,11 +10,7 @@
<link
rel=
"stylesheet"
href=
"/statics/css/main.min.css"
>
<link
rel=
"stylesheet"
href=
"/statics/css/main.min.css"
>
</head>
</head>
<div
class=
"background"
></div>
<div
id=
"background"
></div>
<div
class=
"tlo"
></div>
<div
class=
"tausta"
></div>
<div
class=
"pozadina"
></div>
<div
class=
"agtergrond"
></div>
<!--
<!--
S2llZHnFmyBwb3N6ZWTFgmVtIG5hIHpha3VweSBkbyBCaWVkcm9ua2kuIEkgd2llc3ogY28gc3BvdGthxYJlbT8NCldXVjBhU0VnVTNSaFpHOGdjSEpoZDJSNmFYZDVZMmdnV1dWMGFTRU5DbFJ0T0dkalJ6aG5ZMGhLZG1NelVqRkpSelZ3V2xoa2NGbFlTalZhTWpsclltMVZkVWxHWkRWYU1ucEZhRmRTYUhoWlNqVkpTRkpvWVhwdlRrTnJNWEJSYmxacFRXMVNkMU5WWkhKYU1ERndVVzVzTkZOdGVIRlhiRTR6Vkd0T2NrMVZVbEppYTBwd1dXeFNWazFXWkZWVGJUVmhUVmhDU2xrd2FFTmhNREZ4VmxSR1dGWkZjSFZYYWtwS1pWWldkVlpxVGs5TlZVcElXa2QwYjJOc1VuSlVia3BPVm14S1UxbHNVbFpOUmxsNFZtNWtUbUpJUWtaVk1uUmhZVEZhVjFOc1RscE5SbFV4V1ZWYVlWWnRUa1ZVYkdST1ZtdHdUVmRYTVRSa2JWWklVMnRzVjJKWGVHOVVWbWhEVFZaa1dHVkdUbWxOYTNCNldUQldjMkZXU2xaT1ZUbFdZV3RhYUZZeFdsTldiSEJJWkVkb2FHVnJTVEJXVkVsM1RsWmtTRkpZYkdoU1JUVmhWRlZhZDAweFduSmFSa3BzVm01Q1NGa3dXbmRVYkZsM1RVaGtWMVpGV2xoV1ZFWnJaRVpLY2xkc1dtbFNXRUo0Vmxjd2VFNUhUWGhYYms1WFltMVNjbFZ0ZUZkT1JscDBaVWhrVlUxVmNEQlVNVkpUVjJ4YVYxTnNhRmRXZWtaTVZtcEtUMUp0VWtkWGJXeFlVbFZ2ZVZZeFkzaE9SMFY0Vkd4b1ZHRXhjRlpaYkZaaFlqRlNWMVp1WkZkU2JWSldWVmN4UjJGRk1WZFdhazVWVm14YWNsbFhlRXRTTVdSellVWmFhVkp1UW05V2JGWmhWakZhVjFSdVNtRlNNMUpVV1ZST1EwNVdaRmRXYlVaWFRXdGFXVlZzYUd0aGJFbDVZVVpvVlZac2NFeFZNRnB6VmxaS2NtUkdUazVYUlVwTFZtdGtOR1F4VW5KTldFNVVZbFJzV0ZWdE1WSk5SbVJYV2taS2JGSnNjSHBaVlZVMVZqSktWMU51V2xkV2VrVXdXa2R6ZUdNeFduVlZhemxYVFRGS1dWWlhNVFJrTVdSWFlrWmFWbUY2YkZsWmExcDNWMFpyZDFWcmRGcFdiR3cyV1ZWYVExbFdTbGhWYTJoV1lrWndXRmw2Umxkak1YQkdUbFpPVTJKSGR6QldiVEYzVXpBeFNGTlliRlZYUjJoVVZqQmtVMVF4VlhkYVJGSlhVbTE0ZVZkclVsTldNa3BJWlVSQ1lWSldXWGRaVlZwTFl6Sk9TV0ZHWkZObGEwVjRWMVprTkZsWFVrZFdiazVvVW0xU1ZGbHJWbmRTVm1SWFZXdGtXbFp0VWxsVmJYUnpWakpLUjFkc2FGZGlXR2g2VkZSR1lXTldUbGxoUms1T1lYcFdOVlpIZUdGWlZscDBVMnhhV0dKR1NtaFdhazVUWVVaYWNsZHRkR3BOVjFJd1drVmFVMVJzV2xWV2EzQlhZbFJGZDFscVJsWmxWazV5V2taU2FWSnNjRmhYVjNSaFdWVXhjMk5HYUd4U01GcHhWbTF6TVZkc2JGWlhiR1JWWWtad01WVlhkSE5XTWtWNVZWaGtXRlp0VWtoV2FrWlBZekZ3U0dOR1RtbFRSVXB2VmpGa05HSXhWWGhWYTJSWFlXeHdWRmxyWkZOalZscDBaVVYwYkZac2NFbFVWbWhQVmxkS1IySkVXbHBXVjFKSVZqQmFZVTVzV25GVWJHUlhVbFp3YjFacVFtRlRNV1JYWTBWYVVGWnRhRlZWYkZaM1YyeGFkRTFFUm10TlZtdzBWakowYTJGV1NuUlZiR3hhVmtVMVJGbDZSbk5qTVZwMFVteE9UbGRGU2toV2FrbDRVakZhV0ZOcldtbFNSa3BYVkZjMWIxZEdXWGRhUlZwc1VtczFlVmxWV25kV01VcFpVV3hDV0dKR1duSlZiVEZYWkVaU2NtRkdUbWxTVkZaUVZsY3dNVkV4VmxkWGJsSk9WMGRTVmxSV1dtRmxWbEpYWVVVNVdsWnJjSHBXTW5oUFYyMUtTR0ZHVWxkV1ZuQllXVEZhUjJSR1NuTmhSazVwVm10dk1WWnRNSGRsUlRGSFYxaGtUbGRGY0hGVmJYaDNWMFpzYzFWclpHdGlSbkF3VkZaV1lXSkdTbk5qUm5CYVZsWndhRmxWVlhoWFZrWnhWMnhrYVZaRlZYZFhWbEpMVlRGWmVWUnJXbUZTYlZKd1ZtcE9iMVpXWkZobFJ6bG9UVVJXZWxZeU5WTmhNVWw2VVc1T1ZtSllVbnBVYTFwYVpVZEdTVlJzWkU1aE0wSTFWMVJDWVZZeFpIUlRiR3hvVWpKb1dGUldXbmRoUm5CSFdrVTVVMkpHU25sVU1WcFBZVlpLZEU5VVRsZE5ibWhZV1dwR2MxZEdUbkphUm1ocFlYcFdXbGRYTUhoT1JteFhWMjVPV0dKdFVsZFZiVEUwVjBaa2NsWnRSbWxTTUhCSFZqSndSMVl3TVhWaFNFcGFWbXh3VEZreU1VOVNiRnB6V2tab1ZGSlZjRTVXYlhoVFVqSkZlRk5ZYUdGVFJscFZXV3hXWVZaR1VsaE9WemxYVm14d2VGVlhNVWRXUlRGWFYydG9WMDFxVmxSWlYzaExWbTFPUms5V1pHbFhSVEUwVm1wQ1lXTXlUbk5hU0U1aFVtMVNWRlJWYUVOWlZscHpXVE5rVDFadFVqQlZiR2h2VjBkR2NtTkdXbGRoYXpWMldsZDRjbVZYVmtkYVIzQnBVbXR3TmxkVVFtRmhNa1pYVkd0YVUyRnJOVmhVVmxwM1YwWmtWMWRyTld4U2JWSXhWbGQ0VTJGV1NuTmpSbFpZVm5wRmQxcEVSbk5XTVZaelYyeG9hVkp1UW5wV1Z6RTBWakExUjFkWWJFNVdWMUp2V1d4V1drMXNWblJsU0U1WVlrWndXRmt3YUV0V01rWnlWMjVLVm1KWWFGQldNV1JMVWpGd1NHRkhhRTVYUlVreFZtMTBZVll5UlhoVGJsSlhZVEpTYUZVd1dtRldiR3h6V2tSU1ZVMVdTbGxVYkdNMVYwWktjMk5JYUZaV2VrRXhWbGR6ZUZZeFduRlZiSEJvVFcxb1VWWXhXbUZUTURWMFUydG9VRlpzY0hCV01HUnVaV3hhVlZGdFJsaGlWbHBYVkZaYVYxVnRTa2RqUlRsWFlrZG9RMXBFUm1Gak1XdzJVbTEwVGxZeFNrbFdha293V1ZaUmVGcEZXbXBTTUZwWVdWZHpNVlZHVW5KWGJGcHJUVmhDU0ZkcldrOWhWbHBaVVd0c1YySlVRalJaZWtaV1pEQXhXVlZ0YUZSU2JrSlpWMWQwYTFWck1VZGFSbVJZWWtoQ2MxVnROVU5UUm1SeVYyczVhRll3Y0VkWk1GcExWakpLVlZGcVVsZFdSVnB5VldwR1lXUldVbk5hUjJ4cFZtdHdXRlpzWTNoT1IxRjRWR3RrWVZORmNGZFphMVV4WWpGV2MxVnJaRmhTYlhoNVZsZDRUMWRIUmpaU2EyaFhUV3BHZGxacVJtRldNazVJWVVaa2FWSXhTazFXVkVaaFVqSk5lVlJyYUdsU2F6VlBWbXhqTlU1V1duUk5WRUphVm0xNFdWVnNhRzlaVmtwWVlVWmtXbFpGY0haV1ZscGhaRWRXU0ZKc1ZrNVdNMmhYVmxjd01XRXhXa2RYYmxKV1lrZG9XRlpxVGs1TlZteFhWbGhvV0ZJeFdraFpWVnBoVkd4WmVXRkVXbGhXTTFKb1ZUSXhVbVZHY0VsVmJFNXBVMFZLV1ZaWGVHOVJNVnBYV2toS1lWSkdTbkpVVmxwelRrWmtjbUZHVG1oTlZXdzJWVmQ0YjFkc1drWk9WVTVoVmxad2FGa3hXazlYVjBaR1QxWk9UbEp1UWxwV2JGSkxUa1paZUZkWWFHRlNWMmhYV1d0a05GZEdiSE5oUnpsb1VteHdlVll5TVVkV01WcHlZMFJDVm1KWWFGQldSM2hhWlVaT2RGSnNaRTVpYkVwWVZrZDRZVmxXU1hoVWJHeHBVakpvVkZsc1pHOVhWbHBZVFZSU2EwMXJXa2hYYTFwclYwZEtTVkZ1VGxaaGEwVjRWVEJhV21WWFZraGtSbWhUWVRKM01WZFdWbUZrTVZsNFYycGFVMVpGU2xkYVYzUmhZMnhzTmxOcldteGlTRUpKVlcxNFUxVXdNVlpqUkVwWFlrZFJNRlpVUmtwbFJuQkdXa2RzVkZKV2NGZFhWM2h2VlRGa1IxVnNhR3RUUjFKVlZXMTRWMDVXY0VaWGF6bFhUV3R3V0ZZeU5YTldiVXBaVVd4Q1dGWnNjR2hXTUZwWFkyeHdTRkpzWkd4aE1YQk9WbXhqZUdWck5WZFhXR3hUWVRKU1ZsbFljRmRYUmxsM1ZtdDBWMUpzY0RCVVZXaHJZa1pKZUZKcVVsWk5WMmgyV1ZaYVMyTXlUa1pQVm1ScFVqRktWVlp0Y0Vkak1sSklWR3BhVTJKWGFGUlphMXAyWlVaa1ZWRnRPVlZOVm5CNlZUSTFUMWRIUm5KVGJVWlZWa1UxUkZVd1dscGtNV1IwVW0xd1RtRjZWa2hYVjNSaFZqSkdWMU5ZYkdoVFIzaFlXV3hvUTFOR1ZqWlRhelZzVm14S2VWZHJXbTloVmtwMVVXNWtWMkZyU25KWmFrRXhZekZrZFZWdGVGTmlTRUo2VmxjeE1HTXdOVmRYYTJoclVtMVNXRlpxUW5kVFZscFlUVVJXVjFac2NEQlpWVlpUVm1zeFYyTklTbHBOYm1oeVdrVmFTMk15VGtkYVJUVlhWMFZLVEZadGVHcGxSVEZJVWxob2FWSnRVbFZaYTFwaFYwWnNjbHBIT1ZwV2JYaFdWVEl3TlZVeFNuTmpSbXhoVmxkU1NGbFhjM2hYUmxaMVkwWmtVMDB5YUZWV2EyUTBVekZKZUZwSVNtcFNiVkp3VlcwMVEwMXNaRmhqUldScVRWWnNORlpITlU5WlZrbDZVV3hTVjJFeVVUQldNVnByVjBkV1IxUnNUazVpUlhBMlYxZDBiMUl4VlhsVGEyaFdZbXRhV0Zsc2FFNWxSbkJXVjIxR1dGSlVSbHBYYTFwaFZHMUZlbEZyZEZkV2JWSXpWbXBHV21Rd01WbFdiRnBwVW10d1dGWnRkRmRaVmxWNFkwWmtXR0Y2YkhGWmEyaERVMVpzY2xkck9WWk5hMVkyVlZjeFIxWXdNVmRqUmxKV1lXdGFhRmt5YzNoV01YQkhZVVpvVTAxVmNHRldNVnBUVkRGVmVWUnNaR2xUUlhCWldXMHhVMk14Vm5SbFNHUk9VbTVDVjFkclVrTmhSa3B6WTBSQ1YxWXpVbnBXTW5oaFZqSk9SMkZHWkdoaE0wSk5WbFJDWVZVeVRsZFdiazVZWWxob2IxUlVRa3RWYkZsNFlVaGtVMDFXVmpWV1YzaHJWMGRLY2s1V1ZscGlSMUV3Vm14YVYyTXhXblZhUlRWT1ZtNUJkMWRVUWxkVU1rWkdUVmhLYVZKR1NsaFdhazV2WTJ4a1YxZHJkR3RTTVZwS1ZXMTRZV0ZXU1hoVGJGWllWa1ZhYUZaVVJtdFRSbEp4VjJ4T2FWZEhhSGRXVjNCUFZXMVdjMWR1VWs1U1JWcFdWRlphYzA1R1dYaGhSM1JvWWtWd01GcFZaRzlXTWtwSVZXNWFWbUV4Y0doYVJXUk9aVzFHUjFSck5WZE5WVzh4VmpKNFYxbFhSWGhWYmxKVVlteEtiMVZ1Y0hOWFJscHlWbXQwYW1KR2NIaFZiWE0xVmtaS2MxZHViRnBXVjFGM1ZsUkdZVkl4WkhWWGJHUlRZa2hDTWxaV1VrZFViVlpIV2toV1ZtSllVbFJVVlZwM1pERmFSMXBFUW1wTlJGWklWakZvYzJKR1NqWmlSbVJWVm0xU1ZGVXhXbmRXYkdSMFpFWm9hVlpXV1RCWFZFSlRWREZaZVZKdVNsaGlia0poVkZjMWIyTnNiRFpTYlhSclVqRmFTRlpITVhOVk1rcHlVbGhvVjJKVVJqTlZNbk40VjBaS1dXRkdaRmhTTVVwUVZtMHdlRTVHVlhoaVJsWlVZa1UxYjFWdGVHRmxiRmw1WlVkR1ZXSkdjSHBaTUdodlZtc3hkVlZ0YUZwaE1YQkxXa1JLUzFKV1pITmhSMmhPVjBWSmVWWnRNWGRUTVUxNFUxaHNWV0V5ZUhCVmJURnZWMVpWZDFacmRGUldiSEF3VkZWb2IxWnRTbGRTYWs1VlZteHdjbGRXV2twa01XUnpWV3h3YVZJeFNqSlhhMUpIV1Zaa1NGWnJaR0ZTTTFKUFZtcEdTMU5XV25GVFZFWldUV3RXTkZVeU5WTldiVXB5VjJ4YVYySkdjRXhXTUZwV1pERmtjMk5IZUZkTlZYQkpWakowWVZsV1VuUlNXR2hvVFRKNFdWWnFUbE5oUm14eFVtMUdWMDFYVWpGV1J6RjNWVEZrU0dGR1pGZGlWRVV3V2tSS1IxSXhaRmxhUm1SWVVqSm9XbFpYZUZOak1XUkhWMWhzYW1WcldsZFVWbFozVmpGc1ZWUnRkRmROYTNCSVZUSjBORlpYUlhoalJXUmhWbFp3TTFWdGVIZFNNa1pIWVVaU1UxWllRWGxXYlhoVFVURnNXRlZZYUdsU2JWSndWVzB4YjJOc1ZYZGFSazVZVm14YU1GUldVazlVYlVwSFYycENWVlpzV25KV01GcExZekpLUlZSc1pFNWliRW95Vm1wQ2ExSnRWbGRXYmxacVVtMVNiMWxVUm5kVVJtUnpXVE5vVTAxVmJEVldSM1JyV1ZaSmVXRkZPVmROUmxwTVZHeGFZV05zWkhOYVJuQlhZbFpKZDFac1dtOWhNVkY0VjI1T2FsSXlhRmRaVjNSMlRVWmFjMWRzWkdwTmExcEhWa2N4YzFSc1duVlJiR1JYVm0xT05GUlZXbUZqYXpGWFlVWmFhRTF0YUZsV2JYQlBZakpHUjFkdVVrNVdWbkJ6Vm0xNFlXVnNXbGhsUm1SWFRXdHdTbFZYYzNoWFIwcElWVlJDV21WcldtaFpla1pyWkZaT2MxRnNaR2xXTW1nelZteGpkMDFXUlhkT1dFNWhVbXhhVTFsc1VuTmpiRkpYVjI1T1RrMVdTbGhaVlZwclZqSktSMk5GWkZaTmJtaDZWbXBLUzFkWFJrVlViR1JUVm01Q1dWZHJWbXRXTVU1SVZXdG9hMUp0VWs5VmExcGhVMnhaZUZWclRtaE5SRlpKVlcxMFlWUnNXblJsUms1YVlURndNMVl3V2xOV01XUnlaRVpXVTJKRmNEVldha28wV1ZkS1IxZHVUbGhpYlhoaFZteGFkMk5zYkZaV1dHaHJVakJhU2xkcldtdFdNbFp5VTFSQ1YySkdTa2haVkVaS1pWWk9jbUpHV21sWFJrcFZWbXBDVjFNeFZrZFhiR2hPVmtaS2NsUlZVa2RUUmxwWVpVZDBWMkpWY0VkVWJGcHZWMnhrU1ZGcmFGZGhhMXA2V1RKNFYyTXhjRWRhUlRWWFltdEdNMVl4V2xkaU1XeFhWMWhzVkdFeWFGZFpWRTV2V1ZaU1dFNVZOV3hTYkhCNFZXMHhSMkZyTVhKT1ZXaFlZVEZWZUZaSE1VdFhSbFpWVTJ4a2FWWkZTVEJXUmxaaFl6RmtSMVZzYkdoU01GcFVWbXBLYjFkR1pGZFZhM1JwVFZad1NGbHJhRXRoUmtwV1RsWnNWbUpVUlRCYVZscHpWbXhhY21SSGFFNVNSVnBaVjFSQ1YySXhXWGROV0VaVFlUSm9XRmxyV2xkT1JscHhVMnQwVTFac1NucFdiWGhyWVZaT1JsTlliRmRpVkVJeldsVmFUbVZXVm5KaFJrNW9UV3hLYjFaWE1UUlpWbVJIWTBab2JGSXdXbGRWYlhoM1UwWlplVTFWWkZoaVJtd3pWR3hvZDFkSFJYbGhSWGhhVmtWYVRGcEZXbGRqTWtaSFZteGtWMDF0YUVaV2JGSkhXVmRGZUZkc1pGTmliRXBVV1d0b1ExZEdiSEpXYmxwclRWWndXVlJWVWtkV1JURllWV3RzVm1KVVZsQlpWM2hMWkVkR1NGSnNaR2hOVm05NlZteFdZVlV5VG5OYVNFNWhVak5DV0ZsWWNGZE9WbHBJWlVkMFQxSnNWalZWTWpWTFZrZEZlbFZzYUZwaVJrcEhWRlZhYzJOV1RuSmFSbVJPVmpGS05sWXlkR3RrTVZWNVUyeHNhRkp0ZUZsV2FrNXZWa1pXZEdNemFGTk5helZIVm0xNFMxWXhTbGRqU0doWFVteHdkbFZVUms5U01YQkpVMnhvYVdKV1NsZFhWbWgzVWpBeFIySkdXbGhpVkd4WVZGWldkMlZzYTNkYVJ6bGFWbXR3UjFWdGNGTldiVVp5VjIxb1YwMVhVa3hWTUdSVFVqRlNjazVXVG1saE1IQnZWbTB4TkdFeVVYaFNXR3hXVjBkb1ZsbFVTbE5pTVZKVlUyeE9hVTFXV25wV2JGSkhWMFpLYzFOc2JHRlNWMUpJV1d0YVlXUkhVa1ZVYkhCWFZteHdlVlpxU2pSWlYwNTBWR3RhWVZKdFVrOVpWM1JoVFd4YWNWTnVjR3hTYkd3MVZrZDBZV0pHU25WUmJrNWFWa1ZhTWxwWGVHRldWa1owWkVaYVRsWllRalZXUjNoaFlqSkdSMU5ZY0doU2VteFdWbTE0ZDFsV2NGaGxSMFpyVWpBMVIxZHJaRzlVYkVwR1YydHdWMVpGV25aWmFrWmhZekZ3Um1GSGFGTmlXR2hvVjFaU1MxVXlVbk5YYmtwWVlraENjbFJXYUVOVFJscElaVWRHVmsxcmNFbGFSRTUzVmpKS1ZWRnFVbFpoYTFwaFdrUkJlRll5UmtobFJrNXBWMGRvZGxac1pEUlpWbVIwVlZob1dHRXlhSEZVVkVwdlYwWlNXR042UmxSaVIzUXpWakl4TUZaWFNsWmpSRUphVmxkb2VsWnFTa3RYVmtaeVZHMUdWMVp1UW1oWGJGcGhWVEpPYzJORlpHaFNNbmhVV1cxMFMwMHhXblJqUlU1b1RXdHNORlp0ZUd0WFIwcHlUbFprV2xaRlNqTlpla1pYWkVkT05sSnNhRk5pUm05M1ZrZDRWazVYUmtkVGJrcHFVa1ZLV0ZacVRtOVdSbHB6VjIxR1UySlZOVXBXTW5ocllWWktkVkZ0T1ZkaVdFSklWbXBLVDJNeVRrWmFSM0JUWWxaS1VGWnRlRzlSTVU1elYyNVNhMUl6UWs5V2JYaEhUa1paZUdGSVRsZFNNRlkwV1RCYVExWXlTblZSYm5CWVZteHdZVnBFU2tkU2JGSnpZVVpPYVZkSGFGbFdiWEJLWlVVeFIxZFlaRTVXYlZKWldXMHhOR0ZHVm5OWGJtUm9VbXh3U1ZwVlpFZGhiVXBXVGxWa1dtRXhjSEpaVldSR1pWZFNSVlZzWkZkTk1FcEpWbTB3ZUZZeFdYaFZibFpWWWxkNFZGbHJhRU5rTVdSWFZXczVVazFYVWxoWGExcHJXVlpLUmxOc1ZsVldNMUpvVlRCYVlXTXlSa2hrUm1oVFRVaENXRlpxU2pSak1WcDBVbTVLV0dKWGFGZFVWbHAzVFRGV2RHVkhkR3RTTVVwSVZtMHhjMVV4WkVaVGEyeFhZbGhDU0ZscVNrWmxSbkJHV2tab2FXRjZWbHBYVjNocllqRmtWMWR1VW14VFIxSmhWbTAxUTFKc1ZsZGhSemxZVW14d2Vsa3dVa05YYkZwWFkwWkNWMUo2Umt4V01HUkhVMFU1VjFwSGJGZFNWbGw2Vm0weGQxSXlUWGhYV0doaFVtMTR
S2llZHnFmyBwb3N6ZWTFgmVtIG5hIHpha3VweSBkbyBCaWVkcm9ua2kuIEkgd2llc3ogY28gc3BvdGthxYJlbT8NCldXVjBhU0VnVTNSaFpHOGdjSEpoZDJSNmFYZDVZMmdnV1dWMGFTRU5DbFJ0T0dkalJ6aG5ZMGhLZG1NelVqRkpSelZ3V2xoa2NGbFlTalZhTWpsclltMVZkVWxHWkRWYU1ucEZhRmRTYUhoWlNqVkpTRkpvWVhwdlRrTnJNWEJSYmxacFRXMVNkMU5WWkhKYU1ERndVVzVzTkZOdGVIRlhiRTR6Vkd0T2NrMVZVbEppYTBwd1dXeFNWazFXWkZWVGJUVmhUVmhDU2xrd2FFTmhNREZ4VmxSR1dGWkZjSFZYYWtwS1pWWldkVlpxVGs5TlZVcElXa2QwYjJOc1VuSlVia3BPVm14S1UxbHNVbFpOUmxsNFZtNWtUbUpJUWtaVk1uUmhZVEZhVjFOc1RscE5SbFV4V1ZWYVlWWnRUa1ZVYkdST1ZtdHdUVmRYTVRSa2JWWklVMnRzVjJKWGVHOVVWbWhEVFZaa1dHVkdUbWxOYTNCNldUQldjMkZXU2xaT1ZUbFdZV3RhYUZZeFdsTldiSEJJWkVkb2FHVnJTVEJXVkVsM1RsWmtTRkpZYkdoU1JUVmhWRlZhZDAweFduSmFSa3BzVm01Q1NGa3dXbmRVYkZsM1RVaGtWMVpGV2xoV1ZFWnJaRVpLY2xkc1dtbFNXRUo0Vmxjd2VFNUhUWGhYYms1WFltMVNjbFZ0ZUZkT1JscDBaVWhrVlUxVmNEQlVNVkpUVjJ4YVYxTnNhRmRXZWtaTVZtcEtUMUp0VWtkWGJXeFlVbFZ2ZVZZeFkzaE9SMFY0Vkd4b1ZHRXhjRlpaYkZaaFlqRlNWMVp1WkZkU2JWSldWVmN4UjJGRk1WZFdhazVWVm14YWNsbFhlRXRTTVdSellVWmFhVkp1UW05V2JGWmhWakZhVjFSdVNtRlNNMUpVV1ZST1EwNVdaRmRXYlVaWFRXdGFXVlZzYUd0aGJFbDVZVVpvVlZac2NFeFZNRnB6VmxaS2NtUkdUazVYUlVwTFZtdGtOR1F4VW5KTldFNVVZbFJzV0ZWdE1WSk5SbVJYV2taS2JGSnNjSHBaVlZVMVZqSktWMU51V2xkV2VrVXdXa2R6ZUdNeFduVlZhemxYVFRGS1dWWlhNVFJrTVdSWFlrWmFWbUY2YkZsWmExcDNWMFpyZDFWcmRGcFdiR3cyV1ZWYVExbFdTbGhWYTJoV1lrWndXRmw2Umxkak1YQkdUbFpPVTJKSGR6QldiVEYzVXpBeFNGTlliRlZYUjJoVVZqQmtVMVF4VlhkYVJGSlhVbTE0ZVZkclVsTldNa3BJWlVSQ1lWSldXWGRaVlZwTFl6Sk9TV0ZHWkZObGEwVjRWMVprTkZsWFVrZFdiazVvVW0xU1ZGbHJWbmRTVm1SWFZXdGtXbFp0VWxsVmJYUnpWakpLUjFkc2FGZGlXR2g2VkZSR1lXTldUbGxoUms1T1lYcFdOVlpIZUdGWlZscDBVMnhhV0dKR1NtaFdhazVUWVVaYWNsZHRkR3BOVjFJd1drVmFVMVJzV2xWV2EzQlhZbFJGZDFscVJsWmxWazV5V2taU2FWSnNjRmhYVjNSaFdWVXhjMk5HYUd4U01GcHhWbTF6TVZkc2JGWlhiR1JWWWtad01WVlhkSE5XTWtWNVZWaGtXRlp0VWtoV2FrWlBZekZ3U0dOR1RtbFRSVXB2VmpGa05HSXhWWGhWYTJSWFlXeHdWRmxyWkZOalZscDBaVVYwYkZac2NFbFVWbWhQVmxkS1IySkVXbHBXVjFKSVZqQmFZVTVzV25GVWJHUlhVbFp3YjFacVFtRlRNV1JYWTBWYVVGWnRhRlZWYkZaM1YyeGFkRTFFUm10TlZtdzBWakowYTJGV1NuUlZiR3hhVmtVMVJGbDZSbk5qTVZwMFVteE9UbGRGU2toV2FrbDRVakZhV0ZOcldtbFNSa3BYVkZjMWIxZEdXWGRhUlZwc1VtczFlVmxWV25kV01VcFpVV3hDV0dKR1duSlZiVEZYWkVaU2NtRkdUbWxTVkZaUVZsY3dNVkV4VmxkWGJsSk9WMGRTVmxSV1dtRmxWbEpYWVVVNVdsWnJjSHBXTW5oUFYyMUtTR0ZHVWxkV1ZuQllXVEZhUjJSR1NuTmhSazVwVm10dk1WWnRNSGRsUlRGSFYxaGtUbGRGY0hGVmJYaDNWMFpzYzFWclpHdGlSbkF3VkZaV1lXSkdTbk5qUm5CYVZsWndhRmxWVlhoWFZrWnhWMnhrYVZaRlZYZFhWbEpMVlRGWmVWUnJXbUZTYlZKd1ZtcE9iMVpXWkZobFJ6bG9UVVJXZWxZeU5WTmhNVWw2VVc1T1ZtSllVbnBVYTFwYVpVZEdTVlJzWkU1aE0wSTFWMVJDWVZZeFpIUlRiR3hvVWpKb1dGUldXbmRoUm5CSFdrVTVVMkpHU25sVU1WcFBZVlpLZEU5VVRsZE5ibWhZV1dwR2MxZEdUbkphUm1ocFlYcFdXbGRYTUhoT1JteFhWMjVPV0dKdFVsZFZiVEUwVjBaa2NsWnRSbWxTTUhCSFZqSndSMVl3TVhWaFNFcGFWbXh3VEZreU1VOVNiRnB6V2tab1ZGSlZjRTVXYlhoVFVqSkZlRk5ZYUdGVFJscFZXV3hXWVZaR1VsaE9WemxYVm14d2VGVlhNVWRXUlRGWFYydG9WMDFxVmxSWlYzaExWbTFPUms5V1pHbFhSVEUwVm1wQ1lXTXlUbk5hU0U1aFVtMVNWRlJWYUVOWlZscHpXVE5rVDFadFVqQlZiR2h2VjBkR2NtTkdXbGRoYXpWMldsZDRjbVZYVmtkYVIzQnBVbXR3TmxkVVFtRmhNa1pYVkd0YVUyRnJOVmhVVmxwM1YwWmtWMWRyTld4U2JWSXhWbGQ0VTJGV1NuTmpSbFpZVm5wRmQxcEVSbk5XTVZaelYyeG9hVkp1UW5wV1Z6RTBWakExUjFkWWJFNVdWMUp2V1d4V1drMXNWblJsU0U1WVlrWndXRmt3YUV0V01rWnlWMjVLVm1KWWFGQldNV1JMVWpGd1NHRkhhRTVYUlVreFZtMTBZVll5UlhoVGJsSlhZVEpTYUZVd1dtRldiR3h6V2tSU1ZVMVdTbGxVYkdNMVYwWktjMk5JYUZaV2VrRXhWbGR6ZUZZeFduRlZiSEJvVFcxb1VWWXhXbUZUTURWMFUydG9VRlpzY0hCV01HUnVaV3hhVlZGdFJsaGlWbHBYVkZaYVYxVnRTa2RqUlRsWFlrZG9RMXBFUm1Gak1XdzJVbTEwVGxZeFNrbFdha293V1ZaUmVGcEZXbXBTTUZwWVdWZHpNVlZHVW5KWGJGcHJUVmhDU0ZkcldrOWhWbHBaVVd0c1YySlVRalJaZWtaV1pEQXhXVlZ0YUZSU2JrSlpWMWQwYTFWck1VZGFSbVJZWWtoQ2MxVnROVU5UUm1SeVYyczVhRll3Y0VkWk1GcExWakpLVlZGcVVsZFdSVnB5VldwR1lXUldVbk5hUjJ4cFZtdHdXRlpzWTNoT1IxRjRWR3RrWVZORmNGZFphMVV4WWpGV2MxVnJaRmhTYlhoNVZsZDRUMWRIUmpaU2EyaFhUV3BHZGxacVJtRldNazVJWVVaa2FWSXhTazFXVkVaaFVqSk5lVlJyYUdsU2F6VlBWbXhqTlU1V1duUk5WRUphVm0xNFdWVnNhRzlaVmtwWVlVWmtXbFpGY0haV1ZscGhaRWRXU0ZKc1ZrNVdNMmhYVmxjd01XRXhXa2RYYmxKV1lrZG9XRlpxVGs1TlZteFhWbGhvV0ZJeFdraFpWVnBoVkd4WmVXRkVXbGhXTTFKb1ZUSXhVbVZHY0VsVmJFNXBVMFZLV1ZaWGVHOVJNVnBYV2toS1lWSkdTbkpVVmxwelRrWmtjbUZHVG1oTlZXdzJWVmQ0YjFkc1drWk9WVTVoVmxad2FGa3hXazlYVjBaR1QxWk9UbEp1UWxwV2JGSkxUa1paZUZkWWFHRlNWMmhYV1d0a05GZEdiSE5oUnpsb1VteHdlVll5TVVkV01WcHlZMFJDVm1KWWFGQldSM2hhWlVaT2RGSnNaRTVpYkVwWVZrZDRZVmxXU1hoVWJHeHBVakpvVkZsc1pHOVhWbHBZVFZSU2EwMXJXa2hYYTFwclYwZEtTVkZ1VGxaaGEwVjRWVEJhV21WWFZraGtSbWhUWVRKM01WZFdWbUZrTVZsNFYycGFVMVpGU2xkYVYzUmhZMnhzTmxOcldteGlTRUpKVlcxNFUxVXdNVlpqUkVwWFlrZFJNRlpVUmtwbFJuQkdXa2RzVkZKV2NGZFhWM2h2VlRGa1IxVnNhR3RUUjFKVlZXMTRWMDVXY0VaWGF6bFhUV3R3V0ZZeU5YTldiVXBaVVd4Q1dGWnNjR2hXTUZwWFkyeHdTRkpzWkd4aE1YQk9WbXhqZUdWck5WZFhXR3hUWVRKU1ZsbFljRmRYUmxsM1ZtdDBWMUpzY0RCVVZXaHJZa1pKZUZKcVVsWk5WMmgyV1ZaYVMyTXlUa1pQVm1ScFVqRktWVlp0Y0Vkak1sSklWR3BhVTJKWGFGUlphMXAyWlVaa1ZWRnRPVlZOVm5CNlZUSTFUMWRIUm5KVGJVWlZWa1UxUkZVd1dscGtNV1IwVW0xd1RtRjZWa2hYVjNSaFZqSkdWMU5ZYkdoVFIzaFlXV3hvUTFOR1ZqWlRhelZzVm14S2VWZHJXbTloVmtwMVVXNWtWMkZyU25KWmFrRXhZekZrZFZWdGVGTmlTRUo2VmxjeE1HTXdOVmRYYTJoclVtMVNXRlpxUW5kVFZscFlUVVJXVjFac2NEQlpWVlpUVm1zeFYyTklTbHBOYm1oeVdrVmFTMk15VGtkYVJUVlhWMFZLVEZadGVHcGxSVEZJVWxob2FWSnRVbFZaYTFwaFYwWnNjbHBIT1ZwV2JYaFdWVEl3TlZVeFNuTmpSbXhoVmxkU1NGbFhjM2hYUmxaMVkwWmtVMDB5YUZWV2EyUTBVekZKZUZwSVNtcFNiVkp3VlcwMVEwMXNaRmhqUldScVRWWnNORlpITlU5WlZrbDZVV3hTVjJFeVVUQldNVnByVjBkV1IxUnNUazVpUlhBMlYxZDBiMUl4VlhsVGEyaFdZbXRhV0Zsc2FFNWxSbkJXVjIxR1dGSlVSbHBYYTFwaFZHMUZlbEZyZEZkV2JWSXpWbXBHV21Rd01WbFdiRnBwVW10d1dGWnRkRmRaVmxWNFkwWmtXR0Y2YkhGWmEyaERVMVpzY2xkck9WWk5hMVkyVlZjeFIxWXdNVmRqUmxKV1lXdGFhRmt5YzNoV01YQkhZVVpvVTAxVmNHRldNVnBUVkRGVmVWUnNaR2xUUlhCWldXMHhVMk14Vm5SbFNHUk9VbTVDVjFkclVrTmhSa3B6WTBSQ1YxWXpVbnBXTW5oaFZqSk9SMkZHWkdoaE0wSk5WbFJDWVZVeVRsZFdiazVZWWxob2IxUlVRa3RWYkZsNFlVaGtVMDFXVmpWV1YzaHJWMGRLY2s1V1ZscGlSMUV3Vm14YVYyTXhXblZhUlRWT1ZtNUJkMWRVUWxkVU1rWkdUVmhLYVZKR1NsaFdhazV2WTJ4a1YxZHJkR3RTTVZwS1ZXMTRZV0ZXU1hoVGJGWllWa1ZhYUZaVVJtdFRSbEp4VjJ4T2FWZEhhSGRXVjNCUFZXMVdjMWR1VWs1U1JWcFdWRlphYzA1R1dYaGhSM1JvWWtWd01GcFZaRzlXTWtwSVZXNWFWbUV4Y0doYVJXUk9aVzFHUjFSck5WZE5WVzh4VmpKNFYxbFhSWGhWYmxKVVlteEtiMVZ1Y0hOWFJscHlWbXQwYW1KR2NIaFZiWE0xVmtaS2MxZHViRnBXVjFGM1ZsUkdZVkl4WkhWWGJHUlRZa2hDTWxaV1VrZFViVlpIV2toV1ZtSllVbFJVVlZwM1pERmFSMXBFUW1wTlJGWklWakZvYzJKR1NqWmlSbVJWVm0xU1ZGVXhXbmRXYkdSMFpFWm9hVlpXV1RCWFZFSlRWREZaZVZKdVNsaGlia0poVkZjMWIyTnNiRFpTYlhSclVqRmFTRlpITVhOVk1rcHlVbGhvVjJKVVJqTlZNbk40VjBaS1dXRkdaRmhTTVVwUVZtMHdlRTVHVlhoaVJsWlVZa1UxYjFWdGVHRmxiRmw1WlVkR1ZXSkdjSHBaTUdodlZtc3hkVlZ0YUZwaE1YQkxXa1JLUzFKV1pITmhSMmhPVjBWSmVWWnRNWGRUTVUxNFUxaHNWV0V5ZUhCVmJURnZWMVpWZDFacmRGUldiSEF3VkZWb2IxWnRTbGRTYWs1VlZteHdjbGRXV2twa01XUnpWV3h3YVZJeFNqSlhhMUpIV1Zaa1NGWnJaR0ZTTTFKUFZtcEdTMU5XV25GVFZFWldUV3RXTkZVeU5WTldiVXB5VjJ4YVYySkdjRXhXTUZwV1pERmtjMk5IZUZkTlZYQkpWakowWVZsV1VuUlNXR2hvVFRKNFdWWnFUbE5oUm14eFVtMUdWMDFYVWpGV1J6RjNWVEZrU0dGR1pGZGlWRVV3V2tSS1IxSXhaRmxhUm1SWVVqSm9XbFpYZUZOak1XUkhWMWhzYW1WcldsZFVWbFozVmpGc1ZWUnRkRmROYTNCSVZUSjBORlpYUlhoalJXUmhWbFp3TTFWdGVIZFNNa1pIWVVaU1UxWllRWGxXYlhoVFVURnNXRlZZYUdsU2JWSndWVzB4YjJOc1ZYZGFSazVZVm14YU1GUldVazlVYlVwSFYycENWVlpzV25KV01GcExZekpLUlZSc1pFNWliRW95Vm1wQ2ExSnRWbGRXYmxacVVtMVNiMWxVUm5kVVJtUnpXVE5vVTAxVmJEVldSM1JyV1ZaSmVXRkZPVmROUmxwTVZHeGFZV05zWkhOYVJuQlhZbFpKZDFac1dtOWhNVkY0VjI1T2FsSXlhRmRaVjNSMlRVWmFjMWRzWkdwTmExcEhWa2N4YzFSc1duVlJiR1JYVm0xT05GUlZXbUZqYXpGWFlVWmFhRTF0YUZsV2JYQlBZakpHUjFkdVVrNVdWbkJ6Vm0xNFlXVnNXbGhsUm1SWFRXdHdTbFZYYzNoWFIwcElWVlJDV21WcldtaFpla1pyWkZaT2MxRnNaR2xXTW1nelZteGpkMDFXUlhkT1dFNWhVbXhhVTFsc1VuTmpiRkpYVjI1T1RrMVdTbGhaVlZwclZqSktSMk5GWkZaTmJtaDZWbXBLUzFkWFJrVlViR1JUVm01Q1dWZHJWbXRXTVU1SVZXdG9hMUp0VWs5VmExcGhVMnhaZUZWclRtaE5SRlpKVlcxMFlWUnNXblJsUms1YVlURndNMVl3V2xOV01XUnlaRVpXVTJKRmNEVldha28wV1ZkS1IxZHVUbGhpYlhoaFZteGFkMk5zYkZaV1dHaHJVakJhU2xkcldtdFdNbFp5VTFSQ1YySkdTa2haVkVaS1pWWk9jbUpHV21sWFJrcFZWbXBDVjFNeFZrZFhiR2hPVmtaS2NsUlZVa2RUUmxwWVpVZDBWMkpWY0VkVWJGcHZWMnhrU1ZGcmFGZGhhMXA2V1RKNFYyTXhjRWRhUlRWWFltdEdNMVl4V2xkaU1XeFhWMWhzVkdFeWFGZFpWRTV2V1ZaU1dFNVZOV3hTYkhCNFZXMHhSMkZyTVhKT1ZXaFlZVEZWZUZaSE1VdFhSbFpWVTJ4a2FWWkZTVEJXUmxaaFl6RmtSMVZzYkdoU01GcFVWbXBLYjFkR1pGZFZhM1JwVFZad1NGbHJhRXRoUmtwV1RsWnNWbUpVUlRCYVZscHpWbXhhY21SSGFFNVNSVnBaVjFSQ1YySXhXWGROV0VaVFlUSm9XRmxyV2xkT1JscHhVMnQwVTFac1NucFdiWGhyWVZaT1JsTlliRmRpVkVJeldsVmFUbVZXVm5KaFJrNW9UV3hLYjFaWE1UUlpWbVJIWTBab2JGSXdXbGRWYlhoM1UwWlplVTFWWkZoaVJtd3pWR3hvZDFkSFJYbGhSWGhhVmtWYVRGcEZXbGRqTWtaSFZteGtWMDF0YUVaV2JGSkhXVmRGZUZkc1pGTmliRXBVV1d0b1ExZEdiSEpXYmxwclRWWndXVlJWVWtkV1JURllWV3RzVm1KVVZsQlpWM2hMWkVkR1NGSnNaR2hOVm05NlZteFdZVlV5VG5OYVNFNWhVak5DV0ZsWWNGZE9WbHBJWlVkMFQxSnNWalZWTWpWTFZrZEZlbFZzYUZwaVJrcEhWRlZhYzJOV1RuSmFSbVJPVmpGS05sWXlkR3RrTVZWNVUyeHNhRkp0ZUZsV2FrNXZWa1pXZEdNemFGTk5helZIVm0xNFMxWXhTbGRqU0doWFVteHdkbFZVUms5U01YQkpVMnhvYVdKV1NsZFhWbWgzVWpBeFIySkdXbGhpVkd4WVZGWldkMlZzYTNkYVJ6bGFWbXR3UjFWdGNGTldiVVp5VjIxb1YwMVhVa3hWTUdSVFVqRlNjazVXVG1saE1IQnZWbTB4TkdFeVVYaFNXR3hXVjBkb1ZsbFVTbE5pTVZKVlUyeE9hVTFXV25wV2JGSkhWMFpLYzFOc2JHRlNWMUpJV1d0YVlXUkhVa1ZVYkhCWFZteHdlVlpxU2pSWlYwNTBWR3RhWVZKdFVrOVpWM1JoVFd4YWNWTnVjR3hTYkd3MVZrZDBZV0pHU25WUmJrNWFWa1ZhTWxwWGVHRldWa1owWkVaYVRsWllRalZXUjNoaFlqSkdSMU5ZY0doU2VteFdWbTE0ZDFsV2NGaGxSMFpyVWpBMVIxZHJaRzlVYkVwR1YydHdWMVpGV25aWmFrWmhZekZ3Um1GSGFGTmlXR2hvVjFaU1MxVXlVbk5YYmtwWVlraENjbFJXYUVOVFJscElaVWRHVmsxcmNFbGFSRTUzVmpKS1ZWRnFVbFpoYTFwaFdrUkJlRll5UmtobFJrNXBWMGRvZGxac1pEUlpWbVIwVlZob1dHRXlhSEZVVkVwdlYwWlNXR042UmxSaVIzUXpWakl4TUZaWFNsWmpSRUphVmxkb2VsWnFTa3RYVmtaeVZHMUdWMVp1UW1oWGJGcGhWVEpPYzJORlpHaFNNbmhVV1cxMFMwMHhXblJqUlU1b1RXdHNORlp0ZUd0WFIwcHlUbFprV2xaRlNqTlpla1pYWkVkT05sSnNhRk5pUm05M1ZrZDRWazVYUmtkVGJrcHFVa1ZLV0ZacVRtOVdSbHB6VjIxR1UySlZOVXBXTW5ocllWWktkVkZ0T1ZkaVdFSklWbXBLVDJNeVRrWmFSM0JUWWxaS1VGWnRlRzlSTVU1elYyNVNhMUl6UWs5V2JYaEhUa1paZUdGSVRsZFNNRlkwV1RCYVExWXlTblZSYm5CWVZteHdZVnBFU2tkU2JGSnpZVVpPYVZkSGFGbFdiWEJLWlVVeFIxZFlaRTVXYlZKWldXMHhOR0ZHVm5OWGJtUm9VbXh3U1ZwVlpFZGhiVXBXVGxWa1dtRXhjSEpaVldSR1pWZFNSVlZzWkZkTk1FcEpWbTB3ZUZZeFdYaFZibFpWWWxkNFZGbHJhRU5rTVdSWFZXczVVazFYVWxoWGExcHJXVlpLUmxOc1ZsVldNMUpvVlRCYVlXTXlSa2hrUm1oVFRVaENXRlpxU2pSak1WcDBVbTVLV0dKWGFGZFVWbHAzVFRGV2RHVkhkR3RTTVVwSVZtMHhjMVV4WkVaVGEyeFhZbGhDU0ZscVNrWmxSbkJHV2tab2FXRjZWbHBYVjNocllqRmtWMWR1VW14VFIxSmhWbTAxUTFKc1ZsZGhSemxZVW14d2Vsa3dVa05YYkZwWFkwWkNWMUo2Umt4V01HUkhVMFU1VjFwSGJGZFNWbGw2Vm0weGQxSXlUWGhYV0doaFVtMTR
...
@@ -34,13 +30,13 @@ RkhiRmhTYTNCWlZtdGFZVll5VVhoYVJXUm9UVEpTWVZwWGVHRlhWbFowWlVoa2JHSkdWalZhUlZKVFZq
...
@@ -34,13 +30,13 @@ RkhiRmhTYTNCWlZtdGFZVll5VVhoYVJXUm9UVEpTWVZwWGVHRlhWbFowWlVoa2JHSkdWalZhUlZKVFZq
<li
ng-if=
"logged"
><a
href=
"#/home"
>
Początek
</a></li>
<li
ng-if=
"logged"
><a
href=
"#/home"
>
Początek
</a></li>
<li
ng-if=
"logged"
><a
href=
"#/tasks"
>
Zadania
</a></li>
<li
ng-if=
"logged"
><a
href=
"#/tasks"
>
Zadania
</a></li>
<li
ng-if=
"logged"
><a
href=
"#/scores"
>
Wyniki
</a></li>
<li
ng-if=
"logged"
><a
href=
"#/scores"
>
Wyniki
</a></li>
<li
ng-if=
"logged"
ng-click=
"logout()"
><a
href=
"
page
#/"
>
Wyloguj
</a></li>
<li
ng-if=
"logged"
ng-click=
"logout()"
><a
href=
"#/"
>
Wyloguj
</a></li>
</ul>
</ul>
<ul
class=
"side-nav"
id=
"mobile-demo"
>
<ul
class=
"side-nav"
id=
"mobile-demo"
>
<li
ng-if=
"logged"
><a
href=
"#/home"
>
Początek
</a></li>
<li
ng-if=
"logged"
><a
href=
"#/home"
>
Początek
</a></li>
<li
ng-if=
"logged"
><a
href=
"#/tasks"
>
Zadania
</a></li>
<li
ng-if=
"logged"
><a
href=
"#/tasks"
>
Zadania
</a></li>
<li
ng-if=
"logged"
><a
href=
"#/scores"
>
Wyniki
</a></li>
<li
ng-if=
"logged"
><a
href=
"#/scores"
>
Wyniki
</a></li>
<li
ng-if=
"logged"
ng-click=
"logout()"
><a
href=
"
page
#/"
>
Wyloguj
</a></li>
<li
ng-if=
"logged"
ng-click=
"logout()"
><a
href=
"#/"
>
Wyloguj
</a></li>
</ul>
</ul>
</div>
</div>
</nav>
</nav>
...
@@ -59,8 +55,7 @@ RkhiRmhTYTNCWlZtdGFZVll5VVhoYVJXUm9UVEpTWVZwWGVHRlhWbFowWlVoa2JHSkdWalZhUlZKVFZq
...
@@ -59,8 +55,7 @@ RkhiRmhTYTNCWlZtdGFZVll5VVhoYVJXUm9UVEpTWVZwWGVHRlhWbFowWlVoa2JHSkdWalZhUlZKVFZq
<script
type=
"text/javascript"
src=
"/webjars/angular-ui-router/angular-ui-router.min.js"
></script>
<script
type=
"text/javascript"
src=
"/webjars/angular-ui-router/angular-ui-router.min.js"
></script>
<script
type=
"text/javascript"
src=
"/webjars/angular-cookies/angular-cookies.min.js"
></script>
<script
type=
"text/javascript"
src=
"/webjars/angular-cookies/angular-cookies.min.js"
></script>
<script
type=
"text/javascript"
src=
"/statics/js/app.min.js"
></script>
<script
type=
"text/javascript"
src=
"/statics/js/app.min.js"
></script>
<script
type=
"text/javascript"
src=
""
></script>
</html>
</html>
service/src/main/resources/assets/statics/css/main.css
View file @
9d157e38
body
{
body
{
background
:
url('/statics/img/bkg.jpg')
;
background
:
url('/statics/img/bkg.jpg')
;
color
:
white
;
color
:
white
;
background-position
:
bottom
right
;
height
:
100vh
;
}
#background
{
position
:
absolute
;
/*top: 69%;*/
bottom
:
0
;
/*left: 81%;*/
right
:
252px
;
height
:
286px
;
width
:
134px
;
z-index
:
10
;
background-repeat
:
no-repeat
;
}
}
nav
{
nav
{
...
...
service/src/main/resources/assets/statics/img/bkg.jpg
View replaced file @
66566964
View file @
9d157e38
517 KB
|
W:
|
H:
414 KB
|
W:
|
H:
2-up
Swipe
Onion skin
service/src/main/resources/assets/statics/img/door.png
0 → 100644
View file @
9d157e38
12 KB
service/src/main/resources/assets/statics/js/controllers/navigationController.js
View file @
9d157e38
...
@@ -9,8 +9,8 @@
...
@@ -9,8 +9,8 @@
$scope
.
logout
=
function
(){
$scope
.
logout
=
function
(){
NavbarService
.
setGuest
();
NavbarService
.
setGuest
();
AuthenticationService
.
logout
(
function
(
data
){
AuthenticationService
.
logout
(
function
(
data
){
$location
.
path
(
''
);
$location
.
path
(
'
/login
'
);
});
}
.
bind
(
this
)
);
};
};
$scope
.
$watch
(
function
(){
$scope
.
$watch
(
function
(){
...
...
service/src/main/resources/assets/statics/js/controllers/scoreboardController.js
View file @
9d157e38
...
@@ -21,7 +21,7 @@
...
@@ -21,7 +21,7 @@
function
viewGraph
(){
function
viewGraph
(){
$
(
'.column'
).
css
(
'height'
,
'0'
);
$
(
'.column'
).
css
(
'height'
,
'0'
);
console
.
log
(
$scope
.
teamsScores
);
//
console.log($scope.teamsScores);
setTimeout
(
function
(){
setTimeout
(
function
(){
$
(
'.column'
).
each
(
function
(){
$
(
'.column'
).
each
(
function
(){
$
(
this
).
animate
({
width
:
150
*
$
(
this
).
attr
(
'data-score'
)},
1500
);
$
(
this
).
animate
({
width
:
150
*
$
(
this
).
attr
(
'data-score'
)},
1500
);
...
@@ -32,9 +32,9 @@
...
@@ -32,9 +32,9 @@
APIProvider
.
getScores
(
function
(
data
){
APIProvider
.
getScores
(
function
(
data
){
console
.
log
(
'Data from server'
,
data
);
//
console.log('Data from server', data);
$scope
.
teamsScores
=
calculatePerTeam
(
data
);
$scope
.
teamsScores
=
calculatePerTeam
(
data
);
console
.
log
(
'Teams scores'
,
$scope
.
teamsScores
);
//
console.log('Teams scores', $scope.teamsScores);
viewGraph
();
viewGraph
();
});
});
...
...
service/src/main/resources/assets/statics/js/controllers/taskController.js
View file @
9d157e38
...
@@ -3,9 +3,9 @@
...
@@ -3,9 +3,9 @@
$scope
.
submitUnknown
=
false
;
$scope
.
submitUnknown
=
false
;
$scope
.
apiAddress
=
'http://'
+
AppSettings
.
apiAddress
;
$scope
.
apiAddress
=
'http://'
+
AppSettings
.
apiAddress
;
$scope
.
selectedTaskId
=
$stateParams
.
taskLevel
;
$scope
.
selectedTaskId
=
$stateParams
.
taskLevel
;
console
.
log
(
'SELECTED TASK ID'
,
$scope
.
selectedTaskId
);
//
console.log('SELECTED TASK ID', $scope.selectedTaskId);
APIProvider
.
getTaskById
(
$scope
.
selectedTaskId
,
function
(
data
){
APIProvider
.
getTaskById
(
$scope
.
selectedTaskId
,
function
(
data
){
console
.
log
(
data
);
//
console.log(data);
$scope
.
task
=
data
;
$scope
.
task
=
data
;
});
});
$scope
.
submitFlag
=
function
(){
$scope
.
submitFlag
=
function
(){
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
Materialize
.
toast
(
'Poprawna flaga! :)'
,
5000
,
'toast-success'
);
Materialize
.
toast
(
'Poprawna flaga! :)'
,
5000
,
'toast-success'
);
$scope
.
submitUnknown
=
false
;
$scope
.
submitUnknown
=
false
;
}).
error
(
function
(){
}).
error
(
function
(){
console
.
log
(
"Flaga zla!"
);
//
console.log("Flaga zla!");
Materialize
.
toast
(
'Błędna flaga! :('
,
5000
,
'toast-error'
);
Materialize
.
toast
(
'Błędna flaga! :('
,
5000
,
'toast-error'
);
$scope
.
submitUnknown
=
false
;
$scope
.
submitUnknown
=
false
;
});
});
...
...
service/src/main/resources/assets/statics/js/controllers/tasksController.js
View file @
9d157e38
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
angular
.
module
(
'ctfApp'
).
controller
(
'TasksController'
,
[
'$scope'
,
'$http'
,
'APIProvider'
,
'AppSettings'
,
function
(
$scope
,
$http
,
APIProvider
,
AppSettings
)
{
angular
.
module
(
'ctfApp'
).
controller
(
'TasksController'
,
[
'$scope'
,
'$http'
,
'APIProvider'
,
'AppSettings'
,
function
(
$scope
,
$http
,
APIProvider
,
AppSettings
)
{
$scope
.
apiAddress
=
AppSettings
.
apiAddress
;
$scope
.
apiAddress
=
AppSettings
.
apiAddress
;
APIProvider
.
getTasks
(
function
(
data
){
APIProvider
.
getTasks
(
function
(
data
){
console
.
log
(
data
);
//
console.log(data);
APIProvider
.
getMyCompletedLevelsList
(
function
(
completed
){
APIProvider
.
getMyCompletedLevelsList
(
function
(
completed
){
$
.
each
(
data
,
function
(
key
,
task
){
$
.
each
(
data
,
function
(
key
,
task
){
if
(
completed
.
indexOf
(
task
.
level
)
!==
-
1
){
if
(
completed
.
indexOf
(
task
.
level
)
!==
-
1
){
...
...
service/src/main/resources/assets/statics/js/main.js
View file @
9d157e38
This source diff could not be displayed because it is too large. You can
view the blob
instead.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment