From 5856b27dcd4dc8a999ec01f1daa57ef1fc4a6506 Mon Sep 17 00:00:00 2001 From: ilia Date: Fri, 18 Mar 2022 18:13:36 +0300 Subject: [PATCH] add api --- .gitignore | 4 + .idea/.gitignore | 3 + .idea/hackbackend.iml | 15 ++ .idea/inspectionProfiles/Project_Default.xml | 170 ++++++++++++++++++ .../inspectionProfiles/profiles_settings.xml | 6 + .idea/misc.xml | 7 + .idea/modules.xml | 8 + api/__init__.py | 0 api/__pycache__/__init__.cpython-39.pyc | Bin 0 -> 151 bytes api/__pycache__/admin.cpython-39.pyc | Bin 0 -> 192 bytes api/__pycache__/apps.cpython-39.pyc | Bin 0 -> 422 bytes api/__pycache__/models.cpython-39.pyc | Bin 0 -> 189 bytes api/__pycache__/serializers.cpython-39.pyc | Bin 0 -> 935 bytes api/__pycache__/urls.cpython-39.pyc | Bin 0 -> 456 bytes api/__pycache__/views.cpython-39.pyc | Bin 0 -> 1248 bytes api/admin.py | 3 + api/apps.py | 6 + api/migrations/__init__.py | 0 .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 162 bytes api/models.py | 3 + api/serializers.py | 14 ++ api/tests.py | 3 + api/urls.py | 10 ++ api/views.py | 23 +++ chat_models/__init__.py | 0 .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 159 bytes chat_models/__pycache__/admin.cpython-39.pyc | Bin 0 -> 200 bytes chat_models/__pycache__/apps.cpython-39.pyc | Bin 0 -> 445 bytes chat_models/__pycache__/models.cpython-39.pyc | Bin 0 -> 689 bytes chat_models/admin.py | 3 + chat_models/apps.py | 6 + chat_models/migrations/0001_initial.py | 33 ++++ chat_models/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-39.pyc | Bin 0 -> 941 bytes .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 170 bytes chat_models/models.py | 13 ++ chat_models/tests.py | 3 + chat_models/views.py | 3 + hackbackend/__init__.py | 0 .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 159 bytes .../__pycache__/settings.cpython-39.pyc | Bin 0 -> 2336 bytes hackbackend/__pycache__/urls.cpython-39.pyc | Bin 0 -> 988 bytes hackbackend/__pycache__/wsgi.cpython-39.pyc | Bin 0 -> 570 bytes hackbackend/asgi.py | 16 ++ hackbackend/settings.py | 126 +++++++++++++ hackbackend/urls.py | 22 +++ hackbackend/wsgi.py | 16 ++ manage.py | 22 +++ requirements.txt | 6 + 49 files changed, 544 insertions(+) create mode 100644 .gitignore create mode 100644 .idea/.gitignore create mode 100644 .idea/hackbackend.iml create mode 100644 .idea/inspectionProfiles/Project_Default.xml create mode 100644 .idea/inspectionProfiles/profiles_settings.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 api/__init__.py create mode 100644 api/__pycache__/__init__.cpython-39.pyc create mode 100644 api/__pycache__/admin.cpython-39.pyc create mode 100644 api/__pycache__/apps.cpython-39.pyc create mode 100644 api/__pycache__/models.cpython-39.pyc create mode 100644 api/__pycache__/serializers.cpython-39.pyc create mode 100644 api/__pycache__/urls.cpython-39.pyc create mode 100644 api/__pycache__/views.cpython-39.pyc create mode 100644 api/admin.py create mode 100644 api/apps.py create mode 100644 api/migrations/__init__.py create mode 100644 api/migrations/__pycache__/__init__.cpython-39.pyc create mode 100644 api/models.py create mode 100644 api/serializers.py create mode 100644 api/tests.py create mode 100644 api/urls.py create mode 100644 api/views.py create mode 100644 chat_models/__init__.py create mode 100644 chat_models/__pycache__/__init__.cpython-39.pyc create mode 100644 chat_models/__pycache__/admin.cpython-39.pyc create mode 100644 chat_models/__pycache__/apps.cpython-39.pyc create mode 100644 chat_models/__pycache__/models.cpython-39.pyc create mode 100644 chat_models/admin.py create mode 100644 chat_models/apps.py create mode 100644 chat_models/migrations/0001_initial.py create mode 100644 chat_models/migrations/__init__.py create mode 100644 chat_models/migrations/__pycache__/0001_initial.cpython-39.pyc create mode 100644 chat_models/migrations/__pycache__/__init__.cpython-39.pyc create mode 100644 chat_models/models.py create mode 100644 chat_models/tests.py create mode 100644 chat_models/views.py create mode 100644 hackbackend/__init__.py create mode 100644 hackbackend/__pycache__/__init__.cpython-39.pyc create mode 100644 hackbackend/__pycache__/settings.cpython-39.pyc create mode 100644 hackbackend/__pycache__/urls.cpython-39.pyc create mode 100644 hackbackend/__pycache__/wsgi.cpython-39.pyc create mode 100644 hackbackend/asgi.py create mode 100644 hackbackend/settings.py create mode 100644 hackbackend/urls.py create mode 100644 hackbackend/wsgi.py create mode 100644 manage.py create mode 100644 requirements.txt diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6324398 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +hack +db.sqlite3 +.idea +.code \ No newline at end of file diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/.idea/hackbackend.iml b/.idea/hackbackend.iml new file mode 100644 index 0000000..4f2c9af --- /dev/null +++ b/.idea/hackbackend.iml @@ -0,0 +1,15 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..19b5037 --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,170 @@ + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..f6104af --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,7 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..78a355a --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/api/__init__.py b/api/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/api/__pycache__/__init__.cpython-39.pyc b/api/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..472a3a655e07915777d398b927cb1391976702ae GIT binary patch literal 151 zcmYe~<>g`kf>kq2l0fuh5P=LBfgA@QE@lA|DGb33nv8xc8Hzx{2;!HGvsFxJacWU< zjAu?}VvI|Ea%paAUP*CGQf6LEMq+X{m`DOLQu9(`5(_e8;^Q;(GE3s)^$IF)aoFVM Prg`kf>kq2lAM6_V-N=!FabFZKwK;UBvKes7;_kM8KW2(8B&;n88n$+0!0}# z8E>&BrsQVk`Drpm@ug%X=B4NBCFkdr6lEqAfecv5P{a(Rz{D?0XRDad;?$zz7|)!{ z#2ABo<`GfX&t`sJz8tlbfGXnv-hB2sG_8 H5HkP(bPF%j literal 0 HcmV?d00001 diff --git a/api/__pycache__/apps.cpython-39.pyc b/api/__pycache__/apps.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3b1d73f426cb97eb03362f386642f8f38191b4a4 GIT binary patch literal 422 zcmYjNJ5Izf5Vhm16!y~~S|r*usVERaXqQDGnr#qG6v=Wj-o@a2h?4?ZH~=MAfFq@) z;tEvEBrCBa&GUTT^Vp+ivoS;a`Z!MC@%*M_*L+Oo=5O|AEax=(Z4&gx+ zn=*nl%1hAJMHgnXXq)oNXbYWCm05+OE|9WNxt6jUONqqRQaqLNsa1B{*$2H=t!<=2 zxm@>ppL(CHrY-dFd$K%D?wqb&a$}83F3YUVb=hJ8; literal 0 HcmV?d00001 diff --git a/api/__pycache__/models.cpython-39.pyc b/api/__pycache__/models.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ccec8f268f6dad8fe6a68b3b02c0c60381e4c560 GIT binary patch literal 189 zcmYe~<>g`kf>kq2l5BwVV-N=!FabFZKwK;UBvKes7;_kM8KW2(8B&;n88n$+0!0}# z8E>)W=BK3Q6#Hp1-QrBiO3X{o*Gow%0%=~!P{abHz{D>rXRDad;?$zz7|)!{#2ABo<`GK+M%EsJz8t17w%xq}nk8jr$D53;_0( BFBbp+ literal 0 HcmV?d00001 diff --git a/api/__pycache__/serializers.cpython-39.pyc b/api/__pycache__/serializers.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9f6149323ca1f29dba6e4f224c4f01a062eaee7b GIT binary patch literal 935 zcmbtS%}yIJ5cc2xKobZp>VY@dOHMsi2#~0RsFYj~7i%TUi4CmqCSWH*zliY9!A>sxSJyWkRL76Snc8AGw zDGZf~VZgy}Km5%x9NC4AnNr$0rN%`XbERgwwo1iyrRup^I<$LAT`#q3Z#gVP3n?;n0HPlNTLJa&~Xzs#r0+RhfCoK&;&LQgLnn1Eqtrqowe36CEI z3&X2#QD9mr@C9sBP6hQFV2tmD&oD}ku!exg&yicJk7o%0?!W+Y+W0Gq{k!&CkL~+U z`9H4EG#&6*E2#gnI;`H~9Q$_&PYQSHL;>*pg;IX=tse$(foy+-L4RCia>v`SP-h;R ze>3-&!%j;)Y8c;7Vf=6;tP8{T(@cVIvP7*ta=n&i%y-*S+QS(QSZ$9E_#k}%9dx{s literal 0 HcmV?d00001 diff --git a/api/__pycache__/urls.cpython-39.pyc b/api/__pycache__/urls.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3b413c338a18c656c6aafa80796dce274921be0e GIT binary patch literal 456 zcmY*Vy-ve05VjL1X=#eYfCP__r7R2xRTWaZAOQoYOJoVT^{EMslgM_9+Lh-(f{|D9 z%G6gt4A?0uzY z_3Qay9sl|ob(geFhd;4$R`nLLP|~wAnP8d2vy#Me88`?XxILMOsYe$z9h+`{p+T1F z1Iez-aPW08yrg3VQqk)oXLM9e7XnJH=p-*`#-{TICYC_SDXVkp8u#jzY4t_L7X=L5 PVpMD)#wR4k&H4TTc4vWT literal 0 HcmV?d00001 diff --git a/api/__pycache__/views.cpython-39.pyc b/api/__pycache__/views.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..08740a07f9423e81ac99915d7680589a18e18c6e GIT binary patch literal 1248 zcmbtUO>fgc5Z(1h?0k}x76jrCf87X^%P0#g;pc^q7!KV~prYHANU$51Eu+~Gy!4lZ=6I#7ww0^KB` zErK=yIjTDZF2Oy5Eg`kf>kq2l0fuh5P=LBfgA@QE@lA|DGb33nv8xc8Hzx{2;!H!vsFxJacWU< zjAu?}VvI|Ea%paAUP*CGQf6LEMq+X{m`DOLQu9(`5(_e8ax>G55=%1k^NM5Q<1_Oz aOXB183My}L*yQG?l;)(`fh_n8#0&sI&M7JY literal 0 HcmV?d00001 diff --git a/api/models.py b/api/models.py new file mode 100644 index 0000000..71a8362 --- /dev/null +++ b/api/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/api/serializers.py b/api/serializers.py new file mode 100644 index 0000000..a6d0943 --- /dev/null +++ b/api/serializers.py @@ -0,0 +1,14 @@ +from rest_framework.serializers import ModelSerializer +from chat_models.models import Chat, Message + + +class ChatSerializer(ModelSerializer): + class Meta: + model = Chat + fields = "__all__" + + +class MessageSerializer(ModelSerializer): + class Meta: + model = Message + fields = "__all__" diff --git a/api/tests.py b/api/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/api/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/api/urls.py b/api/urls.py new file mode 100644 index 0000000..3e0f62f --- /dev/null +++ b/api/urls.py @@ -0,0 +1,10 @@ +from django.urls import path +from .views import ListCreateMessage, ListCreateChat, RetrieveUpdateMessage, RetrieveUpdateDestroyChat + + +urlpatterns = [ + path("chat", ListCreateChat.as_view()), + path("message", ListCreateMessage.as_view()), + path("chat/", RetrieveUpdateDestroyChat.as_view()), + path("message/", RetrieveUpdateMessage.as_view()) +] diff --git a/api/views.py b/api/views.py new file mode 100644 index 0000000..f6a877a --- /dev/null +++ b/api/views.py @@ -0,0 +1,23 @@ +from .serializers import ChatSerializer, MessageSerializer +from chat_models.models import Chat, Message +from rest_framework.generics import ListCreateAPIView, RetrieveUpdateAPIView, RetrieveUpdateDestroyAPIView + + +class ListCreateMessage(ListCreateAPIView): + serializer_class = MessageSerializer + queryset = Message.objects.all() + + +class ListCreateChat(ListCreateAPIView): + serializer_class = ChatSerializer + queryset = Chat.objects.all() + + +class RetrieveUpdateMessage(RetrieveUpdateAPIView): + queryset = Message.objects.all() + serializer_class = MessageSerializer + + +class RetrieveUpdateDestroyChat(RetrieveUpdateAPIView): + queryset = Chat.objects.all() + serializer_class = ChatSerializer diff --git a/chat_models/__init__.py b/chat_models/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/chat_models/__pycache__/__init__.cpython-39.pyc b/chat_models/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..eb6258e8243f944c514e9764f474bf5848daa7fb GIT binary patch literal 159 zcmYe~<>g`kf_*bgl0fuh5P=LBfgA@QE@lA|DGb33nv8xc8Hzx{2;!HEvsFxJacWU< zjAu?}VvI|Ea%paAUP*CGQf6LEMq+X{m`DOLQu9(`k~0!Z;&by;Qge!9;^Q;(GE3s) W^$IF)ao7L_OLJ1~K&F2NVg>-k{wM1I literal 0 HcmV?d00001 diff --git a/chat_models/__pycache__/admin.cpython-39.pyc b/chat_models/__pycache__/admin.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..7e126761f4e3d19930021f8025dfff3a445b2001 GIT binary patch literal 200 zcmYe~<>g`kf_*bglAM6_V-N=!FabFZKwK;UBvKes7;_kM8KW2(8B&;n88n$+0!0}# z8E>&BrsQVk`Drpm@ug%X=B4NBCFkdr6lEqAfecv5P{a(Rz{D>{XRDad;?$zz7|)!{ z#2ABxfX+#OLOxq~;XIfbGyLsJz8t0~9IE NNws4Hn)(@t82~I#GdKVM literal 0 HcmV?d00001 diff --git a/chat_models/__pycache__/apps.cpython-39.pyc b/chat_models/__pycache__/apps.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d455d84ed33383f56bac24d5f6082dea9a285539 GIT binary patch literal 445 zcmYjNy-ve05Vqq~D*cfVVnt%jl8Ff+)KUaupbKJ&ELl#@NdwLgaWcRP55dOFOYk6G znRo>z&PgSDl0V;lcmB?Iaz39Bw6FJ*_yg~67wnpk!2*vtMgRg-lY&N+l4}AUur~rs z(N`9E;NOv8^n+C-pmuLr*Q=^b^DJ@9u2BpYc+4S!A`u0GuW7`RQ zzVi((>)M3%bHh-}tTpS>ocx)#{K|C CvT?cq literal 0 HcmV?d00001 diff --git a/chat_models/__pycache__/models.cpython-39.pyc b/chat_models/__pycache__/models.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0a5465f1301ccc42ef708b368ab91811eafe1ec3 GIT binary patch literal 689 zcmZva&2H2%5XbG<`Pl95g{L4A>ZvD$P|KDggt|g%xmb}bXJ@pV-Fy@~E73Dt`vRQW z3lgv7D<@uo6XT>Rm5L?*R;vz-N#@Zx%0$PY$gs-q)2W zPP^5rYL$iUYOGq-F@fjbyCsZE5zo3mz zsSI?8$Tr1{bOQV)Qd5YCjPU9C*aoqgbgiZmu*YS7U}MTVKT#LJ#|sKo61 zO=tb|tg~3H+YdMv?9;``#p2}jt(T#ze@MpFK}a(r38)?#%lP0e^Vm;dYua^p2<1pW dJ`Y%izK1>kOX#y#;|0E^-;%k2VY literal 0 HcmV?d00001 diff --git a/chat_models/admin.py b/chat_models/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/chat_models/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/chat_models/apps.py b/chat_models/apps.py new file mode 100644 index 0000000..98c427b --- /dev/null +++ b/chat_models/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class ChatModelsConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'chat_models' diff --git a/chat_models/migrations/0001_initial.py b/chat_models/migrations/0001_initial.py new file mode 100644 index 0000000..4a40084 --- /dev/null +++ b/chat_models/migrations/0001_initial.py @@ -0,0 +1,33 @@ +# Generated by Django 4.0.3 on 2022-03-18 15:07 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Chat', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.TextField()), + ('start_message', models.TextField(blank=True)), + ('api_key', models.TextField()), + ], + ), + migrations.CreateModel( + name='Message', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('text', models.TextField()), + ('author', models.TextField()), + ('chat', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='chat_models.chat')), + ], + ), + ] diff --git a/chat_models/migrations/__init__.py b/chat_models/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/chat_models/migrations/__pycache__/0001_initial.cpython-39.pyc b/chat_models/migrations/__pycache__/0001_initial.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..59963ba336295a70541b5781e40cf2b722d78001 GIT binary patch literal 941 zcmZuv&2AGh5VjpBo84^M@N<9z5*LtiiHgJt0cuGps!)4rxvW-NIq`Js?fwLNgJ`dC z%{!C}60hVdCtiR9LWuEhQ+mLbM>Av3_?vG=42J>1_2Ba9>;)&}yEASs^pR~mW`aTz zNpn)rh!!kj)Y&ZWMEnhr9mziv$$@6wPo1bM*%29ce_#w5GaD2t)uL8aX>6~kB;@9B z?(S}`0UFzQ%vTgZA}UG5B#k;Li8yq#o@BBEUe=csHh}^-H;Nt!-ki00vo@dD$@AkRy3(#ZFk8D`nB9yp0v!vHroj zv}4Psr=qq@$vw;VcgNg@Vp&(oT!W}V+QCArLg@4449=}@Kr4}}3$Wn_(6h=wQi=jB zZ{*O_Lf1(F#)uTg)OKgND9@}X7RtqsnGTUA+dEN^OJlu*_NC=De5`E`KR&Ir<#R-I zF>*3#d7n5PTjEz`f_;D*EUT--@yPa*20)V7AaReEIiMaU$@`_q9VoOsRjL|c+fc#+ zN(tp$fzixC8BCix4_te7$9ck6D&0W__8dm*A0x6>4fZMxDlOk45j~lSGOa9=Guv+v z;h0!&x^pz$*?nz;Y5`ZH^Nr|7n6?qWj;7DzcgUfM_j4uU-Dg`kf_*bgl0fuh5P=LBfgA@QE@lA|DGb33nv8xc8Hzx{2;!H&vsFxJacWU< zjAu?}VvI|Ea%paAUP*CGQf6LEMq+X{m`DOLQu9(`k~0!Z;&by;Qge!9ax>G55=%1k h^NM5Q<1_OzOXB183My}L*Z}2Ab5iX<7JUX{1^~j*ERO&H literal 0 HcmV?d00001 diff --git a/chat_models/models.py b/chat_models/models.py new file mode 100644 index 0000000..2788974 --- /dev/null +++ b/chat_models/models.py @@ -0,0 +1,13 @@ +from django.db import models + + +class Chat(models.Model): + name = models.TextField() + start_message = models.TextField(blank=True) + api_key = models.TextField() + + +class Message(models.Model): + text = models.TextField() + author = models.TextField() + chat = models.ForeignKey(Chat, on_delete=models.CASCADE) diff --git a/chat_models/tests.py b/chat_models/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/chat_models/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/chat_models/views.py b/chat_models/views.py new file mode 100644 index 0000000..91ea44a --- /dev/null +++ b/chat_models/views.py @@ -0,0 +1,3 @@ +from django.shortcuts import render + +# Create your views here. diff --git a/hackbackend/__init__.py b/hackbackend/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/hackbackend/__pycache__/__init__.cpython-39.pyc b/hackbackend/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..32a82175aa8d645977a4569e464ba8ad49767dbb GIT binary patch literal 159 zcmYe~<>g`kg1OU8l0fuh5P=LBfgA@QE@lA|DGb33nv8xc8Hzx{2;!HEvsFxJacWU< zjAu?}VvI|Ea%paAUP*CGQf6LEMq+X{m`DOLQu9(!*zxh1d6^~g@p=W7w>WHa^HWN5 MQtd#de+FU(0Ic#Sr2qf` literal 0 HcmV?d00001 diff --git a/hackbackend/__pycache__/settings.cpython-39.pyc b/hackbackend/__pycache__/settings.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..84971fc2091b86e68ecbf7b49ce7e8bc93f0f3ca GIT binary patch literal 2336 zcmb7FOK;mo5GG~nVa0MBJFg}w%Aze2B{h{cMiK-~8d{`nA$q~2;*>B-P~4TYHecZ` zW1H9hjU3XP+P}nWPyGWu6h+e^CEKbTpspw`m$Nh9%zisFv?`S{2fthI*7~n19QRxL zGW{#S%X7HtFEAj^;1G{;4)5lS9M9n#p8JV^C;ZIq<@fSN0nHgjBp4->AM(chkVA#{ zyitZ{5uO)N$yh+CR6wch!h4?ZXyL5@x)oG07SSTQhzn@xCWkJ)%@N+Xh?da`=q#hl z*?1)zuM&PJ7)$7yaS2^Fmcic&+?UZO#uaqKxQcFST=kZ9pXa!;vS)ciU!<5Z;ti=d z@I!HA+53ICv4_MU^!KpMq;h!^dpNWhMq>X+yp1xuRSUVq6DhMoHqpE-Mih|53GkY9 zUwQ!68-VNjAr^@TE?kQd-xJ}_Mg*J^2Y(GQ;PQyEfIg|!kZ)6I?Bh5B+jnc&s{vq* z`2n$M?KtS#7@m!=IEWlabO>dlKRDf#1sj1?5{hpuC&Kjq_zLl0%F*v|#9Wn6gs#O# z@%n@X;!$izAzpoW=ZkL-e>{5qG;rdFe)RcM^YOtx{)&avym$BU{V(4{et5Wc)E_-Z zqr*psK|ItG{%&fY~N!c=}Q@}@ye_;0;e};gsBPk7&{6ujjzotQcNi@eRjcx z1#1WvH)bsuoQ<8H2sIW%Oqn?dEf*j7;l6Rf9$CzEeS{rq%vk}c7UR{4y-N^s@PQR# zDItRMikv!hIk2oJ2tVJF#-`llSy*A8L$L0ksmWM0iB1+~4| zXse0PmRo8#4{adcnh8G3pTMFNiUpa_Y6!~QNj-`~nWcptF{}}nI96H~FUJ~w7(Y8N zQj2)Rjoc>ohHP|d|NVLG$K}$U#CQtu{Ja3|$i*SC&m!cpw;DlL=;`&i2pP%4KW=c2d^V`nIZ@FVr8ByrQo6Hj|3nY<6~3#oX#>x|S?9+L{g`5I~A(Nx9Wf zl%~2PZ>!0|cBiA8z3pbb)80ttb+y%P%DSp0OFPT;S*$-E-#a_Uw~uFE}r z%k0XUw$s^G%$IVr0gD|-!b($aZ}#L()vR|E6#yG8)igSgGNm2_-1z2kJ1L|y-GIn- zK(43WlVwHSkb6zt1mupn(NLSpuUz;Uu#gRZD)lG3X#&yRhC{4f#kb)IJVtl>#M@1? zJR2q*;9v9O@1qnPC8h7+03ruJgO5H(w_p$!7Uq_U!kmyRsvLNJmxN@Zrxxa)D c!je!--wS`kydr$a2~+nU!itc~u7Z&N2V$Kh?*IS* literal 0 HcmV?d00001 diff --git a/hackbackend/__pycache__/urls.cpython-39.pyc b/hackbackend/__pycache__/urls.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..61c3e49de071ecfe3a42260fe29b69550086caee GIT binary patch literal 988 zcma)5!H&}~5OvaYTe4l?6MSnUl?2d=Lj`D2VMQgx0oY4bsq4mW>k`|M?Eu?rKZG;C zlq)Ab0S<_NJY%X9Lw@@@iG@xM- zh;SMPE^ZYq5lth}p0)$TA{w!9bF%5|LWtX}O;2{gE?kAvF73QWNtf6Vp*6`rE?_cA z@zuLGc&y}-uPRL}S2B)2tQo$pbWsv(nU>}n7u;B^Rb`oR7Yw!vf8y-3N%5u9SSZaf zmrJFEhrngQh+)_;Hi|KfwY8-gWf@huN$G~jl`6H`u-vA(5*d@(dHOK3s^q!JTyh5G zO%}iULIhx$QG8j++_Br2^`MVZ{DM+UB<7-2+Kw<@Y9+9^nUk_?4v+F5H~C&N2sly* zS3&H0(C-f$U27%S5KAK1v%ZV_NjxryF%K3Xj2@x>kA<>prX7*g8+D-b8n8V3Te5Na zDKT>gGD!YmG?95xQ7%_tg0JVKEGTrL|Vc-dGv+S|2%j?@``Alc*& zy(zb5yC~Eu0|O70`tHEv_LC(30pAxTLER=)aG8X4B9{ zRc(*_k~wnX7kXkg0V#|$&mLPd?|H_2Z!aWhzkeM~{se^F*TJSWF*rfDhX{gyYO<@>$A-0sm$5bRBXnx?-O*; zf|Zq-L*}9|>^lZON@Kw?Hv_g#;!5#}0>&-ltT1As;6T9=6kGC2uC6pMK(O(cm!*;! zchczb80&pTrovRfq(;(Wb-|3r;?lCIRPc^jfN$7x2hJV}r@^R2RONXcD=lwx%n0`C! zUVJ^h+280uWWhP9bK7b8R+^%WH1*V2|7I;F%J2