en:
  activerecord:
    attributes:
      codeharbor_link:
        oauth2token: OAuth2 Token
      consumer:
        name: Name
        oauth_key: OAuth Key
        oauth_secret: OAuth Secret
        rfc_visibility: Visibility of Request for Comments
        rfc_visibility_type:
          all: All Requests for Comments are visible
          consumer: Only Requests for Comments of the current consumer are visible
          study_group: Only Requests for Comments of the current study group are visible
      execution_environment:
        docker_image: Docker Image
        exposed_ports: Exposed Ports
        exposed_ports_list: Exposed Ports
        file_type: Default File Type
        file_type_id: Default File Type
        help: Help Text
        memory_limit: Memory Limit (in MB)
        cpu_limit: CPU Limit (in MHz)
        name: Name
        network_enabled: Network Enabled
        permitted_execution_time: Permitted Execution Time (in Seconds)
        pool_size: Prewarming Pool Size
        run_command: Run Command
        test_command: Test Command
        testing_framework: Testing Framework
        user: Author
        privileged_execution: Privileged Execution as "root"
      exercise:
        average_score_percentage: "Average Score Percentage"
        description: Description
        distinct_final_submissions: "Distinct Final Submissions"
        embedding_parameters: LTI Embedding Parameters
        finishing_rate: "Finishing Rate"
        tags: Tags
        execution_environment: Execution Environment
        execution_environment_id: Execution Environment
        files: Files
        hide_file_tree: Hide File Tree
        instructions: Instructions
        maximum_score: Maximum Score
        submission_deadline: Submission Deadline
        late_submission_deadline: Late Submission Deadline
        number_of_users_and_programming_groups: "# Users and Programming Groups"
        public: Public
        selection: Selected
        title: Title
        user: Author
        allow_auto_completion: "Allow auto completion"
        allow_file_creation: "Allow file creation"
        difficulty: Difficulty
        token: "Exercise Token"
        uuid: UUID
        unpublished: Unpublished
      programming_group:
        programming_partner_id: Programming Partner ID
      programming_group/programming_group_memberships:
        base: Programming Group Membership
      proxy_exercise:
        title: Title
        files_count: Exercises Count
        algorithm: Algorithm
        algorithm_type:
          best_match: Best Match
          random: Random Exercise
      external_user:
        consumer: Consumer
        email: Email
        external_id: External ID
        name: Name
        platform_admin: Platform Admin
      file:
        content: Content
        feedback_message: Feedback Message
        file_type: File Type
        file_type_id: File Type
        hidden: Hidden
        hidden_feedback: Suppress feedback
        name: Name
        path: Path
        read_only: Read-only
        role: Role
        weight: Score
        file_template_id: "File Template"
      file_type:
        binary: Binary
        editor_mode: Editor Mode
        executable: Executable
        file_extension: File Extension
        indent_size: Indent Size
        name: Name
        renderable: Renderable
        user: Author
      hint:
        locale: Locale
        message: Message
        name: Name
        regular_expression: Regular Expression
      intervention:
        name: Name
      internal_user:
        activated: Activated
        consumer: Consumer
        consumer_id: Consumer
        email: Email
        name: Name
        password: Password
        password_confirmation: Passwort Confirmation
        platform_admin: Platform Admin
      request_for_comments:
        comments: Comments
        exercise: Exercise
        execution_environment: Language
        username: Username
        requested_at: Request Date
        question: "Question"
        close: Close window
        last_update: "Last Update"
      submission:
        cause: Cause
        code: Code
        contributor: Contributor
        exercise: Exercise
        files: Files
        score: Score
        study_group: Study Group
      study_group:
        name: Name
        external_id: External ID
        consumer: Consumer
        members: Members
        member_count: Member Count
        selection: Selected
      study_group_membership:
        role: Role
        role_type:
          learner: Learner
          teacher: Teacher
      tag:
        name: Name
        usage: Used
        difficulty: Share on the Exercise
      tip:
        title: Title
        description: Description
        example: Example
      exercise_tip:
        tip: Tip
        exercise: Exercise
        rank: Rank
        parent_exercise_tip: Parent Tip
      file_template:
        name: "Name"
        file_type: "File Type"
        content: "Content"
      error_template:
        name: Name
        signature: Signature Regular Expression
        description: Description
        hint: Hint
      error_template_attribute:
        important: "Important"
        key: "Identifier"
        description: "Description"
        regex: "Regular Expression"
      exercise_collections:
        id: "ID"
        name: "Name"
        user: "Associated User"
        use_anomaly_detection: "Enable Worktime Anomaly Detection"
        updated_at: "Last Update"
        exercises: "Exercises"
        solutions: "Solution Attempts (accumulated)"
        submissions: "Submissions (accumulated)"
        users_and_programming_groups: "Users and Programming Groups"
      user_exercise_feedback:
        user: "Author"
        exercise: "Exercise"
        feedback_text: "Feedback Text"
      exercise_collection_item:
        exercise: "Exercise"
    models:
      community_solution:
        one: Community Solution
        other: Community Solutions
      codeharbor_link:
        one: CodeHarbor Link
        other: CodeHarbor Links
      consumer:
        one: Consumer
        other: Consumers
      error_template:
        one: Error Template
        other: Error Templates
      error_template_attribute:
        one: Error Template Attribute
        other: Error Template Attributes
      execution_environment:
        one: Execution Environment
        other: Execution Environments
      exercise:
        one: Exercise
        other: Exercises
      exercise_collection:
        one: Exercise Collection
        other: Exercise Collections
      proxy_exercise:
        one: Proxy Exercise
        other: Proxy Exercises
      external_user:
        one: External User
        other: External Users
      code_ocean/file:
        one: File
        other: Files
      file_template:
        one: File Template
        other: File Templates
      file_type:
        one: File Type
        other: File Types
      hint:
        one: Hint
        other: Hints
      internal_user:
        one: Internal User
        other: Internal Users
      pair_programming_exercise_feedback:
        one: Feedback
        other: Feedbacks
      programming_group:
        one: Programming Group
        other: Programming Groups
      programming_group_membership:
        one: Programming Group Membership
        other: Programming Group Memberships
      request_for_comment:
        one: Request for Comments
        other: Requests for Comments
      submission:
        one: Submission
        other: Submissions
      study_group:
        one: Study Group
        other: Study Groups
      tip:
        one: Tip
        other: Tips
      tag:
        one: Tag
        other: Tags
      user_exercise_feedback:
        one: Feedback
        other: Feedback
      comment:
        one: Comment
        other: Comments
    errors:
      messages:
        together: 'has to be set along with %{attribute}'
        at_least: 'or %{attribute} must be defined'
      models:
        exercise:
          at_most_one_main_file: must include at most one main file
          late_submission_deadline_not_alone: must not be used without a regular submission deadline
          late_submission_deadline_not_before_submission_deadline: must not be before the submission deadline passed
        internal_user:
          attributes:
            password:
              weak: is too weak. Try to use a long password with upper and lower case letters, numbers and special characters.
        programming_group:
          size_too_large: The size of this programming group is too large. Enter at most one other user ID to work with.
          size_too_small: The size of this programming group is too small. Enter at least one other user ID to work with.
          invalid_partner_id: The user ID '%{partner_id}' is invalid and was removed. Please check the user IDs of your programming partners.
        programming_group_membership:
          already_exists: 'already exists for this exercise for the user with ID %{id_with_type}.'
  admin:
    dashboard:
      show:
        release: Release
        current: Current Availability
        history: Usage History
        inactive: No runner management is currently enabled.
        idleRunners: Idle Runners
        usedRunners: Reserved Runners
  application:
    not_authorized: You are not authorized to perform this action.
    not_found: The requested resource could not be found.
    welcome:
      text_signed_in_as_external_user: 'Please access %{application_name} from an e-learning platform.'
      text_signed_in_as_internal_user: 'Good to see you, %{user_name}!'
      text_signed_out: 'If you are a learner, please access %{application_name} from an e-learning platform. If you are an instructor, <a href="%{sign_in_path}">please sign in</a>.'
      title: 'Welcome to %{application_name}'
  breadcrumbs:
    application:
      welcome: Cover Page
    dashboard:
      show: Dashboard
    sessions:
      new: Sign In
      create: Sign In
      destroy_through_lti: Code Submission
    statistics:
      show: "Statistics"
      graphs: "Graphs"
      user_activity_history: User Activity History
      rfc_activity_history: RfC Activity History
    rails_admin:
      show: "Rails Admin"
  community_solutions:
    help_us_out: Help us out!
    explanation: In this course, we would like to work together with you and all other learners to create a community solution for this exercise, which will be made available to all participants at the end of the course. For this we need your active support. Below you will find both the current status of the community solution and your submission. Please review the community solution and revise it as needed. Your own solution will not be changed.
    research_status: 'New beta feature:'
    research_explanation: The opportunity to participate in a community solution is part of our research; therefore, we would greatly appreciate your active participation.
    current_community_solution: Current community solution
    your_submission: Your submission (read-only, for reference)
    change_community_solution: Save Changes to Community Solution
    accept_community_solution: Quit Community Solution without Changes
  consumers:
    show:
      link: Consumer
  codeharbor_link:
    generate: Generate
    info:
      push_url: The url from CodeHarbor where your exercise can be exported to. If you don't know what to write here, ask an admin.
      check_uuid_url: The url from CodeHarbor where we can check if the exercise already exists. If you don't know what to write here, ask an admin.
      api_key: Will be used to authenticate your export request. Has to be the same on both sides.
    profile_label: CodeHarbor Link
    new: Create link to CodeHarbor
    edit: Edit existing CodeHarbor link
    delete: Remove CodeHarbor link
  execution_environments:
    form:
      hints:
        command: "<em>filename</em> is automatically replaced with the correct filename. The following character is disallowed: ' (single quote)"
        docker_image: Pick a Docker image listed above or add a new one which is available via <a href="https://hub.docker.com/" target="_blank" rel="noopener">DockerHub</a>.
        exposed_ports_list: During code execution these ports are accessible for the user. Port numbers must be numeric and separated by a comma.
        cpu_limit: Specify the minimum amount of CPU shares to reserve for each runner, measured in MHz.
      errors:
        not_synced_to_runner_management: The execution environment was created but not synced to the runner management due to an error.
    index:
      shell: Shell
      synchronize:
        button: Synchronize
        success: The execution environment was synchronized successfully.
        failure: "The execution environment could not be synchronised due to the following error: %{error}"
      synchronize_all:
        button: Synchronize all
        success: All execution environments were synchronized successfully.
        failure: At least one execution environment could not be synchronised due to an error.
    shell:
      command: Command
      headline: Shell
      file_tree:
        reload: Reload
        reload_tooltip: Reload the file system of the runner. This action might take a few seconds.
        list_now: List now.
        headline: File System
        empty: The file system has not been queried yet.
        root_notice: Files are retrieved with a non-privileged user by default. To retrieve files as "root", you must enable the "sudo" switch shown next to the command input and then reload the file system before accessing any file.
        permission_denied: Access to the requested file has been denied. Please verify that the file exists, the current user has read permissions, and try requesting the file with "root" privileges if necessary.  To retrieve files as "root", you must enable the "sudo" switch shown next to the command input and then reload the file system before accessing any file.
    statistics:
      exercise: Exercise
      users_and_programming_groups: Users and Programming Groups Count
      score: Average Score
      stddev_score: stddev (score)
      stddev_worktime: stddev (working time)
      maximum_score: Maximum Score
      percentage_correct: Percentage Correct
      runs: Average Number of Runs
      worktime: Average Working Time
  exercises:
    editor:
      collapse_action_sidebar: Collapse Action Sidebar
      collapse_output_sidebar: Collapse Output Sidebar
      confirm_start_over: Do you really want to start over? Your previous changes in this exercise will be reset; other exercises remain untouched. You cannot undo this action.
      confirm_start_over_active_file: Do you really want to remove any changes in the active file '%{filename}'? You cannot undo this action.
      confirm_submit: Do you really want to submit your code for grading?
      create_file: New File
      depleted: All execution environments are busy. Please try again later.
      destroy_file: Delete File
      download: Download
      dummy: No Action
      expand_action_sidebar: Expand Action Sidebar
      expand_output_sidebar: Expand Output Sidebar
      input: Your input
      is_offline: "%{name} is offline"
      is_online: "%{name} is online"
      lastsaved: 'Last saved: '
      network: 'While your code is running, port %{port} is accessible using the following address: <a href="%{address}" target="_blank" rel="noopener">%{address}</a>.'
      pair_programming_session: Pair Programming Session
      render: Render
      run: Run
      run_failure: Your code could not be run.
      run_success: Your code was run on our servers.
      requestComments: Request Comments
      requestCommentsTooltip: If you need help with your code, you can now request comments here!
      save: Save
      score: Score
      send: Send
      start_over: Reset this exercise
      start_over_active_file: Reset this file
      start_video: Start video chat
      stop: Stop
      submit: Submit Code For Assessment
      deadline: Deadline
      submit_on_time: Submit Code for Assessment on Time
      submit_within_grace_period: Submit Code for Assessment Within Grace Period
      submit_after_late_deadline: Submit Code for Assessment After Deadline Passed
      test: Test
      timeout: 'Execution stopped. Your code exceeded the permitted execution time of %{permitted_execution_time} seconds.'
      out_of_memory: 'Execution stopped. Your code exceeded the permitted RAM usage of %{memory_limit} MB.'
      exercise_deadline_passed: 'The score cannot be submitted.'
      tooltips:
        save: Your code is automatically saved whenever you download, run, or test it. Therefore, explicitly saving is rarely necessary.
        exercise_deadline_passed: 'Either the deadline has already passed or you did not directly access this page from the e-learning platform. (Did you use the Back button of your browser after submitting the score?)'
      request_for_comments_sent: "Request for comments sent."
      hints:
        submission_deadline: This exercise is due <b>%{deadline}</b>.<br/><small>Click 'submit' to transfer your score to the e-learning platform before this deadline passes. %{otherwise}</small>
        late_submission_deadline: Until <b>%{deadline}</b>, 80% of your score will be awarded.<br/><small>If you miss this extended deadline and submit your score afterwards, 0 points will be transmitted.</small>
        otherwise: Otherwise, a score of 0 points will be transmitted.
        disclaimer: If unsure about a deadline, please contact a course instructor. The deadline shown here is only informational and information from the e-learning platform should always take precedence.
    editor_file_tree:
      file_root: Files
    download_file_tree:
      file_root: Generated Files
      gone: The requested file could not be retrieved. Generated files are only held for a short time and are then deleted. Please run the code again and then try downloading the file a second time.
    import_codeharbor:
      import_errors:
        invalid: Invalid exercise
        internal_error: An internal error occurred on CodeOcean while importing the exercise.
    export_codeharbor:
      label: Export to CodeHarbor
      dialogtitle: Export to CodeHarbor
      successfully_exported: 'Exercise has been successfully exported.<br>ID: %{id}<br>Title: %{title}'
      export_failed: 'Export has failed.<br>ID: %{id}<br>Title: %{title}<br><br>Error: %{error}'
      error: 'An error occurred while contacting CodeHarbor'
      checking_codeharbor: Checking if the exercise exists on CodeHarbor.
      buttons:
        retry: Retry
        export: Export
        close: Close
        abort: Abort
      check:
        no_task: No corresponding task found on CodeHarbor. Pushing this exercise will create a new task on CodeHarbor, which will be linked to this one on CodeOcean. Any changes to either one can be pushed to the respective other platform.
        task_found: 'A corresponding task has been found on CodeHarbor. You can export the exercise to transfer all changes made on CodeOcean to CodeHarbor. Careful: This will overwrite all potential changes made on CodeHarbor.'
        task_found_no_right: A corresponding task has been found on CodeHarbor, but you don't have the rights to edit it. Please contact an Admin if you think you should be able to edit the task on CodeHarbor.
    file_form:
      hints:
        feedback_message: This message is used as a hint for failing tests.
        path: "The file's path in the project tree. Can be left blank."
        upload: An uploaded file takes precedence over changes in the text area and will be visible once saved. The resulting file name and file type will be set to match the uploaded file automatically.
    form:
      add_file: Add file
      add_tips: Add tips
      tips: Tips
      tags: Tags
      click_to_collapse: "Click to expand/collapse..."
      unpublish_warning: This will unpublish the exercise. Any student trying to implement it will get an error message, until it is published again.
      no_execution_environment_selected: Select an execution environment before publishing the exercise.
      none: None
      hints:
        submission_deadline: A date and time in UTC to close the submission. Any submission obtained after the deadline will be considered late and the score sent to the e-learning platform will be reduced by 20%.
        late_submission_deadline: A grace period for submissions in UTC. The late submission deadline should not be set or any timestamp before the original submission deadline. Any submission obtained after the deadline will be clearly marked and the score sent to the e-learning platform will be reduced by 100%.
    implement:
      alert:
        text: 'Your browser does not support features required for using %{application_name}. Please access %{application_name} using a modern browser.'
        title: Your browser is not supported!
      default_test_feedback: Well done. All tests have been passed.
      default_linter_feedback: Well done. The linter is completly satisfied.
      error_messages: Error Messages
      existing_programming_group: You are currently working on the exercise entitled '%{exercise}' as part of a programming group. Please finish your work there by scoring and submitting your code before you start implementing this exercise.
      external_privacy_policy: By using the video chat, you agree to the <a href=%{url}> external privacy policy</a>.
      messages: Messages
      feedback: Feedback
      test_file: 'Test File <span class="number">%{number}</span> (<span class="filename">%{filename}</span>)'
      linter_file: 'Linter Feedback <span class="number d-none">%{number}</span>(<span class="filename">%{filename}</span>)'
      not_graded: not graded
      hint: Hint
      no_files: The exercise does not comprise visible files yet.
      no_execution_environment: No execution environment has been selected for the exercise yet.
      no_output: The last code run finished on %{timestamp} without any output.
      no_output_exit_successful: The last code run finished on %{timestamp} without any output and exited successfully (status code %{exit_code}).
      no_output_exit_failure: The last code run finished on %{timestamp} without any output and exited with a failure (status code %{exit_code}).
      exit_successful: The last code run exited successfully (status code %{exit_code}).
      exit_failure: The last code run exited with a failure (status code %{exit_code}).
      no_output_yet: There is no output yet.
      output: Program Output
      pair_programming_feedback: If you notice any errors with the pair programming feature, feel free to <a target='_blank', href=%{url}>write them down here</a>. Thanks a lot!
      passed_tests: Passed Tests
      code_rating: Code Rating
      progress: Progress
      results: Results
      start: Start Coding
      test_count: '<span class="number">%{count}</span> test files have been executed.'
      unpublished: The selected exercise has been deactivated. Hence, you cannot implement this exercise at the moment.
      workspace: Workspace
      comment:
        a_comment: comment
        line: line
        dialogtitle: Comment on this line
        others: Other comments on this line
        addyours: Add your comment
        addCommentExercise: Comment this exercise
        addComment: You can give feedback to this exercise. Keep in mind that this should refer to the exercise and not to the solution of the participant. Did you find this exercise particulary easy or difficult? Was the description sufficient?
        addCommentButton: Comment this
        removeAllOnLine: Remove my comments on this line
        listing: Listing the newest comment requests
        request: "Request Comments"
        question: 'Please shortly describe your problem or the program part you would like to get feedback for. Your program code and potential error messages are automatically appended to your request.'
      intervention:
        explanation: "This message appears because you have been working on this exercise for %{duration} minutes. 25% of your fellow learners took more time to solve the exercise, so in that sense it's not a problem, but this has proven to be an <a href='https://hpi.de/en/research/publications/dissertations/dissertation-ralf-teusner.html' style='display: contents;' target='_blank' rel='noopener'>effective time for this message</a>."
      rfc_intervention:
        text: "If you are struggling with this exercise and don't want to continue on your own, your fellow learners can help out! </br> </br>"
      break_intervention:
        title: "Break"
        text: "If you are struggling with this exercise, you may take a break at any time and continue later. Your progress in CodeOcean is automatically saved."
      tips_intervention:
        text: "If you are struggling with this exercise, the available tips may help. You can find them at any time in the left sidebar and are also displayed below for your convenience."
      error_hints:
        heading: "Hints"
      tips:
        heading: Tips
        description: Description
        example: Example
      flowr:
        heading: "Gain more insights here | Powered by StackOverflow"
        go_to_question: "Go to answer"
    index:
      clone: Duplicate
      implement: Implement
      test_files: Test Files
      feedback: Feedback
      requests_for_comments: Requests for Comments
      study_group_dashboard: Live Dashboard
      external_user_statistics: External User Statistics
    show:
      is_unpublished: Exercise is unpublished
    statistics:
      average_score: Average Score
      final_submissions: Final Submissions
      intermediate_submissions: Intermediate Submissions
      participants: Participating Users
      users_and_programming_groups: '%{count} distinct users and programming groups'
      user: User
      score: Maximum Score
      deadline: Deadline
      runs: Runs
      worktime: Working Time
      average_worktime: Average Working Time
      internal_users: Internal Users
      external_users: External Users
      programming_groups: Programming Groups
      finishing_rate: Finishing Rate
    submit:
      failure: An error occurred while transmitting your score. Please try again later.
      too_late: Your submission was saved successfully but was received after the deadline passed.
      full_score_redirect_to_rfc: Congratulations! You achieved and submitted the highest possible score for this exercise. Another participant has a question concerning the exercise you just solved. Your help and comments will be greatly appreciated!
      full_score_redirect_to_own_rfc: Congratulations! You achieved and submitted the highest possible score for this exercise. Your question concerning the exercise is solved? If so, please share the essential insight with your fellows and mark the question as solved, before you close this window!
      warning_not_for_all_users_submitted: "The transmission of points was only partially successful. The score was not transmitted for %{user}. The user(s) should reopen the exercise via the e-learning platform and then try to submit the points themselves."
    study_group_dashboard:
      live_dashboard: Live Dashboard
      time_spent_per_learner: Time spent per Learner
      related_requests_for_comments: Related Requests for Comments
      learner: Learner
      time_spent_in_minutes: Time spent in Minutes
      no_data_yet: No data available yet
    external_users:
      statistics:
        no_data_available: No data available or insufficient permissions
        time: Time (UTC)
        cause: Cause
        score: Score
        tests: Unit Test Results
        time_difference: 'Working Time until here*'
        legend: 'Legend:'
        no_deadline: No Deadline
        before_deadline: On Time
        within_grace_period: Within Grace Period
        after_late_deadline: Too Late
        addendum: "* Deltas longer than %{delta} minutes are ignored."
        filter: "Remember: Only the last submission per deadline is shown."
        toggle_autosave_on: Show Autosaves
        toggle_autosave_off: Hide Autosaves
        toggle_status_on: Autosaves are currently visible
        toggle_status_off: Autosaves are currently hidden
  proxy_exercises:
      index:
        clone: Duplicate
  programming_groups:
    form:
      hints:
        programming_partner_ids: "You can enter several user IDs separated by commas such as 'e123, e234'."
    new:
      create_programming_pair: Create Programming Pair
      check_invitation: "Check invitation"
      enter_partner_id: "Please enter the user ID from the practice partner with whom you want to solve the exercise '%{exercise_title}'. However, note that no one can leave the pair afterward. Hence, your team partner can see what you write in this exercise and vice versa. For the next exercise, you can decide again whether and with whom you want to work together."
      find_partner_title: "Find a programming partner for the exercise"
      find_partner_description: "Copy another user ID from the list below and delete it afterward. If there are no user IDs on the list yet, add your user ID and wait for another user to create a programming group with you. You can test this with the 'Check invitation' button. If you decide to work alone, please delete your user ID from the list if you added it before."
      own_user_id: "Your user ID:"
      work_alone: "You can choose once to work on the exercise alone. Afterward, however, you will not be able to switch to work in a pair for this exercise. <a href=%{path}>Click here to get to the exercise in single mode.</a>"
  external_users:
    statistics:
      title: External User Statistics
      exercise: Exercise
      score: Maximum Score
      deadline: Deadline
      runs: Submissions
      worktime: Working Time
    show:
      loading_tag_statistics: "Loading tag statistics..."
      tag_statistics: "Tag Statistics"
      empty_tag_statistics: "No statistics available"
      exercise_statistics: "Exercise Statistics"
    form:
      study_groups: Study Groups
  files:
    roles:
      main_file: Main File
      reference_implementation: Reference Implementation
      regular_file: Regular File
      executable_file: Executable File (similar to Main File)
      teacher_defined_test: Test for Assessment
      user_defined_file: User-defined File
      user_defined_test: User-defined Test
      teacher_defined_linter: Linter for Assessment
    error:
      filename: "The file could not be saved, because another file with the name '%{name}' already exists."
  hints:
    form:
      hints:
        message: This message is used as an error explanation. Placeholders are automatically replaced by regular expression matches.
        regular_expression: This regular expression is used to extract relevant identifiers from the error message.
  internal_users:
    index:
      activate: Activate
      forgot_password: Reset Password
      reset_password: Reset Password
    activate:
      headline: Complete Registration
      submit: Set Password
      success: You successfully completed your registration.
    form:
      study_groups: Study Groups
      click_to_collapse: Click to expand/collapse...
    forgot_password:
      headline: Reset Password
      submit: Send Password Reset Instructions
      success: Instructions to reset your password have been sent to your email address.
    reset_password:
      headline: Reset Password
      submit: Set Password
      success: You successfully changed your password.
    show:
      link: Profile
  locales:
    de: German
    en: English
  mailers:
    user_mailer:
      activation_needed:
        body: 'Please visit %{link} and set up a password in order to complete your registration.'
        subject: Please complete your registration.
      got_new_comment:
        body: |
          English version below <br>
          _________________________<br>
          <br>
          Hallo %{receiver_displayname}, <br>
          <br>
          es gibt einen neuen Kommentar von %{commenting_user_displayname} zu Ihrer Kommentaranfrage auf CodeOcean. <br>
          <br>
          %{commenting_user_displayname} schreibt: %{comment_text}<br>
          <br>
          Sie finden ihre Kommentaranfrage hier: %{link_to_comment} <br>
          <br>
          Eine Übersicht Ihrer Kommentaranfragen gibt es hier: %{link_my_comments} <br>
          Alle Kommentaranfragen aller Benutzer finden Sie hier: %{link_all_comments} <br>
          <br>
          Diese Mail wurde automatisch von CodeOcean verschickt.<br>
          <br>
          _________________________<br>
          <br>
          Dear %{receiver_displayname}, <br>
          <br>
          you received a new comment from %{commenting_user_displayname} to your request for comments on CodeOcean. <br>
          <br>
          %{commenting_user_displayname} wrote: %{comment_text} <br>
          <br>
          You can find your request for comments here: %{link_to_comment} <br>
          <br>
          An overview of all your comments can be accessed here: %{link_my_comments} <br>
          All comments of all participants are available here: %{link_all_comments} <br>
          <br>
          This mail was automatically sent by CodeOcean. <br>
        subject: 'You received a new comment on CodeOcean from %{commenting_user_displayname}.'
      reset_password:
        body: 'Please visit %{link} if you want to reset your password.'
        subject: Password reset instructions
      send_thank_you_note:
        body: |
          English version below <br>
          _________________________<br>
          <br>
          Hallo %{receiver_displayname}, <br>
          <br>
          %{author} hat Ihnen für Ihren Kommentar auf CodeOcean gedankt. <br>
          <br>
          %{author} schreibt: %{thank_you_note}<br>
          <br>
          Sie finden die Kommentaranfrage hier: %{link_to_comment} <br>
          <br>
          Danke, dass Sie anderen Nutzern von CodeOcean helfen!
          <br>
          Diese Mail wurde automatisch von CodeOcean verschickt.<br>
          <br>
          _________________________<br>
          <br>
          Dear %{receiver_displayname}, <br>
          <br>
          %{author} thanks you for your comment. <br>
          <br>
          %{author} wrote: %{thank_you_note} <br>
          <br>
          You can find the request for comments here: %{link_to_comment} <br>
          <br>
          Thank you for helping other users on CodeOcean!
          <br>
          This mail was automatically sent by CodeOcean. <br>
        subject: "%{author} says thank you!"
      got_new_comment_for_subscription:
        body: |
          English version below <br>
          _________________________<br>
          <br>
          Hallo %{receiver_displayname}, <br>
          <br>
          es gibt einen neuen Kommentar von %{author_displayname} zu einer Kommentaranfrage auf CodeOcean, die Sie abonniert haben. <br>
          <br>
          %{author_displayname} schreibt: %{comment_text}<br>
          <br>
          Sie finden die Kommentaranfrage hier: %{link_to_comment} <br>
          <br>
          Wenn Sie keine weiteren Benachrichtigungen zu dieser Anfrage erhalten möchten, klicken Sie bitte hier: %{unsubscribe_link}
          <br>
          Diese Mail wurde automatisch von CodeOcean verschickt.<br>
          <br>
          _________________________<br>
          <br>
          Dear %{receiver_displayname}, <br>
          <br>
          you received a new comment from %{author_displayname} to a request for comments on CodeOcean that you have subscribed to. <br>
          <br>
          %{author_displayname} wrote: %{comment_text} <br>
          <br>
          You can find the request for comments here: %{link_to_comment} <br>
          <br>
          If you don't want to be notified about further comments, please click here: %{unsubscribe_link}
          <br>
          This mail was automatically sent by CodeOcean. <br>
        subject: "%{author_displayname} has posted a new comment to a discussion you subscribed to on CodeOcean."
      exercise_anomaly_detected:
        subject: "Anomalies in exercises of your exercise collection"
        body1: |
          English version below <br>
          _________________________<br>
          <br>
          Hallo %{receiver_displayname}, <br>
          <br>
          eine oder mehrere Aufgaben Ihrer Aufgabensammlung "%{collection_name}" zeigen Unregelmäßigkeiten in der Bearbeitungszeit. Möglicherweise sind sie zu schwer oder zu leicht.
          <br>
          Die Aufgaben sind:
          <br>
        body2: |
          <br>
          Falls Sie beim Klick auf einen Link eine Fehlermeldung erhalten, dass Sie nicht berechtigt wären diese Aktion auszuführen, öffnen Sie bitte eine beliebige Programmieraufgabe aus einem Kurs heraus und klicken den Link danach noch einmal.<br>
          <br>
          Diese Mail wurde automatisch von CodeOcean verschickt.<br>
          <br>
          _________________________<br>
          <br>
          Dear %{receiver_displayname}, <br>
          <br>
          at least one exercise in your exercise collection "%{collection_name}" has a much longer or much shorter average working time than the average. Perhaps they are too difficult or too easy.
          <br>
          The exercises are:
          <br>
        body3: |
          <br>
          If you receive an error that you are not authorized to perform this action when clicking a link, please log-in through any course exercise beforehand and click the link again. <br>
          <br>
          This mail was automatically sent by CodeOcean. <br>
      exercise_anomaly_needs_feedback:
        body: |
          English version below <br>
          _________________________<br>
          <br>
          Hallo %{receiver_displayname}, <br>
          <br>
          um die Aufgaben auf CodeOcean weiter zu verbessern, benötigen wir Ihre Mithilfe. Bitte nehmen Sie sich ein paar Minuten Zeit um ein kurzes Feedback zu folgender Aufgabe zu geben:
          <br>
          %{exercise} - %{link}
          <br>
          Falls Sie beim Klick auf diesen Link eine Fehlermeldung erhalten, dass Sie nicht berechtigt wären diese Aktion auszuführen, öffnen Sie bitte eine beliebige Programmieraufgabe aus einem Kurs heraus und klicken den Link danach noch einmal.<br>
          <br>
          Diese Mail wurde automatisch von CodeOcean verschickt.<br>
          <br>
          _________________________<br>
          <br>
          Dear %{receiver_displayname}, <br>
          <br>
          we need your help to improve the quality of the exercises on CodeOcean. Please take a few minutes to give us feedback for the following exercise:
          <br>
          %{exercise} - %{link}
          <br>
          If you receive an error that you are not authorized to perform this action when clicking the link, please log-in through any course exercise beforehand and click the link again. <br>
          <br>
          This mail was automatically sent by CodeOcean. <br>
        subject: "An exercise on CodeOcean needs your feedback"
  request_for_comments:
    click_here: Click on this sidebar to comment!
    comments: Comments
    howto: |
     To leave comments to a specific code line, click on the respective line number. <br>
     Enter your comment in the popup and save it by clicking "Comment this". <br>
     Your comment will show up next to the line number as a speech bubble symbol.
    howto_title: 'How to comment'
    index:
      all: All Requests for Comments
      my_comment_requests: My Requests for Comments
      rfcs_with_my_comments: Requests for Comments I have commented on
      my_rfc_activity: "My Comment Activity"
      rfcs_for_exercise: "Exercise Comments"
      study_groups:
        placeholder: "Study group"
        current: "Current Study Group"
        my: "My Study Groups"
    no_question: "The author did not enter a question for this request."
    mark_as_solved: "Mark this question as answered"
    show_all: "All requests"
    show_solved: "Solved requests"
    show_unsolved: "Unvsolved requests"
    solved: "This question has been answered"
    comment_exercise: "I would like to give feedback for this exercise"
    write_a_thank_you_node: "If you want, you can write a thank you note to all your commenters:"
    send_thank_you_note: "Send"
    cancel_thank_you_note: "Don't send"
    comment_edited: "edited"
    modal_title: "Add a comment to line %{line}"
    click_for_more_comments: "Click to view %{numComments} more comments..."
    subscribe_to_author: "Receive E-Mail notifications for new comments of the original author"
    no_output: "No output."
    runtime_output: "Runtime Output"
    test_results: "Test Results"
  sessions:
    expired: Your session has expired. Please <a href="" class="reloadCurrentPage alert-link">reload this page</a> before continuing.
    create:
      failure: Invalid email or password.
      success: Successfully signed in.
    create_through_lti:
      session_with_outcome: 'Please click "Submit Code for Assessment" after scoring to send your score to %{consumer}.'
      session_without_outcome: 'This is a practice session. Your grade will not be transmitted to %{consumer}.'
    destroy:
      link: Sign out
      success: Successfully signed out.
    destroy_through_lti:
      average_score: Average Score
      final_submissions: Other Users' Submissions
      finished_with_consumer: 'You may close this window now or <a href="%{url}" rel="nofollow">return to %{consumer}</a>.'
      finished_without_consumer: You may close this window now.
      headline: Well done!
      score: Your Score
      success_with_outcome: 'Your code has been successfully assessed. Your grade has been transmitted to %{consumer}.'
      success_without_outcome: Your code has been successfully assessed.
      do_not_use_backbutton: "Never use the browser's \"Back\" button to get back to CodeOcean."
    new:
      forgot_password: Forgot password?
      headline: Sign In
      link: Sign In
      remember_me: Remember me
    oauth:
      failure: 'Sorry, something went wrong.'
      invalid_consumer: Invalid OAuth key.
      invalid_exercise_token: Invalid exercise token.
      invalid_signature: Invalid OAuth signature.
      missing_parameters: Missing OAuth parameters.
      used_nonce: Nonce has already been used.
  shared:
    actions: Actions
    administration: Administration
    already_signed_in: You are already signed in.
    apply_filters: Apply filters
    back: Back
    batch_update: Batch Update
    confirm_destroy: Are you sure?
    create: 'Create %{model}'
    created_at: Created At
    color_mode:
      title: Appearance
      light: Light
      dark: Dark
      auto: Auto
    destroy: Delete
    edit: Edit
    actions_button: 'Other actions'
    errors_one: 'An error prohibited this %{model} from being saved'
    errors_other: '%{count} errors prohibited this %{model} from being saved'
    help:
      execution_environment_specific_help: 'Help for %{execution_environment}'
      general_help: General Help
      headline: Help
      link: Help
      imprint: Imprint
      privacy_policy: Privacy Policy
    index: Index
    message_failure: 'Sorry, something went wrong.'
    websocket_failure: Sorry, a connection issue occoured. <a href="https://websocketstest.com" target="_blank" rel="noopener" class="alert-link">Please check WebSocket connections with this tool</a> and try again.
    new: Add
    new_model: 'Add %{model}'
    number: Number
    admin_filter:
      only: Platform admins
      none: Regular users
      all: All users
    object_cloned: '%{model} has successfully been duplicated.'
    object_created: '%{model} has successfully been created.'
    object_destroyed: '%{model} has successfully been deleted.'
    object_updated: '%{model} has successfully been updated.'
    out_of: 'out of'
    reset_filters: Reset filters
    resources: Resources
    show: Show
    statistics: Statistics
    tooltips:
      shortcut: 'Keyboard shortcut: %{shortcut}'
    update: 'Update %{model}'
    upload_file: Upload file
    time:
      before: "%{time} ago"
    hide: "Hide"
  submissions:
    causes:
      autosave: Autosave
      assess: Scoring
      download: Download
      file: User-defined file
      render: Rendering
      remoteAssess: Remote Scoring
      remoteSubmit: Remote Submission
      requestComments: Request Comments
      run: Execution
      save: Save
      submit: Submission
      test: Test
    create:
      success: Your code has been saved.
    statistics:
      history: Score History
      percentage: Percentage
      siblings: Associated Submissions
  study_groups:
    set_as_current:
      success: The study group has been switched successfully.
  users:
    platform_admin: Platform Admin
    show:
      current_study_group: Current Study Group
      set_as_current_study_group: Set as Current Study Group
      study_groups: Study Groups
      no_groups: This user is either not part of any group or you do not have the necessary permissions to view them.
  will_paginate:
    next_label: 'Next Page &#8594;'
    page_gap: '&hellip;'
    previous_label: '&#8592; Previous Page'
  file_template:
    no_template_label: "Empty File"
  pair_programming_exercise_feedback:
    difficulty_easy: "The exercise was far too easy."
    difficulty_some_what_easy: "The exercise was a bit too easy."
    difficulty_ok: "The exercise difficulty was just right."
    difficulty_some_what_difficult: "The exercise was a bit too difficult."
    difficult_too_difficult: "The exercise was far too difficult."
    difficulty: "Difficulty of the exercise:"
    description: "Thank you for your submission! Before you finish the task, we kindly ask you for feedback for this exercise."
    estimated_time_less_5: "less than 5 minutes"
    estimated_time_5_to_10: "between 5 and 10 minutes"
    estimated_time_10_to_20: "between 10 and 20 minutes"
    estimated_time_20_to_30: "between 20 and 30 minutes"
    estimated_time_more_30: "more than 30 minutes"
    working_time: "Estimated time working on this exercise:"
    reason_no_partner: I have not found a team partner.
    reason_to_difficult_to_find_partner: It was too difficult to find a team partner.
    reason_faster_alone: It was faster to work alone.
    reason_not_working_with_strangers: I do not want to work with <i>strangers</i>.
    reason_want_to_work_alone: I prefer to work alone.
    reason_accidentally_alone: I accidentally worked alone on this exercise.
    reason_other: <i>Other</i>
    reason_work_alone: Why did you decide to solve this exercise alone?
    no_feedback: "There is no feedback for this exercise yet."
  user_exercise_feedback:
    difficulty_easy: "the exercise was too easy"
    difficulty_some_what_easy: "the exercise was somewhat easy"
    difficulty_ok: "the difficulty of the exercise was just right"
    difficulty_some_what_difficult: "the exercise was somewhat difficult"
    difficult_too_difficult: "the exercise was too difficult"
    difficulty: "Difficulty of the exercise:"
    description: "Your points have been submitted. We kindly ask you for feedback for this exercise. <br> If you do not want to give feedback you can simply close this window.<br><br>Please describe what you liked on this exercise and what you did not. Was the exercise easy to understand or did you have problems understanding? How was the difficulty of the exercise to you?<br>We are happy about any feedback."
    estimated_time_less_5: "less than 5 minutes"
    estimated_time_5_to_10: "between 5 and 10 minutes"
    estimated_time_10_to_20: "between 10 and 20 minutes"
    estimated_time_20_to_30: "between 20 and 30 minutes"
    estimated_time_more_30: "more than 30 minutes"
    working_time: "Estimated time working on this exercise:"
    no_feedback: "There is no feedback for this exercise yet."
  error_templates:
    hints:
      signature: "A regular expression in Ruby syntax without leading and trailing \"/\""
      hint_templates: 'Attribute names in {{double curly braces}} are replaced by the corresponding attribute value at runtime, e.g. "The error occurs in line {{Line}}." --(StructuredError: {Line: 4})--> "The error occurs in line 4."'
    attributes: "Attributes"
    add_attribute: "Add attribute"
  comments:
    deleted: "Deleted"
    save_update: "Save"
  subscriptions:
    successfully_unsubscribed: "You successfully unsubscribed from this Request for Comment"
    subscription_not_existent: "The subscription you want to unsubscribe from does not exist."
  statistics:
    sections:
      contributors: "Contributors"
      exercises: "Exercises"
      request_for_comments: "Requests for Comment"
    entries:
      exercises:
        average_number_of_submissions: "Average Number of Submissions"
        submissions_per_minute: "Current Submission Volume (1h)"
        autosaves_per_minute: "Current Autosave Volume (1h)"
        container_requests_per_minute: "Container Request Volume (1h)"
        submissions: "Submissions"
      request_for_comments:
        percent_solved: "Solved Requests"
        percent_unsolved: "Unsolved Requests"
        percent_soft_solved: "Unsolved with full score"
        with_comments: "RfCs with Comments"
      users:
        currently_active: "Active (5 minutes)"
        currently_active60: "Active (60 minutes)"
        active: "Active Users"
    graphs:
      user_activity: "User Activity"
      rfc_activity: "RfC Activity"
      history: "History"
    activity_history:
      from: "From"
      to: "To"
      interval: "Interval"
      update: "Update"
  navigation:
    sections:
      errors: "Errors"
      files: "Files"
      users: "Users"
      integrations: "Integrations"
  exercise_collections:
    form:
      add_exercises: "Add exercises"
      sort_by_title: "Sort by title"
