# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: eolymp/judge/judge.proto
"""Generated protocol buffer code."""
from google.protobuf.internal import builder as _builder
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
from google.protobuf import symbol_database as _symbol_database
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from eolymp.annotations import http_pb2 as eolymp_dot_annotations_dot_http__pb2
from eolymp.annotations import ratelimit_pb2 as eolymp_dot_annotations_dot_ratelimit__pb2
from eolymp.annotations import scope_pb2 as eolymp_dot_annotations_dot_scope__pb2
from eolymp.judge import activity_pb2 as eolymp_dot_judge_dot_activity__pb2
from eolymp.judge import announcement_pb2 as eolymp_dot_judge_dot_announcement__pb2
from eolymp.judge import contest_pb2 as eolymp_dot_judge_dot_contest__pb2
from eolymp.judge import participant_pb2 as eolymp_dot_judge_dot_participant__pb2
from eolymp.judge import problem_pb2 as eolymp_dot_judge_dot_problem__pb2
from eolymp.judge import result_pb2 as eolymp_dot_judge_dot_result__pb2
from eolymp.judge import score_pb2 as eolymp_dot_judge_dot_score__pb2
from eolymp.judge import submission_pb2 as eolymp_dot_judge_dot_submission__pb2
from eolymp.judge import template_pb2 as eolymp_dot_judge_dot_template__pb2
from eolymp.wellknown import direction_pb2 as eolymp_dot_wellknown_dot_direction__pb2
from eolymp.wellknown import expression_pb2 as eolymp_dot_wellknown_dot_expression__pb2
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2


DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18\x65olymp/judge/judge.proto\x12\x0c\x65olymp.judge\x1a\x1d\x65olymp/annotations/http.proto\x1a\"eolymp/annotations/ratelimit.proto\x1a\x1e\x65olymp/annotations/scope.proto\x1a\x1b\x65olymp/judge/activity.proto\x1a\x1f\x65olymp/judge/announcement.proto\x1a\x1a\x65olymp/judge/contest.proto\x1a\x1e\x65olymp/judge/participant.proto\x1a\x1a\x65olymp/judge/problem.proto\x1a\x19\x65olymp/judge/result.proto\x1a\x18\x65olymp/judge/score.proto\x1a\x1d\x65olymp/judge/submission.proto\x1a\x1b\x65olymp/judge/template.proto\x1a eolymp/wellknown/direction.proto\x1a!eolymp/wellknown/expression.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"<\n\x12\x43reateContestInput\x12&\n\x07\x63ontest\x18\x01 \x01(\x0b\x32\x15.eolymp.judge.Contest\")\n\x13\x43reateContestOutput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"(\n\x12\x44\x65leteContestInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"\x15\n\x13\x44\x65leteContestOutput\"\x88\x03\n\x12UpdateContestInput\x12\x35\n\x05patch\x18\x03 \x03(\x0e\x32&.eolymp.judge.UpdateContestInput.Patch\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12&\n\x07\x63ontest\x18\x02 \x01(\x0b\x32\x15.eolymp.judge.Contest\"\xfe\x01\n\x05Patch\x12\x07\n\x03\x41LL\x10\x00\x12\x08\n\x04NAME\x10\x02\x12\r\n\tSTARTS_AT\x10\x03\x12\x0b\n\x07\x45NDS_AT\x10\x04\x12\x0c\n\x08\x44URATION\x10\x05\x12\x0e\n\nVISIBILITY\x10\x06\x12\x15\n\x11JOIN_UNOFFICIALLY\x10\x07\x12\x16\n\x12PARTICIPATION_MODE\x10\x08\x12\x12\n\x0e\x46\x45\x41TURED_UNTIL\x10\t\x12\n\n\x06\x46ORMAT\x10\n\x12\n\n\x06\x44OMAIN\x10\x0b\x12\r\n\x08TAXONOMY\x10\x8c\x01\x12\x0e\n\nAPPEARANCE\x10n\x12\x10\n\x0b\x45NVIRONMENT\x10\x82\x01\x12\x0b\n\x07UPSOLVE\x10x\x12\x0f\n\nSCOREBOARD\x10\x96\x01\"\x15\n\x13UpdateContestOutput\"*\n\x14\x44\x65scribeContestInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"?\n\x15\x44\x65scribeContestOutput\x12&\n\x07\x63ontest\x18\x01 \x01(\x0b\x32\x15.eolymp.judge.Contest\"!\n\x12LookupContestInput\x12\x0b\n\x03key\x18\x01 \x01(\t\"s\n\x13LookupContestOutput\x12&\n\x07\x63ontest\x18\x01 \x01(\x0b\x32\x15.eolymp.judge.Contest\x12\x34\n\nappearance\x18\x02 \x01(\x0b\x32 .eolymp.judge.Contest.Appearance\"\xb2\x07\n\x11ListContestsInput\x12\x0e\n\x06offset\x18\n \x01(\x05\x12\x0c\n\x04size\x18\x0b \x01(\x05\x12\x37\n\x07\x66ilters\x18( \x01(\x0b\x32&.eolymp.judge.ListContestsInput.Filter\x1a\xc5\x06\n\x06\x46ilter\x12\r\n\x05query\x18\t \x01(\t\x12*\n\x02id\x18\x01 \x03(\x0b\x32\x1e.eolymp.wellknown.ExpressionID\x12\x30\n\x04name\x18\x03 \x03(\x0b\x32\".eolymp.wellknown.ExpressionString\x12\x38\n\tstarts_at\x18\x04 \x03(\x0b\x32%.eolymp.wellknown.ExpressionTimestamp\x12\x36\n\x07\x65nds_at\x18\x05 \x03(\x0b\x32%.eolymp.wellknown.ExpressionTimestamp\x12\x30\n\x06public\x18\x06 \x03(\x0b\x32 .eolymp.wellknown.ExpressionBool\x12\x34\n\nvisibility\x18\x07 \x03(\x0b\x32 .eolymp.wellknown.ExpressionEnum\x12\x30\n\x06\x66ormat\x18\x08 \x03(\x0b\x32 .eolymp.wellknown.ExpressionEnum\x12\x30\n\x06status\x18\n \x03(\x0b\x32 .eolymp.wellknown.ExpressionEnum\x12\x32\n\x08\x66\x65\x61tured\x18\x0b \x03(\x0b\x32 .eolymp.wellknown.ExpressionBool\x12-\n\x04year\x18\x64 \x03(\x0b\x32\x1f.eolymp.wellknown.ExpressionInt\x12/\n\x05scale\x18\x65 \x03(\x0b\x32 .eolymp.wellknown.ExpressionEnum\x12\x30\n\x06series\x18\x66 \x03(\x0b\x32 .eolymp.wellknown.ExpressionEnum\x12\x33\n\ndifficulty\x18g \x03(\x0b\x32\x1f.eolymp.wellknown.ExpressionInt\x12\x31\n\x07\x63ountry\x18h \x03(\x0b\x32 .eolymp.wellknown.ExpressionEnum\x12\x30\n\x06region\x18i \x03(\x0b\x32 .eolymp.wellknown.ExpressionEnum\x12\x30\n\x04\x63ity\x18j \x03(\x0b\x32\".eolymp.wellknown.ExpressionString\"I\n\x12ListContestsOutput\x12$\n\x05items\x18\x01 \x03(\x0b\x32\x15.eolymp.judge.Contest\x12\r\n\x05total\x18\x02 \x01(\x05\"&\n\x10OpenContestInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"\x13\n\x11OpenContestOutput\"\'\n\x11\x43loseContestInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"\x14\n\x12\x43loseContestOutput\")\n\x13SuspendContestInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"\x16\n\x14SuspendContestOutput\"(\n\x12\x46reezeContestInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"\x15\n\x13\x46reezeContestOutput\"(\n\x12ResumeContestInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"\x15\n\x13ResumeContestOutput\"&\n\x10JoinContestInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"\x13\n\x11JoinContestOutput\"\'\n\x11StartContestInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"\x14\n\x12StartContestOutput\"\x7f\n\x12ImportProblemInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x11\n\timport_id\x18\x02 \x01(\t\x12\r\n\x05index\x18\n \x01(\r\x12\x14\n\x0csubmit_limit\x18\x0b \x01(\r\x12\x1d\n\x15score_by_best_testset\x18\x0c \x01(\x08\")\n\x13ImportProblemOutput\x12\x12\n\nproblem_id\x18\x02 \x01(\t\":\n\x10SyncProblemInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x12\n\nproblem_id\x18\x02 \x01(\t\"\x13\n\x11SyncProblemOutput\"\x80\x01\n\x12UpdateProblemInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x12\n\nproblem_id\x18\x02 \x01(\t\x12\r\n\x05index\x18\n \x01(\r\x12\x14\n\x0csubmit_limit\x18\x0b \x01(\r\x12\x1d\n\x15score_by_best_testset\x18\x0c \x01(\x08\"\x15\n\x13UpdateProblemOutput\"<\n\x12\x44\x65leteProblemInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x12\n\nproblem_id\x18\x02 \x01(\t\"\x15\n\x13\x44\x65leteProblemOutput\"<\n\x12RetestProblemInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x12\n\nproblem_id\x18\x02 \x01(\t\"\x15\n\x13RetestProblemOutput\"E\n\x11ListProblemsInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\n \x01(\x05\x12\x0c\n\x04size\x18\x0b \x01(\x05\"I\n\x12ListProblemsOutput\x12\r\n\x05total\x18\x01 \x01(\x05\x12$\n\x05items\x18\x02 \x03(\x0b\x32\x15.eolymp.judge.Problem\"T\n\x14\x44\x65scribeProblemInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x12\n\nproblem_id\x18\x02 \x01(\t\x12\x14\n\x0bproblem_ern\x18\x8fN \x01(\t\"?\n\x15\x44\x65scribeProblemOutput\x12&\n\x07problem\x18\x01 \x01(\x0b\x32\x15.eolymp.judge.Problem\"=\n\x13ListStatementsInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x12\n\nproblem_id\x18\x02 \x01(\t\"U\n\x14ListStatementsOutput\x12\r\n\x05total\x18\x01 \x01(\x05\x12.\n\x05items\x18\x02 \x03(\x0b\x32\x1f.eolymp.judge.Problem.Statement\">\n\x14ListAttachmentsInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x12\n\nproblem_id\x18\x02 \x01(\t\"W\n\x15ListAttachmentsOutput\x12\r\n\x05total\x18\x01 \x01(\x05\x12/\n\x05items\x18\x02 \x03(\x0b\x32 .eolymp.judge.Problem.Attachment\";\n\x11ListExamplesInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x12\n\nproblem_id\x18\x02 \x01(\t\"N\n\x12ListExamplesOutput\x12\r\n\x05total\x18\x01 \x01(\x05\x12)\n\x05items\x18\x02 \x03(\x0b\x32\x1a.eolymp.judge.Problem.Test\"Y\n\x13\x41\x64\x64ParticipantInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12.\n\x0bparticipant\x18\x02 \x01(\x0b\x32\x19.eolymp.judge.Participant\".\n\x14\x41\x64\x64ParticipantOutput\x12\x16\n\x0eparticipant_id\x18\x01 \x01(\t\"D\n\x16\x45nableParticipantInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x16\n\x0eparticipant_id\x18\x02 \x01(\t\"\x19\n\x17\x45nableParticipantOutput\"E\n\x17\x44isableParticipantInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x16\n\x0eparticipant_id\x18\x02 \x01(\t\"\x1a\n\x18\x44isableParticipantOutput\"\x90\x02\n\x16UpdateParticipantInput\x12\x39\n\x05patch\x18\x03 \x03(\x0e\x32*.eolymp.judge.UpdateParticipantInput.Patch\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x16\n\x0eparticipant_id\x18\x02 \x01(\t\x12.\n\x0bparticipant\x18\x04 \x01(\x0b\x32\x19.eolymp.judge.Participant\"_\n\x05Patch\x12\x07\n\x03\x41LL\x10\x00\x12\x08\n\x04NAME\x10\x01\x12\x0e\n\nBONUS_TIME\x10\x03\x12\x0e\n\nUNOFFICIAL\x10\x04\x12\t\n\x05MEDAL\x10\x05\x12\n\n\x06\x41\x43TIVE\x10\x06\x12\x0c\n\x08PASSCODE\x10\x07\"\x19\n\x17UpdateParticipantOutput\"D\n\x16RemoveParticipantInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x16\n\x0eparticipant_id\x18\x02 \x01(\t\"\x19\n\x17RemoveParticipantOutput\")\n\x13VerifyPasscodeInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"7\n\x14VerifyPasscodeOutput\x12\x10\n\x08required\x18\x01 \x01(\x08\x12\r\n\x05valid\x18\x02 \x01(\x08\":\n\x12\x45nterPasscodeInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x10\n\x08passcode\x18\x02 \x01(\t\"\x15\n\x13\x45nterPasscodeOutput\"@\n\x12ResetPasscodeInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x16\n\x0eparticipant_id\x18\x02 \x01(\t\"\'\n\x13ResetPasscodeOutput\x12\x10\n\x08passcode\x18\x01 \x01(\t\"P\n\x10SetPasscodeInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x16\n\x0eparticipant_id\x18\x02 \x01(\t\x12\x10\n\x08passcode\x18\x03 \x01(\t\"\x13\n\x11SetPasscodeOutput\"A\n\x13RemovePasscodeInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x16\n\x0eparticipant_id\x18\x02 \x01(\t\"\x16\n\x14RemovePasscodeOutput\"\xe8\x05\n\x15ListParticipantsInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\n \x01(\x05\x12\x0c\n\x04size\x18\x0b \x01(\x05\x12;\n\x07\x66ilters\x18( \x01(\x0b\x32*.eolymp.judge.ListParticipantsInput.Filter\x12:\n\x04sort\x18\x32 \x01(\x0e\x32,.eolymp.judge.ListParticipantsInput.Sortable\x12*\n\x05order\x18\x33 \x01(\x0e\x32\x1b.eolymp.wellknown.Direction\x1a\xa8\x03\n\x06\x46ilter\x12*\n\x02id\x18\x01 \x03(\x0b\x32\x1e.eolymp.wellknown.ExpressionID\x12\x31\n\tmember_id\x18\x02 \x03(\x0b\x32\x1e.eolymp.wellknown.ExpressionID\x12\x30\n\x04name\x18\x08 \x03(\x0b\x32\".eolymp.wellknown.ExpressionString\x12\x30\n\x06status\x18\x03 \x03(\x0b\x32 .eolymp.wellknown.ExpressionEnum\x12\x30\n\x05score\x18\x04 \x03(\x0b\x32!.eolymp.wellknown.ExpressionFloat\x12\x32\n\x07penalty\x18\x05 \x03(\x0b\x32!.eolymp.wellknown.ExpressionFloat\x12\x39\n\nstarted_at\x18\x06 \x03(\x0b\x32%.eolymp.wellknown.ExpressionTimestamp\x12:\n\x0b\x63omplete_at\x18\x07 \x03(\x0b\x32%.eolymp.wellknown.ExpressionTimestamp\"M\n\x08Sortable\x12\x08\n\x04RANK\x10\x00\x12\t\n\x05SCORE\x10\x01\x12\x0b\n\x07PENALTY\x10\x02\x12\x0e\n\nSTARTED_AT\x10\x03\x12\x0f\n\x0b\x43OMPLETE_AT\x10\x04\"Q\n\x16ListParticipantsOutput\x12\r\n\x05total\x18\x01 \x01(\x05\x12(\n\x05items\x18\x02 \x03(\x0b\x32\x19.eolymp.judge.Participant\"0\n\x1aIntrospectParticipantInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"M\n\x1bIntrospectParticipantOutput\x12.\n\x0bparticipant\x18\x01 \x01(\x0b\x32\x19.eolymp.judge.Participant\"F\n\x18\x44\x65scribeParticipantInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x16\n\x0eparticipant_id\x18\x02 \x01(\t\"K\n\x19\x44\x65scribeParticipantOutput\x12.\n\x0bparticipant\x18\x01 \x01(\x0b\x32\x19.eolymp.judge.Participant\"]\n\x15\x43reateSubmissionInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x12\n\nproblem_id\x18\x02 \x01(\t\x12\x0c\n\x04lang\x18\x03 \x01(\t\x12\x0e\n\x06source\x18\x04 \x01(\t\"/\n\x16\x43reateSubmissionOutput\x12\x15\n\rsubmission_id\x18\x01 \x01(\t\"\x94\x05\n\x14ListSubmissionsInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\n \x01(\x05\x12\x0c\n\x04size\x18\x0b \x01(\x05\x12:\n\x07\x66ilters\x18( \x01(\x0b\x32).eolymp.judge.ListSubmissionsInput.Filter\x12.\n\x05\x65xtra\x18\xe3\x08 \x03(\x0e\x32\x1e.eolymp.judge.Submission.Extra\x1a\xdd\x03\n\x06\x46ilter\x12*\n\x02id\x18\x01 \x03(\x0b\x32\x1e.eolymp.wellknown.ExpressionID\x12\x36\n\x0eparticipant_id\x18\x02 \x03(\x0b\x32\x1e.eolymp.wellknown.ExpressionID\x12\x32\n\nproblem_id\x18\x03 \x03(\x0b\x32\x1e.eolymp.wellknown.ExpressionID\x12\x30\n\x06status\x18\x04 \x03(\x0b\x32 .eolymp.wellknown.ExpressionEnum\x12.\n\x04lang\x18\x05 \x03(\x0b\x32 .eolymp.wellknown.ExpressionEnum\x12\x30\n\x05score\x18\x06 \x03(\x0b\x32!.eolymp.wellknown.ExpressionFloat\x12\x35\n\npercentage\x18\x07 \x03(\x0b\x32!.eolymp.wellknown.ExpressionFloat\x12;\n\x0csubmitted_at\x18\x08 \x03(\x0b\x32%.eolymp.wellknown.ExpressionTimestamp\x12\x33\n\tsignature\x18\t \x03(\x0b\x32 .eolymp.wellknown.ExpressionEnum\"O\n\x15ListSubmissionsOutput\x12\r\n\x05total\x18\x01 \x01(\x05\x12\'\n\x05items\x18\x02 \x03(\x0b\x32\x18.eolymp.judge.Submission\"t\n\x17\x44\x65scribeSubmissionInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x15\n\rsubmission_id\x18\x02 \x01(\t\x12.\n\x05\x65xtra\x18\xe3\x08 \x03(\x0e\x32\x1e.eolymp.judge.Submission.Extra\"H\n\x18\x44\x65scribeSubmissionOutput\x12,\n\nsubmission\x18\x01 \x01(\x0b\x32\x18.eolymp.judge.Submission\"q\n\x14WatchSubmissionInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x15\n\rsubmission_id\x18\x02 \x01(\t\x12.\n\x05\x65xtra\x18\xe3\x08 \x03(\x0e\x32\x1e.eolymp.judge.Submission.Extra\"E\n\x15WatchSubmissionOutput\x12,\n\nsubmission\x18\x01 \x01(\x0b\x32\x18.eolymp.judge.Submission\"B\n\x15RetestSubmissionInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x15\n\rsubmission_id\x18\x02 \x01(\t\"\x18\n\x16RetestSubmissionOutput\"B\n\x15\x44\x65leteSubmissionInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x15\n\rsubmission_id\x18\x02 \x01(\t\"\x18\n\x16\x44\x65leteSubmissionOutput\"C\n\x16RestoreSubmissionInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x15\n\rsubmission_id\x18\x02 \x01(\t\"\x19\n\x17RestoreSubmissionOutput\"<\n\x15\x43onfigureRuntimeInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x0f\n\x07runtime\x18\x02 \x03(\t\"\x18\n\x16\x43onfigureRuntimeOutput\"*\n\x14\x44\x65scribeRuntimeInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"(\n\x15\x44\x65scribeRuntimeOutput\x12\x0f\n\x07runtime\x18\x01 \x03(\t\"_\n\x17\x43reateAnnouncementInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x30\n\x0c\x61nnouncement\x18\x02 \x01(\x0b\x32\x1a.eolymp.judge.Announcement\"&\n\x18\x43reateAnnouncementOutput\x12\n\n\x02id\x18\x01 \x01(\t\"x\n\x17UpdateAnnouncementInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x17\n\x0f\x61nnouncement_id\x18\x02 \x01(\t\x12\x30\n\x0c\x61nnouncement\x18\x03 \x01(\x0b\x32\x1a.eolymp.judge.Announcement\"\x1a\n\x18UpdateAnnouncementOutput\"F\n\x17\x44\x65leteAnnouncementInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x17\n\x0f\x61nnouncement_id\x18\x02 \x01(\t\"\x1a\n\x18\x44\x65leteAnnouncementOutput\"D\n\x15ReadAnnouncementInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x17\n\x0f\x61nnouncement_id\x18\x02 \x01(\t\"\x18\n\x16ReadAnnouncementOutput\"z\n\x19\x44\x65scribeAnnouncementInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x17\n\x0f\x61nnouncement_id\x18\x02 \x01(\t\x12\x30\n\x05\x65xtra\x18\xe3\x08 \x03(\x0e\x32 .eolymp.judge.Announcement.Extra\"N\n\x1a\x44\x65scribeAnnouncementOutput\x12\x30\n\x0c\x61nnouncement\x18\x01 \x01(\x0b\x32\x1a.eolymp.judge.Announcement\"N\n\x1f\x44\x65scribeAnnouncementStatusInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x17\n\x0f\x61nnouncement_id\x18\x02 \x01(\t\"3\n DescribeAnnouncementStatusOutput\x12\x0f\n\x07is_read\x18\x01 \x01(\x08\"\xa3\x02\n\x16ListAnnouncementsInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\n \x01(\x05\x12\x0c\n\x04size\x18\x0b \x01(\x05\x12<\n\x07\x66ilters\x18( \x01(\x0b\x32+.eolymp.judge.ListAnnouncementsInput.Filter\x12\x30\n\x05\x65xtra\x18\xe3\x08 \x03(\x0e\x32 .eolymp.judge.Announcement.Extra\x1ag\n\x06\x46ilter\x12*\n\x02id\x18\x01 \x03(\x0b\x32\x1e.eolymp.wellknown.ExpressionID\x12\x31\n\x07is_read\x18\x02 \x03(\x0b\x32 .eolymp.wellknown.ExpressionBool\"S\n\x17ListAnnouncementsOutput\x12\r\n\x05total\x18\x01 \x01(\x05\x12)\n\x05items\x18\x02 \x03(\x0b\x32\x1a.eolymp.judge.Announcement\"n\n\x19\x44\x65scribeCodeTemplateInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x12\n\nproblem_id\x18\x02 \x01(\t\x12\x13\n\x0btemplate_id\x18\x03 \x01(\t\x12\x14\n\x0ctemplate_ern\x18\x04 \x01(\t\"F\n\x1a\x44\x65scribeCodeTemplateOutput\x12(\n\x08template\x18\x01 \x01(\x0b\x32\x16.eolymp.judge.Template\"h\n\x17LookupCodeTemplateInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x12\n\nproblem_id\x18\x02 \x01(\t\x12\x14\n\x0bproblem_ern\x18\xe7\x07 \x01(\t\x12\x0f\n\x07runtime\x18\n \x01(\t\"D\n\x18LookupCodeTemplateOutput\x12(\n\x08template\x18\x01 \x01(\x0b\x32\x16.eolymp.judge.Template\"\'\n\x11RebuildScoreInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\")\n\x12RebuildScoreOutput\x12\x13\n\x0b\x61\x63tivity_id\x18\x01 \x01(\t\"*\n\x14IntrospectScoreInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\";\n\x15IntrospectScoreOutput\x12\"\n\x05score\x18\x01 \x01(\x0b\x32\x13.eolymp.judge.Score\"\x85\x01\n\x12\x44\x65scribeScoreInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x16\n\x0eparticipant_id\x18\x02 \x01(\t\x12.\n\x04mode\x18\x03 \x01(\x0e\x32 .eolymp.judge.Score.FetchingMode\x12\x13\n\x0btime_offset\x18\x04 \x01(\x05\"9\n\x13\x44\x65scribeScoreOutput\x12\"\n\x05score\x18\x01 \x01(\x0b\x32\x13.eolymp.judge.Score\"c\n\x10ImportScoreInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x16\n\x0eparticipant_id\x18\x02 \x01(\t\x12#\n\x06scores\x18\n \x03(\x0b\x32\x13.eolymp.judge.Score\"\x13\n\x11ImportScoreOutput\">\n\x10\x45xportScoreInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x16\n\x0eparticipant_id\x18\x02 \x01(\t\"8\n\x11\x45xportScoreOutput\x12#\n\x06scores\x18\n \x03(\x0b\x32\x13.eolymp.judge.Score\"\x88\x01\n\x0fListResultInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12.\n\x04mode\x18\x02 \x01(\x0e\x32 .eolymp.judge.Score.FetchingMode\x12\x13\n\x0btime_offset\x18\x03 \x01(\x05\x12\x0e\n\x06offset\x18\n \x01(\x05\x12\x0c\n\x04size\x18\x0b \x01(\x05\"F\n\x10ListResultOutput\x12\r\n\x05total\x18\x01 \x01(\x05\x12#\n\x05items\x18\x02 \x03(\x0b\x32\x14.eolymp.judge.Result\"G\n\x13ListActivitiesInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\n \x01(\x05\x12\x0c\n\x04size\x18\x0b \x01(\x05\"L\n\x14ListActivitiesOutput\x12\r\n\x05total\x18\x01 \x01(\x05\x12%\n\x05items\x18\x02 \x03(\x0b\x32\x16.eolymp.judge.Activity\"d\n\x18\x43onfigureAppearanceInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\x12\x34\n\nappearance\x18\x02 \x01(\x0b\x32 .eolymp.judge.Contest.Appearance\"\x1b\n\x19\x43onfigureAppearanceOutput\"-\n\x17\x44\x65scribeAppearanceInput\x12\x12\n\ncontest_id\x18\x01 \x01(\t\"P\n\x18\x44\x65scribeAppearanceOutput\x12\x34\n\nappearance\x18\x01 \x01(\x0b\x32 .eolymp.judge.Contest.Appearance\"}\n\x19\x44\x65scribeContestUsageInput\x12\x30\n\x0cperiod_start\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12.\n\nperiod_end\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"g\n\x1a\x44\x65scribeContestUsageOutput\x12\x16\n\x0etotal_contests\x18\x01 \x01(\r\x12\x17\n\x0f\x61\x63tive_contests\x18\x02 \x01(\r\x12\x18\n\x10monthly_contests\x18\x03 \x01(\r2\xd9T\n\x05Judge\x12\x91\x01\n\rCreateContest\x12 .eolymp.judge.CreateContestInput\x1a!.eolymp.judge.CreateContestOutput\";\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\n\xd7\xa3=\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02\x0b\"\t/contests\x12\x9e\x01\n\rDeleteContest\x12 .eolymp.judge.DeleteContestInput\x1a!.eolymp.judge.DeleteContestOutput\"H\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02\x18*\x16/contests/{contest_id}\x12\x9e\x01\n\rUpdateContest\x12 .eolymp.judge.UpdateContestInput\x1a!.eolymp.judge.UpdateContestOutput\"H\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02\x18\x1a\x16/contests/{contest_id}\x12\x89\x01\n\x0f\x44\x65scribeContest\x12\".eolymp.judge.DescribeContestInput\x1a#.eolymp.judge.DescribeContestOutput\"-\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02\x18\x12\x16/contests/{contest_id}\x12s\n\x0cListContests\x12\x1f.eolymp.judge.ListContestsInput\x1a .eolymp.judge.ListContestsOutput\" \xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\n\x82\xd3\xe4\x93\x02\x0b\x12\t/contests\x12\x9d\x01\n\x0bOpenContest\x12\x1e.eolymp.judge.OpenContestInput\x1a\x1f.eolymp.judge.OpenContestOutput\"M\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02\x1d\"\x1b/contests/{contest_id}/open\x12\xa1\x01\n\x0c\x43loseContest\x12\x1f.eolymp.judge.CloseContestInput\x1a .eolymp.judge.CloseContestOutput\"N\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02\x1e\"\x1c/contests/{contest_id}/close\x12\xa9\x01\n\x0eSuspendContest\x12!.eolymp.judge.SuspendContestInput\x1a\".eolymp.judge.SuspendContestOutput\"P\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02 \"\x1e/contests/{contest_id}/suspend\x12\xa5\x01\n\rFreezeContest\x12 .eolymp.judge.FreezeContestInput\x1a!.eolymp.judge.FreezeContestOutput\"O\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02\x1f\"\x1d/contests/{contest_id}/freeze\x12\xa5\x01\n\rResumeContest\x12 .eolymp.judge.ResumeContestInput\x1a!.eolymp.judge.ResumeContestOutput\"O\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02\x1f\"\x1d/contests/{contest_id}/resume\x12\xa7\x01\n\rImportProblem\x12 .eolymp.judge.ImportProblemInput\x1a!.eolymp.judge.ImportProblemOutput\"Q\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02!\"\x1f/contests/{contest_id}/problems\x12\xb3\x01\n\x0bSyncProblem\x12\x1e.eolymp.judge.SyncProblemInput\x1a\x1f.eolymp.judge.SyncProblemOutput\"c\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02\x33\"1/contests/{contest_id}/problems/{problem_id}/sync\x12\xb4\x01\n\rUpdateProblem\x12 .eolymp.judge.UpdateProblemInput\x1a!.eolymp.judge.UpdateProblemOutput\"^\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02.\",/contests/{contest_id}/problems/{problem_id}\x12\xa3\x01\n\x0cListProblems\x12\x1f.eolymp.judge.ListProblemsInput\x1a .eolymp.judge.ListProblemsOutput\"P\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00@@\xf8\xe2\n\n\x82\xd3\xe4\x93\x02!\x12\x1f/contests/{contest_id}/problems\x12\xba\x01\n\x0f\x44\x65scribeProblem\x12\".eolymp.judge.DescribeProblemInput\x1a#.eolymp.judge.DescribeProblemOutput\"^\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0c\xf5\xe2\n\x00\x00\xa0\x41\xf8\xe2\n\xc8\x01\x82\xd3\xe4\x93\x02.\x12,/contests/{contest_id}/problems/{problem_id}\x12\xe0\x01\n\x14\x44\x65scribeCodeTemplate\x12\'.eolymp.judge.DescribeCodeTemplateInput\x1a(.eolymp.judge.DescribeCodeTemplateOutput\"u\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\xa0@\xf8\xe2\n\x14\x82\xd3\xe4\x93\x02\x46\x12\x44/contests/{contest_id}/problems/{problem_id}/templates/{template_id}\x12\xd2\x01\n\x12LookupCodeTemplate\x12%.eolymp.judge.LookupCodeTemplateInput\x1a&.eolymp.judge.LookupCodeTemplateOutput\"m\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\xa0@\xf8\xe2\n\x14\x82\xd3\xe4\x93\x02>\x12</contests/{contest_id}/problems/{problem_id}/lookup-template\x12\xc1\x01\n\x0eListStatements\x12!.eolymp.judge.ListStatementsInput\x1a\".eolymp.judge.ListStatementsOutput\"h\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\xa0\x41\xf8\xe2\nd\x82\xd3\xe4\x93\x02\x39\x12\x37/contests/{contest_id}/problems/{problem_id}/statements\x12\xc5\x01\n\x0fListAttachments\x12\".eolymp.judge.ListAttachmentsInput\x1a#.eolymp.judge.ListAttachmentsOutput\"i\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\xa0\x41\xf8\xe2\nd\x82\xd3\xe4\x93\x02:\x12\x38/contests/{contest_id}/problems/{problem_id}/attachments\x12\xb9\x01\n\x0cListExamples\x12\x1f.eolymp.judge.ListExamplesInput\x1a .eolymp.judge.ListExamplesOutput\"f\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\xa0\x41\xf8\xe2\nd\x82\xd3\xe4\x93\x02\x37\x12\x35/contests/{contest_id}/problems/{problem_id}/examples\x12\xb4\x01\n\rDeleteProblem\x12 .eolymp.judge.DeleteProblemInput\x1a!.eolymp.judge.DeleteProblemOutput\"^\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02.*,/contests/{contest_id}/problems/{problem_id}\x12\xbb\x01\n\rRetestProblem\x12 .eolymp.judge.RetestProblemInput\x1a!.eolymp.judge.RetestProblemOutput\"e\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02\x35\x12\x33/contests/{contest_id}/problems/{problem_id}/retest\x12\xae\x01\n\x0e\x41\x64\x64Participant\x12!.eolymp.judge.AddParticipantInput\x1a\".eolymp.judge.AddParticipantOutput\"U\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02%\"#/contests/{contest_id}/participants\x12\xcf\x01\n\x11\x45nableParticipant\x12$.eolymp.judge.EnableParticipantInput\x1a%.eolymp.judge.EnableParticipantOutput\"m\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02=\";/contests/{contest_id}/participants/{participant_id}/enable\x12\xd3\x01\n\x12\x44isableParticipant\x12%.eolymp.judge.DisableParticipantInput\x1a&.eolymp.judge.DisableParticipantOutput\"n\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02>\"</contests/{contest_id}/participants/{participant_id}/disable\x12\xc8\x01\n\x11UpdateParticipant\x12$.eolymp.judge.UpdateParticipantInput\x1a%.eolymp.judge.UpdateParticipantOutput\"f\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02\x36\x1a\x34/contests/{contest_id}/participants/{participant_id}\x12\xc8\x01\n\x11RemoveParticipant\x12$.eolymp.judge.RemoveParticipantInput\x1a%.eolymp.judge.RemoveParticipantOutput\"f\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02\x36*4/contests/{contest_id}/participants/{participant_id}\x12\xb3\x01\n\x10ListParticipants\x12#.eolymp.judge.ListParticipantsInput\x1a$.eolymp.judge.ListParticipantsOutput\"T\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02%\x12#/contests/{contest_id}/participants\x12\xce\x01\n\x13\x44\x65scribeParticipant\x12&.eolymp.judge.DescribeParticipantInput\x1a\'.eolymp.judge.DescribeParticipantOutput\"f\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0c\xf5\xe2\n\x00\x00HB\xf8\xe2\n\xc8\x01\x82\xd3\xe4\x93\x02\x36\x12\x34/contests/{contest_id}/participants/{participant_id}\x12\xa6\x01\n\x15IntrospectParticipant\x12(.eolymp.judge.IntrospectParticipantInput\x1a).eolymp.judge.IntrospectParticipantOutput\"8\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02#\x12!/contests/{contest_id}/introspect\x12\x82\x01\n\x0bJoinContest\x12\x1e.eolymp.judge.JoinContestInput\x1a\x1f.eolymp.judge.JoinContestOutput\"2\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x03\x82\xd3\xe4\x93\x02\x1d\"\x1b/contests/{contest_id}/join\x12\xa7\x01\n\x0cStartContest\x12\x1f.eolymp.judge.StartContestInput\x1a .eolymp.judge.StartContestOutput\"T\x82\xe3\n\x1d\x8a\xe3\n\x19judge:contest:participate\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x03\x82\xd3\xe4\x93\x02\x1e\"\x1c/contests/{contest_id}/start\x12\xb0\x01\n\x0eVerifyPasscode\x12!.eolymp.judge.VerifyPasscodeInput\x1a\".eolymp.judge.VerifyPasscodeOutput\"W\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02(\"&/contests/{contest_id}/verify-passcode\x12\xb3\x01\n\rEnterPasscode\x12 .eolymp.judge.EnterPasscodeInput\x1a!.eolymp.judge.EnterPasscodeOutput\"]\x82\xe3\n\x1d\x8a\xe3\n\x19judge:contest:participate\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02\'\"%/contests/{contest_id}/enter-passcode\x12\xc5\x01\n\rResetPasscode\x12 .eolymp.judge.ResetPasscodeInput\x1a!.eolymp.judge.ResetPasscodeOutput\"o\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02?\"=/contests/{contest_id}/participants/{participant_id}/passcode\x12\xbf\x01\n\x0bSetPasscode\x12\x1e.eolymp.judge.SetPasscodeInput\x1a\x1f.eolymp.judge.SetPasscodeOutput\"o\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02?\x1a=/contests/{contest_id}/participants/{participant_id}/passcode\x12\xc8\x01\n\x0eRemovePasscode\x12!.eolymp.judge.RemovePasscodeInput\x1a\".eolymp.judge.RemovePasscodeOutput\"o\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02?*=/contests/{contest_id}/participants/{participant_id}/passcode\x12\xcf\x01\n\x10\x43reateSubmission\x12#.eolymp.judge.CreateSubmissionInput\x1a$.eolymp.judge.CreateSubmissionOutput\"p\x82\xe3\n\x1d\x8a\xe3\n\x19judge:contest:participate\xea\xe2\n\x0b\xf5\xe2\n\n\xd7#>\xf8\xe2\n\n\x82\xd3\xe4\x93\x02:\"8/contests/{contest_id}/problems/{problem_id}/submissions\x12\xaf\x01\n\x0fListSubmissions\x12\".eolymp.judge.ListSubmissionsInput\x1a#.eolymp.judge.ListSubmissionsOutput\"S\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02$\x12\"/contests/{contest_id}/submissions\x12\xc8\x01\n\x12\x44\x65scribeSubmission\x12%.eolymp.judge.DescribeSubmissionInput\x1a&.eolymp.judge.DescribeSubmissionOutput\"c\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x00@\xf8\xe2\n\n\x82\xd3\xe4\x93\x02\x34\x12\x32/contests/{contest_id}/submissions/{submission_id}\x12x\n\x0fWatchSubmission\x12\".eolymp.judge.WatchSubmissionInput\x1a#.eolymp.judge.WatchSubmissionOutput\"\x1a\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read0\x01\x12\xca\x01\n\x10RetestSubmission\x12#.eolymp.judge.RetestSubmissionInput\x1a$.eolymp.judge.RetestSubmissionOutput\"k\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02;\"9/contests/{contest_id}/submissions/{submission_id}/retest\x12\xc3\x01\n\x10\x44\x65leteSubmission\x12#.eolymp.judge.DeleteSubmissionInput\x1a$.eolymp.judge.DeleteSubmissionOutput\"d\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02\x34*2/contests/{contest_id}/submissions/{submission_id}\x12\xce\x01\n\x11RestoreSubmission\x12$.eolymp.judge.RestoreSubmissionInput\x1a%.eolymp.judge.RestoreSubmissionOutput\"l\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02<\":/contests/{contest_id}/submissions/{submission_id}/restore\x12\xbb\x01\n\x12\x43reateAnnouncement\x12%.eolymp.judge.CreateAnnouncementInput\x1a&.eolymp.judge.CreateAnnouncementOutput\"V\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02&\"$/contests/{contest_id}/announcements\x12\xcd\x01\n\x12UpdateAnnouncement\x12%.eolymp.judge.UpdateAnnouncementInput\x1a&.eolymp.judge.UpdateAnnouncementOutput\"h\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x80?\xf8\xe2\n\x05\x82\xd3\xe4\x93\x02\x38\"6/contests/{contest_id}/announcements/{announcement_id}\x12\xcd\x01\n\x12\x44\x65leteAnnouncement\x12%.eolymp.judge.DeleteAnnouncementInput\x1a&.eolymp.judge.DeleteAnnouncementOutput\"h\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x00@\xf8\xe2\n\n\x82\xd3\xe4\x93\x02\x38*6/contests/{contest_id}/announcements/{announcement_id}\x12\xcb\x01\n\x10ReadAnnouncement\x12#.eolymp.judge.ReadAnnouncementInput\x1a$.eolymp.judge.ReadAnnouncementOutput\"l\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x00@\xf8\xe2\n\n\x82\xd3\xe4\x93\x02=\";/contests/{contest_id}/announcements/{announcement_id}/read\x12\xd2\x01\n\x14\x44\x65scribeAnnouncement\x12\'.eolymp.judge.DescribeAnnouncementInput\x1a(.eolymp.judge.DescribeAnnouncementOutput\"g\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x00@\xf8\xe2\n\n\x82\xd3\xe4\x93\x02\x38\x12\x36/contests/{contest_id}/announcements/{announcement_id}\x12\xeb\x01\n\x1a\x44\x65scribeAnnouncementStatus\x12-.eolymp.judge.DescribeAnnouncementStatusInput\x1a..eolymp.judge.DescribeAnnouncementStatusOutput\"n\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x00@\xf8\xe2\n\n\x82\xd3\xe4\x93\x02?\x12=/contests/{contest_id}/announcements/{announcement_id}/status\x12\xb7\x01\n\x11ListAnnouncements\x12$.eolymp.judge.ListAnnouncementsInput\x1a%.eolymp.judge.ListAnnouncementsOutput\"U\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\xa0@\xf8\xe2\n\x14\x82\xd3\xe4\x93\x02&\x12$/contests/{contest_id}/announcements\x12\x9a\x01\n\x0fIntrospectScore\x12\".eolymp.judge.IntrospectScoreInput\x1a#.eolymp.judge.IntrospectScoreOutput\">\xea\xe2\n\x0b\xf5\xe2\n\x00\x00 A\xf8\xe2\n2\x82\xd3\xe4\x93\x02)\x12\'/contests/{contest_id}/introspect/score\x12\xc2\x01\n\rDescribeScore\x12 .eolymp.judge.DescribeScoreInput\x1a!.eolymp.judge.DescribeScoreOutput\"l\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0c\xf5\xe2\n\x00\x00HB\xf8\xe2\n\xc8\x01\x82\xd3\xe4\x93\x02<\x12:/contests/{contest_id}/participants/{participant_id}/score\x12\xbd\x01\n\x0bImportScore\x12\x1e.eolymp.judge.ImportScoreInput\x1a\x1f.eolymp.judge.ImportScoreOutput\"m\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0c\xf5\xe2\n\x00\x00HB\xf8\xe2\n\xc8\x01\x82\xd3\xe4\x93\x02=\";/contests/{contest_id}/participants/{participant_id}/scores\x12\xbd\x01\n\x0b\x45xportScore\x12\x1e.eolymp.judge.ExportScoreInput\x1a\x1f.eolymp.judge.ExportScoreOutput\"m\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0c\xf5\xe2\n\x00\x00HB\xf8\xe2\n\xc8\x01\x82\xd3\xe4\x93\x02=\x12;/contests/{contest_id}/participants/{participant_id}/scores\x12\x9d\x01\n\nListResult\x12\x1d.eolymp.judge.ListResultInput\x1a\x1e.eolymp.judge.ListResultOutput\"P\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0c\xf5\xe2\n\x00\x00HB\xf8\xe2\n\xc8\x01\x82\xd3\xe4\x93\x02 \x12\x1e/contests/{contest_id}/results\x12\xa3\x01\n\x0cRebuildScore\x12\x1f.eolymp.judge.RebuildScoreInput\x1a .eolymp.judge.RebuildScoreOutput\"P\x82\xe3\n\x17\x8a\xe3\n\x13judge:contest:write\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\x00@\xf8\xe2\n\n\x82\xd3\xe4\x93\x02 \"\x1e/contests/{contest_id}/rebuild\x12\xab\x01\n\x0eListActivities\x12!.eolymp.judge.ListActivitiesInput\x1a\".eolymp.judge.ListActivitiesOutput\"R\x82\xe3\n\x16\x8a\xe3\n\x12judge:contest:read\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\xa0@\xf8\xe2\n\x14\x82\xd3\xe4\x93\x02#\x12!/contests/{contest_id}/activities\x12\x91\x01\n\x14\x44\x65scribeContestUsage\x12\'.eolymp.judge.DescribeContestUsageInput\x1a(.eolymp.judge.DescribeContestUsageOutput\"&\xea\xe2\n\x0b\xf5\xe2\n\x00\x00\xa0@\xf8\xe2\n\x14\x82\xd3\xe4\x93\x02\x11\x12\x0f/usage/contestsB-Z+github.com/eolymp/go-sdk/eolymp/judge;judgeb\x06proto3')

_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'eolymp.judge.judge_pb2', globals())
if _descriptor._USE_C_DESCRIPTORS == False:

  DESCRIPTOR._options = None
  DESCRIPTOR._serialized_options = b'Z+github.com/eolymp/go-sdk/eolymp/judge;judge'
  _JUDGE.methods_by_name['CreateContest']._options = None
  _JUDGE.methods_by_name['CreateContest']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\n\327\243=\370\342\n\005\202\323\344\223\002\013\"\t/contests'
  _JUDGE.methods_by_name['DeleteContest']._options = None
  _JUDGE.methods_by_name['DeleteContest']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002\030*\026/contests/{contest_id}'
  _JUDGE.methods_by_name['UpdateContest']._options = None
  _JUDGE.methods_by_name['UpdateContest']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002\030\032\026/contests/{contest_id}'
  _JUDGE.methods_by_name['DescribeContest']._options = None
  _JUDGE.methods_by_name['DescribeContest']._serialized_options = b'\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\002\030\022\026/contests/{contest_id}'
  _JUDGE.methods_by_name['ListContests']._options = None
  _JUDGE.methods_by_name['ListContests']._serialized_options = b'\352\342\n\013\365\342\n\000\000\200?\370\342\n\n\202\323\344\223\002\013\022\t/contests'
  _JUDGE.methods_by_name['OpenContest']._options = None
  _JUDGE.methods_by_name['OpenContest']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002\035\"\033/contests/{contest_id}/open'
  _JUDGE.methods_by_name['CloseContest']._options = None
  _JUDGE.methods_by_name['CloseContest']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002\036\"\034/contests/{contest_id}/close'
  _JUDGE.methods_by_name['SuspendContest']._options = None
  _JUDGE.methods_by_name['SuspendContest']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002 \"\036/contests/{contest_id}/suspend'
  _JUDGE.methods_by_name['FreezeContest']._options = None
  _JUDGE.methods_by_name['FreezeContest']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002\037\"\035/contests/{contest_id}/freeze'
  _JUDGE.methods_by_name['ResumeContest']._options = None
  _JUDGE.methods_by_name['ResumeContest']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002\037\"\035/contests/{contest_id}/resume'
  _JUDGE.methods_by_name['ImportProblem']._options = None
  _JUDGE.methods_by_name['ImportProblem']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002!\"\037/contests/{contest_id}/problems'
  _JUDGE.methods_by_name['SyncProblem']._options = None
  _JUDGE.methods_by_name['SyncProblem']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\0023\"1/contests/{contest_id}/problems/{problem_id}/sync'
  _JUDGE.methods_by_name['UpdateProblem']._options = None
  _JUDGE.methods_by_name['UpdateProblem']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002.\",/contests/{contest_id}/problems/{problem_id}'
  _JUDGE.methods_by_name['ListProblems']._options = None
  _JUDGE.methods_by_name['ListProblems']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000@@\370\342\n\n\202\323\344\223\002!\022\037/contests/{contest_id}/problems'
  _JUDGE.methods_by_name['DescribeProblem']._options = None
  _JUDGE.methods_by_name['DescribeProblem']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\014\365\342\n\000\000\240A\370\342\n\310\001\202\323\344\223\002.\022,/contests/{contest_id}/problems/{problem_id}'
  _JUDGE.methods_by_name['DescribeCodeTemplate']._options = None
  _JUDGE.methods_by_name['DescribeCodeTemplate']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\240@\370\342\n\024\202\323\344\223\002F\022D/contests/{contest_id}/problems/{problem_id}/templates/{template_id}'
  _JUDGE.methods_by_name['LookupCodeTemplate']._options = None
  _JUDGE.methods_by_name['LookupCodeTemplate']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\240@\370\342\n\024\202\323\344\223\002>\022</contests/{contest_id}/problems/{problem_id}/lookup-template'
  _JUDGE.methods_by_name['ListStatements']._options = None
  _JUDGE.methods_by_name['ListStatements']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\240A\370\342\nd\202\323\344\223\0029\0227/contests/{contest_id}/problems/{problem_id}/statements'
  _JUDGE.methods_by_name['ListAttachments']._options = None
  _JUDGE.methods_by_name['ListAttachments']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\240A\370\342\nd\202\323\344\223\002:\0228/contests/{contest_id}/problems/{problem_id}/attachments'
  _JUDGE.methods_by_name['ListExamples']._options = None
  _JUDGE.methods_by_name['ListExamples']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\240A\370\342\nd\202\323\344\223\0027\0225/contests/{contest_id}/problems/{problem_id}/examples'
  _JUDGE.methods_by_name['DeleteProblem']._options = None
  _JUDGE.methods_by_name['DeleteProblem']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002.*,/contests/{contest_id}/problems/{problem_id}'
  _JUDGE.methods_by_name['RetestProblem']._options = None
  _JUDGE.methods_by_name['RetestProblem']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\0025\0223/contests/{contest_id}/problems/{problem_id}/retest'
  _JUDGE.methods_by_name['AddParticipant']._options = None
  _JUDGE.methods_by_name['AddParticipant']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002%\"#/contests/{contest_id}/participants'
  _JUDGE.methods_by_name['EnableParticipant']._options = None
  _JUDGE.methods_by_name['EnableParticipant']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\002=\";/contests/{contest_id}/participants/{participant_id}/enable'
  _JUDGE.methods_by_name['DisableParticipant']._options = None
  _JUDGE.methods_by_name['DisableParticipant']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\002>\"</contests/{contest_id}/participants/{participant_id}/disable'
  _JUDGE.methods_by_name['UpdateParticipant']._options = None
  _JUDGE.methods_by_name['UpdateParticipant']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\0026\0324/contests/{contest_id}/participants/{participant_id}'
  _JUDGE.methods_by_name['RemoveParticipant']._options = None
  _JUDGE.methods_by_name['RemoveParticipant']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\0026*4/contests/{contest_id}/participants/{participant_id}'
  _JUDGE.methods_by_name['ListParticipants']._options = None
  _JUDGE.methods_by_name['ListParticipants']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002%\022#/contests/{contest_id}/participants'
  _JUDGE.methods_by_name['DescribeParticipant']._options = None
  _JUDGE.methods_by_name['DescribeParticipant']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\014\365\342\n\000\000HB\370\342\n\310\001\202\323\344\223\0026\0224/contests/{contest_id}/participants/{participant_id}'
  _JUDGE.methods_by_name['IntrospectParticipant']._options = None
  _JUDGE.methods_by_name['IntrospectParticipant']._serialized_options = b'\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\002#\022!/contests/{contest_id}/introspect'
  _JUDGE.methods_by_name['JoinContest']._options = None
  _JUDGE.methods_by_name['JoinContest']._serialized_options = b'\352\342\n\013\365\342\n\000\000\200?\370\342\n\003\202\323\344\223\002\035\"\033/contests/{contest_id}/join'
  _JUDGE.methods_by_name['StartContest']._options = None
  _JUDGE.methods_by_name['StartContest']._serialized_options = b'\202\343\n\035\212\343\n\031judge:contest:participate\352\342\n\013\365\342\n\000\000\200?\370\342\n\003\202\323\344\223\002\036\"\034/contests/{contest_id}/start'
  _JUDGE.methods_by_name['VerifyPasscode']._options = None
  _JUDGE.methods_by_name['VerifyPasscode']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\002(\"&/contests/{contest_id}/verify-passcode'
  _JUDGE.methods_by_name['EnterPasscode']._options = None
  _JUDGE.methods_by_name['EnterPasscode']._serialized_options = b'\202\343\n\035\212\343\n\031judge:contest:participate\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\002\'\"%/contests/{contest_id}/enter-passcode'
  _JUDGE.methods_by_name['ResetPasscode']._options = None
  _JUDGE.methods_by_name['ResetPasscode']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\002?\"=/contests/{contest_id}/participants/{participant_id}/passcode'
  _JUDGE.methods_by_name['SetPasscode']._options = None
  _JUDGE.methods_by_name['SetPasscode']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\002?\032=/contests/{contest_id}/participants/{participant_id}/passcode'
  _JUDGE.methods_by_name['RemovePasscode']._options = None
  _JUDGE.methods_by_name['RemovePasscode']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\002?*=/contests/{contest_id}/participants/{participant_id}/passcode'
  _JUDGE.methods_by_name['CreateSubmission']._options = None
  _JUDGE.methods_by_name['CreateSubmission']._serialized_options = b'\202\343\n\035\212\343\n\031judge:contest:participate\352\342\n\013\365\342\n\n\327#>\370\342\n\n\202\323\344\223\002:\"8/contests/{contest_id}/problems/{problem_id}/submissions'
  _JUDGE.methods_by_name['ListSubmissions']._options = None
  _JUDGE.methods_by_name['ListSubmissions']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002$\022\"/contests/{contest_id}/submissions'
  _JUDGE.methods_by_name['DescribeSubmission']._options = None
  _JUDGE.methods_by_name['DescribeSubmission']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\000@\370\342\n\n\202\323\344\223\0024\0222/contests/{contest_id}/submissions/{submission_id}'
  _JUDGE.methods_by_name['WatchSubmission']._options = None
  _JUDGE.methods_by_name['WatchSubmission']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read'
  _JUDGE.methods_by_name['RetestSubmission']._options = None
  _JUDGE.methods_by_name['RetestSubmission']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\002;\"9/contests/{contest_id}/submissions/{submission_id}/retest'
  _JUDGE.methods_by_name['DeleteSubmission']._options = None
  _JUDGE.methods_by_name['DeleteSubmission']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\0024*2/contests/{contest_id}/submissions/{submission_id}'
  _JUDGE.methods_by_name['RestoreSubmission']._options = None
  _JUDGE.methods_by_name['RestoreSubmission']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\002<\":/contests/{contest_id}/submissions/{submission_id}/restore'
  _JUDGE.methods_by_name['CreateAnnouncement']._options = None
  _JUDGE.methods_by_name['CreateAnnouncement']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\002&\"$/contests/{contest_id}/announcements'
  _JUDGE.methods_by_name['UpdateAnnouncement']._options = None
  _JUDGE.methods_by_name['UpdateAnnouncement']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\200?\370\342\n\005\202\323\344\223\0028\"6/contests/{contest_id}/announcements/{announcement_id}'
  _JUDGE.methods_by_name['DeleteAnnouncement']._options = None
  _JUDGE.methods_by_name['DeleteAnnouncement']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\000@\370\342\n\n\202\323\344\223\0028*6/contests/{contest_id}/announcements/{announcement_id}'
  _JUDGE.methods_by_name['ReadAnnouncement']._options = None
  _JUDGE.methods_by_name['ReadAnnouncement']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\000@\370\342\n\n\202\323\344\223\002=\";/contests/{contest_id}/announcements/{announcement_id}/read'
  _JUDGE.methods_by_name['DescribeAnnouncement']._options = None
  _JUDGE.methods_by_name['DescribeAnnouncement']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\000@\370\342\n\n\202\323\344\223\0028\0226/contests/{contest_id}/announcements/{announcement_id}'
  _JUDGE.methods_by_name['DescribeAnnouncementStatus']._options = None
  _JUDGE.methods_by_name['DescribeAnnouncementStatus']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\000@\370\342\n\n\202\323\344\223\002?\022=/contests/{contest_id}/announcements/{announcement_id}/status'
  _JUDGE.methods_by_name['ListAnnouncements']._options = None
  _JUDGE.methods_by_name['ListAnnouncements']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\240@\370\342\n\024\202\323\344\223\002&\022$/contests/{contest_id}/announcements'
  _JUDGE.methods_by_name['IntrospectScore']._options = None
  _JUDGE.methods_by_name['IntrospectScore']._serialized_options = b'\352\342\n\013\365\342\n\000\000 A\370\342\n2\202\323\344\223\002)\022\'/contests/{contest_id}/introspect/score'
  _JUDGE.methods_by_name['DescribeScore']._options = None
  _JUDGE.methods_by_name['DescribeScore']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\014\365\342\n\000\000HB\370\342\n\310\001\202\323\344\223\002<\022:/contests/{contest_id}/participants/{participant_id}/score'
  _JUDGE.methods_by_name['ImportScore']._options = None
  _JUDGE.methods_by_name['ImportScore']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\014\365\342\n\000\000HB\370\342\n\310\001\202\323\344\223\002=\";/contests/{contest_id}/participants/{participant_id}/scores'
  _JUDGE.methods_by_name['ExportScore']._options = None
  _JUDGE.methods_by_name['ExportScore']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\014\365\342\n\000\000HB\370\342\n\310\001\202\323\344\223\002=\022;/contests/{contest_id}/participants/{participant_id}/scores'
  _JUDGE.methods_by_name['ListResult']._options = None
  _JUDGE.methods_by_name['ListResult']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\014\365\342\n\000\000HB\370\342\n\310\001\202\323\344\223\002 \022\036/contests/{contest_id}/results'
  _JUDGE.methods_by_name['RebuildScore']._options = None
  _JUDGE.methods_by_name['RebuildScore']._serialized_options = b'\202\343\n\027\212\343\n\023judge:contest:write\352\342\n\013\365\342\n\000\000\000@\370\342\n\n\202\323\344\223\002 \"\036/contests/{contest_id}/rebuild'
  _JUDGE.methods_by_name['ListActivities']._options = None
  _JUDGE.methods_by_name['ListActivities']._serialized_options = b'\202\343\n\026\212\343\n\022judge:contest:read\352\342\n\013\365\342\n\000\000\240@\370\342\n\024\202\323\344\223\002#\022!/contests/{contest_id}/activities'
  _JUDGE.methods_by_name['DescribeContestUsage']._options = None
  _JUDGE.methods_by_name['DescribeContestUsage']._serialized_options = b'\352\342\n\013\365\342\n\000\000\240@\370\342\n\024\202\323\344\223\002\021\022\017/usage/contests'
  _CREATECONTESTINPUT._serialized_start=506
  _CREATECONTESTINPUT._serialized_end=566
  _CREATECONTESTOUTPUT._serialized_start=568
  _CREATECONTESTOUTPUT._serialized_end=609
  _DELETECONTESTINPUT._serialized_start=611
  _DELETECONTESTINPUT._serialized_end=651
  _DELETECONTESTOUTPUT._serialized_start=653
  _DELETECONTESTOUTPUT._serialized_end=674
  _UPDATECONTESTINPUT._serialized_start=677
  _UPDATECONTESTINPUT._serialized_end=1069
  _UPDATECONTESTINPUT_PATCH._serialized_start=815
  _UPDATECONTESTINPUT_PATCH._serialized_end=1069
  _UPDATECONTESTOUTPUT._serialized_start=1071
  _UPDATECONTESTOUTPUT._serialized_end=1092
  _DESCRIBECONTESTINPUT._serialized_start=1094
  _DESCRIBECONTESTINPUT._serialized_end=1136
  _DESCRIBECONTESTOUTPUT._serialized_start=1138
  _DESCRIBECONTESTOUTPUT._serialized_end=1201
  _LOOKUPCONTESTINPUT._serialized_start=1203
  _LOOKUPCONTESTINPUT._serialized_end=1236
  _LOOKUPCONTESTOUTPUT._serialized_start=1238
  _LOOKUPCONTESTOUTPUT._serialized_end=1353
  _LISTCONTESTSINPUT._serialized_start=1356
  _LISTCONTESTSINPUT._serialized_end=2302
  _LISTCONTESTSINPUT_FILTER._serialized_start=1465
  _LISTCONTESTSINPUT_FILTER._serialized_end=2302
  _LISTCONTESTSOUTPUT._serialized_start=2304
  _LISTCONTESTSOUTPUT._serialized_end=2377
  _OPENCONTESTINPUT._serialized_start=2379
  _OPENCONTESTINPUT._serialized_end=2417
  _OPENCONTESTOUTPUT._serialized_start=2419
  _OPENCONTESTOUTPUT._serialized_end=2438
  _CLOSECONTESTINPUT._serialized_start=2440
  _CLOSECONTESTINPUT._serialized_end=2479
  _CLOSECONTESTOUTPUT._serialized_start=2481
  _CLOSECONTESTOUTPUT._serialized_end=2501
  _SUSPENDCONTESTINPUT._serialized_start=2503
  _SUSPENDCONTESTINPUT._serialized_end=2544
  _SUSPENDCONTESTOUTPUT._serialized_start=2546
  _SUSPENDCONTESTOUTPUT._serialized_end=2568
  _FREEZECONTESTINPUT._serialized_start=2570
  _FREEZECONTESTINPUT._serialized_end=2610
  _FREEZECONTESTOUTPUT._serialized_start=2612
  _FREEZECONTESTOUTPUT._serialized_end=2633
  _RESUMECONTESTINPUT._serialized_start=2635
  _RESUMECONTESTINPUT._serialized_end=2675
  _RESUMECONTESTOUTPUT._serialized_start=2677
  _RESUMECONTESTOUTPUT._serialized_end=2698
  _JOINCONTESTINPUT._serialized_start=2700
  _JOINCONTESTINPUT._serialized_end=2738
  _JOINCONTESTOUTPUT._serialized_start=2740
  _JOINCONTESTOUTPUT._serialized_end=2759
  _STARTCONTESTINPUT._serialized_start=2761
  _STARTCONTESTINPUT._serialized_end=2800
  _STARTCONTESTOUTPUT._serialized_start=2802
  _STARTCONTESTOUTPUT._serialized_end=2822
  _IMPORTPROBLEMINPUT._serialized_start=2824
  _IMPORTPROBLEMINPUT._serialized_end=2951
  _IMPORTPROBLEMOUTPUT._serialized_start=2953
  _IMPORTPROBLEMOUTPUT._serialized_end=2994
  _SYNCPROBLEMINPUT._serialized_start=2996
  _SYNCPROBLEMINPUT._serialized_end=3054
  _SYNCPROBLEMOUTPUT._serialized_start=3056
  _SYNCPROBLEMOUTPUT._serialized_end=3075
  _UPDATEPROBLEMINPUT._serialized_start=3078
  _UPDATEPROBLEMINPUT._serialized_end=3206
  _UPDATEPROBLEMOUTPUT._serialized_start=3208
  _UPDATEPROBLEMOUTPUT._serialized_end=3229
  _DELETEPROBLEMINPUT._serialized_start=3231
  _DELETEPROBLEMINPUT._serialized_end=3291
  _DELETEPROBLEMOUTPUT._serialized_start=3293
  _DELETEPROBLEMOUTPUT._serialized_end=3314
  _RETESTPROBLEMINPUT._serialized_start=3316
  _RETESTPROBLEMINPUT._serialized_end=3376
  _RETESTPROBLEMOUTPUT._serialized_start=3378
  _RETESTPROBLEMOUTPUT._serialized_end=3399
  _LISTPROBLEMSINPUT._serialized_start=3401
  _LISTPROBLEMSINPUT._serialized_end=3470
  _LISTPROBLEMSOUTPUT._serialized_start=3472
  _LISTPROBLEMSOUTPUT._serialized_end=3545
  _DESCRIBEPROBLEMINPUT._serialized_start=3547
  _DESCRIBEPROBLEMINPUT._serialized_end=3631
  _DESCRIBEPROBLEMOUTPUT._serialized_start=3633
  _DESCRIBEPROBLEMOUTPUT._serialized_end=3696
  _LISTSTATEMENTSINPUT._serialized_start=3698
  _LISTSTATEMENTSINPUT._serialized_end=3759
  _LISTSTATEMENTSOUTPUT._serialized_start=3761
  _LISTSTATEMENTSOUTPUT._serialized_end=3846
  _LISTATTACHMENTSINPUT._serialized_start=3848
  _LISTATTACHMENTSINPUT._serialized_end=3910
  _LISTATTACHMENTSOUTPUT._serialized_start=3912
  _LISTATTACHMENTSOUTPUT._serialized_end=3999
  _LISTEXAMPLESINPUT._serialized_start=4001
  _LISTEXAMPLESINPUT._serialized_end=4060
  _LISTEXAMPLESOUTPUT._serialized_start=4062
  _LISTEXAMPLESOUTPUT._serialized_end=4140
  _ADDPARTICIPANTINPUT._serialized_start=4142
  _ADDPARTICIPANTINPUT._serialized_end=4231
  _ADDPARTICIPANTOUTPUT._serialized_start=4233
  _ADDPARTICIPANTOUTPUT._serialized_end=4279
  _ENABLEPARTICIPANTINPUT._serialized_start=4281
  _ENABLEPARTICIPANTINPUT._serialized_end=4349
  _ENABLEPARTICIPANTOUTPUT._serialized_start=4351
  _ENABLEPARTICIPANTOUTPUT._serialized_end=4376
  _DISABLEPARTICIPANTINPUT._serialized_start=4378
  _DISABLEPARTICIPANTINPUT._serialized_end=4447
  _DISABLEPARTICIPANTOUTPUT._serialized_start=4449
  _DISABLEPARTICIPANTOUTPUT._serialized_end=4475
  _UPDATEPARTICIPANTINPUT._serialized_start=4478
  _UPDATEPARTICIPANTINPUT._serialized_end=4750
  _UPDATEPARTICIPANTINPUT_PATCH._serialized_start=4655
  _UPDATEPARTICIPANTINPUT_PATCH._serialized_end=4750
  _UPDATEPARTICIPANTOUTPUT._serialized_start=4752
  _UPDATEPARTICIPANTOUTPUT._serialized_end=4777
  _REMOVEPARTICIPANTINPUT._serialized_start=4779
  _REMOVEPARTICIPANTINPUT._serialized_end=4847
  _REMOVEPARTICIPANTOUTPUT._serialized_start=4849
  _REMOVEPARTICIPANTOUTPUT._serialized_end=4874
  _VERIFYPASSCODEINPUT._serialized_start=4876
  _VERIFYPASSCODEINPUT._serialized_end=4917
  _VERIFYPASSCODEOUTPUT._serialized_start=4919
  _VERIFYPASSCODEOUTPUT._serialized_end=4974
  _ENTERPASSCODEINPUT._serialized_start=4976
  _ENTERPASSCODEINPUT._serialized_end=5034
  _ENTERPASSCODEOUTPUT._serialized_start=5036
  _ENTERPASSCODEOUTPUT._serialized_end=5057
  _RESETPASSCODEINPUT._serialized_start=5059
  _RESETPASSCODEINPUT._serialized_end=5123
  _RESETPASSCODEOUTPUT._serialized_start=5125
  _RESETPASSCODEOUTPUT._serialized_end=5164
  _SETPASSCODEINPUT._serialized_start=5166
  _SETPASSCODEINPUT._serialized_end=5246
  _SETPASSCODEOUTPUT._serialized_start=5248
  _SETPASSCODEOUTPUT._serialized_end=5267
  _REMOVEPASSCODEINPUT._serialized_start=5269
  _REMOVEPASSCODEINPUT._serialized_end=5334
  _REMOVEPASSCODEOUTPUT._serialized_start=5336
  _REMOVEPASSCODEOUTPUT._serialized_end=5358
  _LISTPARTICIPANTSINPUT._serialized_start=5361
  _LISTPARTICIPANTSINPUT._serialized_end=6105
  _LISTPARTICIPANTSINPUT_FILTER._serialized_start=5602
  _LISTPARTICIPANTSINPUT_FILTER._serialized_end=6026
  _LISTPARTICIPANTSINPUT_SORTABLE._serialized_start=6028
  _LISTPARTICIPANTSINPUT_SORTABLE._serialized_end=6105
  _LISTPARTICIPANTSOUTPUT._serialized_start=6107
  _LISTPARTICIPANTSOUTPUT._serialized_end=6188
  _INTROSPECTPARTICIPANTINPUT._serialized_start=6190
  _INTROSPECTPARTICIPANTINPUT._serialized_end=6238
  _INTROSPECTPARTICIPANTOUTPUT._serialized_start=6240
  _INTROSPECTPARTICIPANTOUTPUT._serialized_end=6317
  _DESCRIBEPARTICIPANTINPUT._serialized_start=6319
  _DESCRIBEPARTICIPANTINPUT._serialized_end=6389
  _DESCRIBEPARTICIPANTOUTPUT._serialized_start=6391
  _DESCRIBEPARTICIPANTOUTPUT._serialized_end=6466
  _CREATESUBMISSIONINPUT._serialized_start=6468
  _CREATESUBMISSIONINPUT._serialized_end=6561
  _CREATESUBMISSIONOUTPUT._serialized_start=6563
  _CREATESUBMISSIONOUTPUT._serialized_end=6610
  _LISTSUBMISSIONSINPUT._serialized_start=6613
  _LISTSUBMISSIONSINPUT._serialized_end=7273
  _LISTSUBMISSIONSINPUT_FILTER._serialized_start=6796
  _LISTSUBMISSIONSINPUT_FILTER._serialized_end=7273
  _LISTSUBMISSIONSOUTPUT._serialized_start=7275
  _LISTSUBMISSIONSOUTPUT._serialized_end=7354
  _DESCRIBESUBMISSIONINPUT._serialized_start=7356
  _DESCRIBESUBMISSIONINPUT._serialized_end=7472
  _DESCRIBESUBMISSIONOUTPUT._serialized_start=7474
  _DESCRIBESUBMISSIONOUTPUT._serialized_end=7546
  _WATCHSUBMISSIONINPUT._serialized_start=7548
  _WATCHSUBMISSIONINPUT._serialized_end=7661
  _WATCHSUBMISSIONOUTPUT._serialized_start=7663
  _WATCHSUBMISSIONOUTPUT._serialized_end=7732
  _RETESTSUBMISSIONINPUT._serialized_start=7734
  _RETESTSUBMISSIONINPUT._serialized_end=7800
  _RETESTSUBMISSIONOUTPUT._serialized_start=7802
  _RETESTSUBMISSIONOUTPUT._serialized_end=7826
  _DELETESUBMISSIONINPUT._serialized_start=7828
  _DELETESUBMISSIONINPUT._serialized_end=7894
  _DELETESUBMISSIONOUTPUT._serialized_start=7896
  _DELETESUBMISSIONOUTPUT._serialized_end=7920
  _RESTORESUBMISSIONINPUT._serialized_start=7922
  _RESTORESUBMISSIONINPUT._serialized_end=7989
  _RESTORESUBMISSIONOUTPUT._serialized_start=7991
  _RESTORESUBMISSIONOUTPUT._serialized_end=8016
  _CONFIGURERUNTIMEINPUT._serialized_start=8018
  _CONFIGURERUNTIMEINPUT._serialized_end=8078
  _CONFIGURERUNTIMEOUTPUT._serialized_start=8080
  _CONFIGURERUNTIMEOUTPUT._serialized_end=8104
  _DESCRIBERUNTIMEINPUT._serialized_start=8106
  _DESCRIBERUNTIMEINPUT._serialized_end=8148
  _DESCRIBERUNTIMEOUTPUT._serialized_start=8150
  _DESCRIBERUNTIMEOUTPUT._serialized_end=8190
  _CREATEANNOUNCEMENTINPUT._serialized_start=8192
  _CREATEANNOUNCEMENTINPUT._serialized_end=8287
  _CREATEANNOUNCEMENTOUTPUT._serialized_start=8289
  _CREATEANNOUNCEMENTOUTPUT._serialized_end=8327
  _UPDATEANNOUNCEMENTINPUT._serialized_start=8329
  _UPDATEANNOUNCEMENTINPUT._serialized_end=8449
  _UPDATEANNOUNCEMENTOUTPUT._serialized_start=8451
  _UPDATEANNOUNCEMENTOUTPUT._serialized_end=8477
  _DELETEANNOUNCEMENTINPUT._serialized_start=8479
  _DELETEANNOUNCEMENTINPUT._serialized_end=8549
  _DELETEANNOUNCEMENTOUTPUT._serialized_start=8551
  _DELETEANNOUNCEMENTOUTPUT._serialized_end=8577
  _READANNOUNCEMENTINPUT._serialized_start=8579
  _READANNOUNCEMENTINPUT._serialized_end=8647
  _READANNOUNCEMENTOUTPUT._serialized_start=8649
  _READANNOUNCEMENTOUTPUT._serialized_end=8673
  _DESCRIBEANNOUNCEMENTINPUT._serialized_start=8675
  _DESCRIBEANNOUNCEMENTINPUT._serialized_end=8797
  _DESCRIBEANNOUNCEMENTOUTPUT._serialized_start=8799
  _DESCRIBEANNOUNCEMENTOUTPUT._serialized_end=8877
  _DESCRIBEANNOUNCEMENTSTATUSINPUT._serialized_start=8879
  _DESCRIBEANNOUNCEMENTSTATUSINPUT._serialized_end=8957
  _DESCRIBEANNOUNCEMENTSTATUSOUTPUT._serialized_start=8959
  _DESCRIBEANNOUNCEMENTSTATUSOUTPUT._serialized_end=9010
  _LISTANNOUNCEMENTSINPUT._serialized_start=9013
  _LISTANNOUNCEMENTSINPUT._serialized_end=9304
  _LISTANNOUNCEMENTSINPUT_FILTER._serialized_start=9201
  _LISTANNOUNCEMENTSINPUT_FILTER._serialized_end=9304
  _LISTANNOUNCEMENTSOUTPUT._serialized_start=9306
  _LISTANNOUNCEMENTSOUTPUT._serialized_end=9389
  _DESCRIBECODETEMPLATEINPUT._serialized_start=9391
  _DESCRIBECODETEMPLATEINPUT._serialized_end=9501
  _DESCRIBECODETEMPLATEOUTPUT._serialized_start=9503
  _DESCRIBECODETEMPLATEOUTPUT._serialized_end=9573
  _LOOKUPCODETEMPLATEINPUT._serialized_start=9575
  _LOOKUPCODETEMPLATEINPUT._serialized_end=9679
  _LOOKUPCODETEMPLATEOUTPUT._serialized_start=9681
  _LOOKUPCODETEMPLATEOUTPUT._serialized_end=9749
  _REBUILDSCOREINPUT._serialized_start=9751
  _REBUILDSCOREINPUT._serialized_end=9790
  _REBUILDSCOREOUTPUT._serialized_start=9792
  _REBUILDSCOREOUTPUT._serialized_end=9833
  _INTROSPECTSCOREINPUT._serialized_start=9835
  _INTROSPECTSCOREINPUT._serialized_end=9877
  _INTROSPECTSCOREOUTPUT._serialized_start=9879
  _INTROSPECTSCOREOUTPUT._serialized_end=9938
  _DESCRIBESCOREINPUT._serialized_start=9941
  _DESCRIBESCOREINPUT._serialized_end=10074
  _DESCRIBESCOREOUTPUT._serialized_start=10076
  _DESCRIBESCOREOUTPUT._serialized_end=10133
  _IMPORTSCOREINPUT._serialized_start=10135
  _IMPORTSCOREINPUT._serialized_end=10234
  _IMPORTSCOREOUTPUT._serialized_start=10236
  _IMPORTSCOREOUTPUT._serialized_end=10255
  _EXPORTSCOREINPUT._serialized_start=10257
  _EXPORTSCOREINPUT._serialized_end=10319
  _EXPORTSCOREOUTPUT._serialized_start=10321
  _EXPORTSCOREOUTPUT._serialized_end=10377
  _LISTRESULTINPUT._serialized_start=10380
  _LISTRESULTINPUT._serialized_end=10516
  _LISTRESULTOUTPUT._serialized_start=10518
  _LISTRESULTOUTPUT._serialized_end=10588
  _LISTACTIVITIESINPUT._serialized_start=10590
  _LISTACTIVITIESINPUT._serialized_end=10661
  _LISTACTIVITIESOUTPUT._serialized_start=10663
  _LISTACTIVITIESOUTPUT._serialized_end=10739
  _CONFIGUREAPPEARANCEINPUT._serialized_start=10741
  _CONFIGUREAPPEARANCEINPUT._serialized_end=10841
  _CONFIGUREAPPEARANCEOUTPUT._serialized_start=10843
  _CONFIGUREAPPEARANCEOUTPUT._serialized_end=10870
  _DESCRIBEAPPEARANCEINPUT._serialized_start=10872
  _DESCRIBEAPPEARANCEINPUT._serialized_end=10917
  _DESCRIBEAPPEARANCEOUTPUT._serialized_start=10919
  _DESCRIBEAPPEARANCEOUTPUT._serialized_end=10999
  _DESCRIBECONTESTUSAGEINPUT._serialized_start=11001
  _DESCRIBECONTESTUSAGEINPUT._serialized_end=11126
  _DESCRIBECONTESTUSAGEOUTPUT._serialized_start=11128
  _DESCRIBECONTESTUSAGEOUTPUT._serialized_end=11231
  _JUDGE._serialized_start=11234
  _JUDGE._serialized_end=22075
# @@protoc_insertion_point(module_scope)
