play-parser 1.2.0__tar.gz → 1.2.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {play_parser-1.2.0/src/play_parser.egg-info → play_parser-1.2.1}/PKG-INFO +1 -1
- {play_parser-1.2.0 → play_parser-1.2.1}/pyproject.toml +1 -1
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/__init__.py +4 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/document/types.py +3 -1
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/document/validation.py +1 -1
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsers.py +35 -4
- play_parser-1.2.1/src/play_parser/parsing/profile_detection.py +253 -0
- {play_parser-1.2.0 → play_parser-1.2.1/src/play_parser.egg-info}/PKG-INFO +1 -1
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser.egg-info/SOURCES.txt +2 -0
- play_parser-1.2.1/tests/test_profile_detection.py +75 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/CHANGELOG.md +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/LICENSE +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/MANIFEST.in +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/README.md +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/RELEASE.md +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/SECURITY.md +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/01_modern_two_hander_preamble_separator/01_modern_two_hander_preamble_separator.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/01_modern_two_hander_preamble_separator/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/01_modern_two_hander_preamble_separator/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/02_modern_three_characters_no_separator/02_modern_three_characters_no_separator.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/02_modern_three_characters_no_separator/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/02_modern_three_characters_no_separator/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/03_colon_format_one_scene/03_colon_format_one_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/03_colon_format_one_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/03_colon_format_one_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/04_speaker_colon_multiscene/04_speaker_colon_multiscene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/04_speaker_colon_multiscene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/05_shakespeare_line_speakers/05_shakespeare_line_speakers.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/05_shakespeare_line_speakers/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/06_inline_stage_directions/06_inline_stage_directions.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/06_inline_stage_directions/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/06_inline_stage_directions/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/07_long_preamble_cast_setting_notes/07_long_preamble_cast_setting_notes.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/07_long_preamble_cast_setting_notes/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/07_long_preamble_cast_setting_notes/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/08_no_preamble_immediate_dialogue/08_no_preamble_immediate_dialogue.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/08_no_preamble_immediate_dialogue/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/09_title_author_then_scene_no_act/09_title_author_then_scene_no_act.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/09_title_author_then_scene_no_act/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/100_formal_three_hander/100_formal_three_hander.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/100_formal_three_hander/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/100_formal_three_hander/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/101_lift_lobby_sluglines/101_lift_lobby_sluglines.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/101_lift_lobby_sluglines/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/101_lift_lobby_sluglines/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/102_weather_frequency/102_weather_frequency.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/102_weather_frequency/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/102_weather_frequency/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/103_the_spare_key_catalogue/103_the_spare_key_catalogue.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/103_the_spare_key_catalogue/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/103_the_spare_key_catalogue/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/104_initials_at_tea/104_initials_at_tea.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/104_initials_at_tea/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/104_initials_at_tea/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/105_a_door_answers/105_a_door_answers.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/105_a_door_answers/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/105_a_door_answers/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/106_small_applause/106_small_applause.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/106_small_applause/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/106_small_applause/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/107_chair_ballet/107_chair_ballet.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/107_chair_ballet/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/107_chair_ballet/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/108_scene_is_not_a_scene/108_scene_is_not_a_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/108_scene_is_not_a_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/108_scene_is_not_a_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/109_lower_roman/109_lower_roman.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/109_lower_roman/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/109_lower_roman/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/10_simple_spare_key_scene/10_simple_spare_key_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/10_simple_spare_key_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/10_simple_spare_key_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/110_inbox_play/110_inbox_play.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/110_inbox_play/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/110_inbox_play/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/111_hyphenated_night/111_hyphenated_night.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/111_hyphenated_night/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/111_hyphenated_night/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/113_numbered_witnesses/113_numbered_witnesses.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/113_numbered_witnesses/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/113_numbered_witnesses/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/114_the_group_chat/114_the_group_chat.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/114_the_group_chat/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/114_the_group_chat/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/115_four_line_oath/115_four_line_oath.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/115_four_line_oath/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/115_four_line_oath/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/116_after_the_bell/116_after_the_bell.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/116_after_the_bell/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/116_after_the_bell/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/117_italic_corridor/117_italic_corridor.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/117_italic_corridor/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/117_italic_corridor/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/118_third_act_weather/118_third_act_weather.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/118_third_act_weather/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/118_third_act_weather/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/119_pause_audit/119_pause_audit.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/119_pause_audit/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/119_pause_audit/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/11_malformed_joined_speaker_pdf_artifact/11_malformed_joined_speaker_pdf_artifact.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/11_malformed_joined_speaker_pdf_artifact/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/11_malformed_joined_speaker_pdf_artifact/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/120_colon_trouble/120_colon_trouble.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/120_colon_trouble/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/120_colon_trouble/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/121_semicolon_cast/121_semicolon_cast.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/121_semicolon_cast/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/121_semicolon_cast/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/122_square_cue/122_square_cue.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/122_square_cue/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/122_square_cue/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/123_page_header_fog/123_page_header_fog.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/123_page_header_fog/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/123_page_header_fog/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/124_lowercase_lobby/124_lowercase_lobby.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/124_lowercase_lobby/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/124_lowercase_lobby/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/125_parenthesis_room/125_parenthesis_room.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/125_parenthesis_room/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/125_parenthesis_room/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/126_mixed_marks/126_mixed_marks.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/126_mixed_marks/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/126_mixed_marks/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/127_the_word_act/127_the_word_act.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/127_the_word_act/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/127_the_word_act/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/128_broken_column/128_broken_column.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/128_broken_column/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/128_broken_column/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/129_prologue_with_receipts/129_prologue_with_receipts.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/129_prologue_with_receipts/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/129_prologue_with_receipts/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/12_many_characters_short_lines/12_many_characters_short_lines.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/12_many_characters_short_lines/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/12_many_characters_short_lines/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/131_screenplay_character_blocks_1/131_screenplay_character_blocks_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/131_screenplay_character_blocks_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/131_screenplay_character_blocks_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/132_screenplay_character_blocks_2/132_screenplay_character_blocks_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/132_screenplay_character_blocks_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/132_screenplay_character_blocks_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/133_screenplay_parenthetical_cues_1/133_screenplay_parenthetical_cues_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/133_screenplay_parenthetical_cues_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/133_screenplay_parenthetical_cues_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/134_screenplay_parenthetical_cues_2/134_screenplay_parenthetical_cues_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/134_screenplay_parenthetical_cues_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/134_screenplay_parenthetical_cues_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/135_fixed_width_dialogue_1/135_fixed_width_dialogue_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/135_fixed_width_dialogue_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/135_fixed_width_dialogue_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/136_fixed_width_dialogue_2/136_fixed_width_dialogue_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/136_fixed_width_dialogue_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/136_fixed_width_dialogue_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/137_tabular_dialogue_1/137_tabular_dialogue_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/137_tabular_dialogue_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/137_tabular_dialogue_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/138_tabular_dialogue_2/138_tabular_dialogue_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/138_tabular_dialogue_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/138_tabular_dialogue_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/139_hyphen_dialogue_1/139_hyphen_dialogue_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/139_hyphen_dialogue_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/139_hyphen_dialogue_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/13_character_names_with_spaces_colon/13_character_names_with_spaces_colon.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/13_character_names_with_spaces_colon/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/140_hyphen_dialogue_2/140_hyphen_dialogue_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/140_hyphen_dialogue_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/140_hyphen_dialogue_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/141_emdash_dialogue_1/141_emdash_dialogue_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/141_emdash_dialogue_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/141_emdash_dialogue_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/142_emdash_dialogue_2/142_emdash_dialogue_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/142_emdash_dialogue_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/142_emdash_dialogue_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/143_abbreviated_dot_speakers_1/143_abbreviated_dot_speakers_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/143_abbreviated_dot_speakers_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/143_abbreviated_dot_speakers_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/144_abbreviated_dot_speakers_2/144_abbreviated_dot_speakers_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/144_abbreviated_dot_speakers_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/144_abbreviated_dot_speakers_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/149_alias_cast_dialogue_1/149_alias_cast_dialogue_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/149_alias_cast_dialogue_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/149_alias_cast_dialogue_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/14_character_block_with_colons_and_descriptions/14_character_block_with_colons_and_descriptions.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/14_character_block_with_colons_and_descriptions/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/14_character_block_with_colons_and_descriptions/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/150_alias_cast_dialogue_2/150_alias_cast_dialogue_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/150_alias_cast_dialogue_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/150_alias_cast_dialogue_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/151_page_header_inside_speech_1/151_page_header_inside_speech_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/151_page_header_inside_speech_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/151_page_header_inside_speech_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/152_page_header_inside_speech_2/152_page_header_inside_speech_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/152_page_header_inside_speech_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/152_page_header_inside_speech_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/153_verse_indented_continuation_1/153_verse_indented_continuation_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/153_verse_indented_continuation_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/153_verse_indented_continuation_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/154_verse_indented_continuation_2/154_verse_indented_continuation_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/154_verse_indented_continuation_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/154_verse_indented_continuation_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/155_unbracketed_stage_prose_1/155_unbracketed_stage_prose_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/155_unbracketed_stage_prose_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/155_unbracketed_stage_prose_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/156_unbracketed_stage_prose_2/156_unbracketed_stage_prose_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/156_unbracketed_stage_prose_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/156_unbracketed_stage_prose_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/157_dual_dialogue_same_line_1/157_dual_dialogue_same_line_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/157_dual_dialogue_same_line_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/157_dual_dialogue_same_line_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/158_dual_dialogue_same_line_2/158_dual_dialogue_same_line_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/158_dual_dialogue_same_line_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/158_dual_dialogue_same_line_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/159_cue_before_colon_1/159_cue_before_colon_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/159_cue_before_colon_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/159_cue_before_colon_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/15_multiple_acts_modern/15_multiple_acts_modern.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/15_multiple_acts_modern/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/160_cue_before_colon_2/160_cue_before_colon_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/160_cue_before_colon_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/160_cue_before_colon_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/161_scene_title_false_speaker_1/161_scene_title_false_speaker_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/161_scene_title_false_speaker_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/161_scene_title_false_speaker_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/162_scene_title_false_speaker_2/162_scene_title_false_speaker_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/162_scene_title_false_speaker_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/162_scene_title_false_speaker_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/163_chat_timestamp_dialogue_1/163_chat_timestamp_dialogue_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/163_chat_timestamp_dialogue_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/163_chat_timestamp_dialogue_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/164_chat_timestamp_dialogue_2/164_chat_timestamp_dialogue_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/164_chat_timestamp_dialogue_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/164_chat_timestamp_dialogue_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/165_line_numbered_dialogue_1/165_line_numbered_dialogue_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/165_line_numbered_dialogue_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/165_line_numbered_dialogue_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/166_line_numbered_dialogue_2/166_line_numbered_dialogue_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/166_line_numbered_dialogue_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/166_line_numbered_dialogue_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/167_pdf_hyphenated_wrap_1/167_pdf_hyphenated_wrap_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/167_pdf_hyphenated_wrap_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/167_pdf_hyphenated_wrap_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/168_pdf_hyphenated_wrap_2/168_pdf_hyphenated_wrap_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/168_pdf_hyphenated_wrap_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/168_pdf_hyphenated_wrap_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/169_diacritic_apostrophe_speakers_1/169_diacritic_apostrophe_speakers_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/169_diacritic_apostrophe_speakers_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/169_diacritic_apostrophe_speakers_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/16_stage_directions_square_brackets/16_stage_directions_square_brackets.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/16_stage_directions_square_brackets/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/170_diacritic_apostrophe_speakers_2/170_diacritic_apostrophe_speakers_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/170_diacritic_apostrophe_speakers_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/170_diacritic_apostrophe_speakers_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/171_numbered_scene_titles_1/171_numbered_scene_titles_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/171_numbered_scene_titles_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/171_numbered_scene_titles_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/172_numbered_scene_titles_2/172_numbered_scene_titles_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/172_numbered_scene_titles_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/172_numbered_scene_titles_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/173_scene_colon_label_1/173_scene_colon_label_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/173_scene_colon_label_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/173_scene_colon_label_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/174_scene_colon_label_2/174_scene_colon_label_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/174_scene_colon_label_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/174_scene_colon_label_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/175_single_letter_speakers_1/175_single_letter_speakers_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/175_single_letter_speakers_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/175_single_letter_speakers_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/176_single_letter_speakers_2/176_single_letter_speakers_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/176_single_letter_speakers_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/176_single_letter_speakers_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/177_music_lyrics_cues_1/177_music_lyrics_cues_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/177_music_lyrics_cues_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/177_music_lyrics_cues_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/178_music_lyrics_cues_2/178_music_lyrics_cues_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/178_music_lyrics_cues_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/178_music_lyrics_cues_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/179_speaker_then_blank_then_text_1/179_speaker_then_blank_then_text_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/179_speaker_then_blank_then_text_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/179_speaker_then_blank_then_text_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/17_screenplayish_format/17_screenplayish_format.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/17_screenplayish_format/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/17_screenplayish_format/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/180_speaker_then_blank_then_text_2/180_speaker_then_blank_then_text_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/180_speaker_then_blank_then_text_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/180_speaker_then_blank_then_text_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/181_ocr_spaced_speaker_labels_1/181_ocr_spaced_speaker_labels_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/181_ocr_spaced_speaker_labels_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/181_ocr_spaced_speaker_labels_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/182_ocr_spaced_speaker_labels_2/182_ocr_spaced_speaker_labels_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/182_ocr_spaced_speaker_labels_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/182_ocr_spaced_speaker_labels_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/183_ocr_digit_letter_confusion_1/183_ocr_digit_letter_confusion_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/183_ocr_digit_letter_confusion_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/183_ocr_digit_letter_confusion_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/184_ocr_digit_letter_confusion_2/184_ocr_digit_letter_confusion_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/184_ocr_digit_letter_confusion_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/184_ocr_digit_letter_confusion_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/185_ocr_broken_word_continuation_1/185_ocr_broken_word_continuation_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/185_ocr_broken_word_continuation_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/185_ocr_broken_word_continuation_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/186_ocr_broken_word_continuation_2/186_ocr_broken_word_continuation_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/186_ocr_broken_word_continuation_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/186_ocr_broken_word_continuation_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/187_ocr_page_number_in_speech_1/187_ocr_page_number_in_speech_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/187_ocr_page_number_in_speech_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/187_ocr_page_number_in_speech_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/188_ocr_page_number_in_speech_2/188_ocr_page_number_in_speech_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/188_ocr_page_number_in_speech_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/188_ocr_page_number_in_speech_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/189_ocr_header_footer_intrusion_1/189_ocr_header_footer_intrusion_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/189_ocr_header_footer_intrusion_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/189_ocr_header_footer_intrusion_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/18_blank_lines_and_extra_spacing/18_blank_lines_and_extra_spacing.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/18_blank_lines_and_extra_spacing/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/18_blank_lines_and_extra_spacing/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/190_ocr_header_footer_intrusion_2/190_ocr_header_footer_intrusion_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/190_ocr_header_footer_intrusion_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/190_ocr_header_footer_intrusion_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/191_ocr_ligature_artefacts_1/191_ocr_ligature_artefacts_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/191_ocr_ligature_artefacts_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/191_ocr_ligature_artefacts_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/192_ocr_ligature_artefacts_2/192_ocr_ligature_artefacts_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/192_ocr_ligature_artefacts_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/192_ocr_ligature_artefacts_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/193_ocr_curly_quote_damage_1/193_ocr_curly_quote_damage_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/193_ocr_curly_quote_damage_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/193_ocr_curly_quote_damage_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/194_ocr_curly_quote_damage_2/194_ocr_curly_quote_damage_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/194_ocr_curly_quote_damage_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/194_ocr_curly_quote_damage_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/195_ocr_soft_hyphen_artefact_1/195_ocr_soft_hyphen_artefact_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/195_ocr_soft_hyphen_artefact_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/195_ocr_soft_hyphen_artefact_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/196_ocr_soft_hyphen_artefact_2/196_ocr_soft_hyphen_artefact_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/196_ocr_soft_hyphen_artefact_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/196_ocr_soft_hyphen_artefact_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/197_ocr_broken_speaker_colon_1/197_ocr_broken_speaker_colon_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/197_ocr_broken_speaker_colon_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/197_ocr_broken_speaker_colon_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/198_ocr_broken_speaker_colon_2/198_ocr_broken_speaker_colon_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/198_ocr_broken_speaker_colon_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/198_ocr_broken_speaker_colon_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/199_ocr_line_wrap_with_indentation_1/199_ocr_line_wrap_with_indentation_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/199_ocr_line_wrap_with_indentation_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/199_ocr_line_wrap_with_indentation_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/19_preamble_without_clear_marker/19_preamble_without_clear_marker.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/19_preamble_without_clear_marker/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/19_preamble_without_clear_marker/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/200_ocr_line_wrap_with_indentation_2/200_ocr_line_wrap_with_indentation_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/200_ocr_line_wrap_with_indentation_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/200_ocr_line_wrap_with_indentation_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/201_cast_list_descriptions_columns_1/201_cast_list_descriptions_columns_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/201_cast_list_descriptions_columns_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/201_cast_list_descriptions_columns_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/202_cast_list_descriptions_columns_2/202_cast_list_descriptions_columns_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/202_cast_list_descriptions_columns_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/202_cast_list_descriptions_columns_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/203_cast_group_roles_1/203_cast_group_roles_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/203_cast_group_roles_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/203_cast_group_roles_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/204_cast_group_roles_2/204_cast_group_roles_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/204_cast_group_roles_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/204_cast_group_roles_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/205_cast_alias_roles_1/205_cast_alias_roles_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/205_cast_alias_roles_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/205_cast_alias_roles_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/206_cast_alias_roles_2/206_cast_alias_roles_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/206_cast_alias_roles_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/206_cast_alias_roles_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/207_cast_no_separator_1/207_cast_no_separator_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/207_cast_no_separator_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/207_cast_no_separator_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/208_cast_no_separator_2/208_cast_no_separator_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/208_cast_no_separator_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/208_cast_no_separator_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/209_cast_non_speaking_1/209_cast_non_speaking_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/209_cast_non_speaking_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/209_cast_non_speaking_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/20_single_character_monologue_with_directions/20_single_character_monologue_with_directions.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/20_single_character_monologue_with_directions/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/20_single_character_monologue_with_directions/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/210_cast_non_speaking_2/210_cast_non_speaking_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/210_cast_non_speaking_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/210_cast_non_speaking_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/211_classical_abbreviated_sigla_1/211_classical_abbreviated_sigla_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/211_classical_abbreviated_sigla_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/211_classical_abbreviated_sigla_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/212_classical_abbreviated_sigla_2/212_classical_abbreviated_sigla_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/212_classical_abbreviated_sigla_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/212_classical_abbreviated_sigla_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/213_marginal_speaker_labels_1/213_marginal_speaker_labels_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/213_marginal_speaker_labels_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/213_marginal_speaker_labels_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/214_marginal_speaker_labels_2/214_marginal_speaker_labels_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/214_marginal_speaker_labels_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/214_marginal_speaker_labels_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/215_numbered_verse_lines_1/215_numbered_verse_lines_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/215_numbered_verse_lines_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/215_numbered_verse_lines_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/216_numbered_verse_lines_2/216_numbered_verse_lines_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/216_numbered_verse_lines_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/216_numbered_verse_lines_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/217_roman_structure_1/217_roman_structure_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/217_roman_structure_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/217_roman_structure_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/218_roman_structure_2/218_roman_structure_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/218_roman_structure_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/218_roman_structure_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/219_enter_exit_conventions_1/219_enter_exit_conventions_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/219_enter_exit_conventions_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/219_enter_exit_conventions_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/220_enter_exit_conventions_2/220_enter_exit_conventions_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/220_enter_exit_conventions_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/220_enter_exit_conventions_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/221_timestamp_inline_dialogue_1/221_timestamp_inline_dialogue_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/221_timestamp_inline_dialogue_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/221_timestamp_inline_dialogue_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/222_timestamp_inline_dialogue_2/222_timestamp_inline_dialogue_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/222_timestamp_inline_dialogue_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/222_timestamp_inline_dialogue_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/223_bracketed_speaker_subtitles_1/223_bracketed_speaker_subtitles_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/223_bracketed_speaker_subtitles_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/223_bracketed_speaker_subtitles_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/224_bracketed_speaker_subtitles_2/224_bracketed_speaker_subtitles_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/224_bracketed_speaker_subtitles_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/224_bracketed_speaker_subtitles_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/225_srt_chunks_1/225_srt_chunks_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/225_srt_chunks_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/225_srt_chunks_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/226_srt_chunks_2/226_srt_chunks_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/226_srt_chunks_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/226_srt_chunks_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/227_webvtt_cues_1/227_webvtt_cues_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/227_webvtt_cues_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/227_webvtt_cues_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/228_webvtt_cues_2/228_webvtt_cues_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/228_webvtt_cues_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/228_webvtt_cues_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/229_speaker_dash_transcript_1/229_speaker_dash_transcript_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/229_speaker_dash_transcript_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/229_speaker_dash_transcript_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/230_speaker_dash_transcript_2/230_speaker_dash_transcript_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/230_speaker_dash_transcript_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/230_speaker_dash_transcript_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/231_markdown_bold_speakers_1/231_markdown_bold_speakers_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/231_markdown_bold_speakers_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/231_markdown_bold_speakers_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/232_markdown_bold_speakers_2/232_markdown_bold_speakers_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/232_markdown_bold_speakers_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/232_markdown_bold_speakers_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/233_markdown_italic_stage_1/233_markdown_italic_stage_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/233_markdown_italic_stage_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/233_markdown_italic_stage_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/234_markdown_italic_stage_2/234_markdown_italic_stage_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/234_markdown_italic_stage_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/234_markdown_italic_stage_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/235_markdown_blockquote_dialogue_1/235_markdown_blockquote_dialogue_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/235_markdown_blockquote_dialogue_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/235_markdown_blockquote_dialogue_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/236_markdown_blockquote_dialogue_2/236_markdown_blockquote_dialogue_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/236_markdown_blockquote_dialogue_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/236_markdown_blockquote_dialogue_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/237_html_entities_1/237_html_entities_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/237_html_entities_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/237_html_entities_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/238_html_entities_2/238_html_entities_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/238_html_entities_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/238_html_entities_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/239_web_footer_copied_1/239_web_footer_copied_1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/239_web_footer_copied_1/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/239_web_footer_copied_1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/240_web_footer_copied_2/240_web_footer_copied_2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/240_web_footer_copied_2/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/240_web_footer_copied_2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/60_audition_01_two_person_drama/60_audition_01_two_person_drama.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/60_audition_01_two_person_drama/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/60_audition_01_two_person_drama/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/61_audition_02_comedic_monologue/61_audition_02_comedic_monologue.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/61_audition_02_comedic_monologue/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/61_audition_02_comedic_monologue/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/62_audition_03_one_person_voice_message/62_audition_03_one_person_voice_message.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/62_audition_03_one_person_voice_message/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/62_audition_03_one_person_voice_message/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/63_audition_04_period_scene/63_audition_04_period_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/63_audition_04_period_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/63_audition_04_period_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/64_audition_05_sci_fi_interrogation/64_audition_05_sci_fi_interrogation.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/64_audition_05_sci_fi_interrogation/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/64_audition_05_sci_fi_interrogation/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/65_audition_06_romantic_comedy/65_audition_06_romantic_comedy.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/65_audition_06_romantic_comedy/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/65_audition_06_romantic_comedy/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/66_audition_07_thriller_scene/66_audition_07_thriller_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/66_audition_07_thriller_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/66_audition_07_thriller_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/67_audition_08_duologue_family/67_audition_08_duologue_family.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/67_audition_08_duologue_family/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/67_audition_08_duologue_family/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/68_audition_09_silent_stage_directions/68_audition_09_silent_stage_directions.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/68_audition_09_silent_stage_directions/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/68_audition_09_silent_stage_directions/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/69_audition_10_mockumentary/69_audition_10_mockumentary.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/69_audition_10_mockumentary/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/69_audition_10_mockumentary/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/70_audition_11_classical_heightened/70_audition_11_classical_heightened.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/70_audition_11_classical_heightened/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/70_audition_11_classical_heightened/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/71_audition_12_police_procedural/71_audition_12_police_procedural.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/71_audition_12_police_procedural/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/71_audition_12_police_procedural/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/72_audition_13_child_actor_scene/72_audition_13_child_actor_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/72_audition_13_child_actor_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/72_audition_13_child_actor_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/73_audition_14_soap_scene/73_audition_14_soap_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/73_audition_14_soap_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/73_audition_14_soap_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/74_audition_15_horror_scene/74_audition_15_horror_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/74_audition_15_horror_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/74_audition_15_horror_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/75_audition_16_workplace_scene/75_audition_16_workplace_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/75_audition_16_workplace_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/75_audition_16_workplace_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/76_audition_17_legal_scene/76_audition_17_legal_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/76_audition_17_legal_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/76_audition_17_legal_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/77_audition_18_fantasy_scene/77_audition_18_fantasy_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/77_audition_18_fantasy_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/77_audition_18_fantasy_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/78_audition_19_radio_play/78_audition_19_radio_play.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/78_audition_19_radio_play/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/78_audition_19_radio_play/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/79_audition_20_musical_book_scene/79_audition_20_musical_book_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/79_audition_20_musical_book_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/79_audition_20_musical_book_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/80_colon_cast_and_scene/80_colon_cast_and_scene.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/80_colon_cast_and_scene/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/80_colon_cast_and_scene/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/81_bare_speaker_acts/81_bare_speaker_acts.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/81_bare_speaker_acts/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/81_bare_speaker_acts/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/82_dot_inline_comedy/82_dot_inline_comedy.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/82_dot_inline_comedy/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/82_dot_inline_comedy/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/83_dot_block_form/83_dot_block_form.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/83_dot_block_form/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/83_dot_block_form/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/84_bracket_directions/84_bracket_directions.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/84_bracket_directions/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/84_bracket_directions/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/85_monologue_parentheses/85_monologue_parentheses.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/85_monologue_parentheses/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/85_monologue_parentheses/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/86_no_dialogue_physical/86_no_dialogue_physical.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/86_no_dialogue_physical/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/86_no_dialogue_physical/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/87_modern_act_words/87_modern_act_words.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/87_modern_act_words/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/87_modern_act_words/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/88_screenplay_slugline/88_screenplay_slugline.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/88_screenplay_slugline/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/88_screenplay_slugline/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/89_radio_sfx/89_radio_sfx.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/89_radio_sfx/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/89_radio_sfx/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/90_mixed_inline_stage/90_mixed_inline_stage.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/90_mixed_inline_stage/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/90_mixed_inline_stage/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/91_title_author_immediate/91_title_author_immediate.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/91_title_author_immediate/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/91_title_author_immediate/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/92_cast_commas/92_cast_commas.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/92_cast_commas/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/92_cast_commas/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/93_multiscene_no_acts/93_multiscene_no_acts.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/93_multiscene_no_acts/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/93_multiscene_no_acts/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/94_stage_speaker_action/94_stage_speaker_action.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/94_stage_speaker_action/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/94_stage_speaker_action/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/95_character_names_spaces/95_character_names_spaces.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/95_character_names_spaces/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/95_character_names_spaces/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/96_long_preamble_marker/96_long_preamble_marker.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/96_long_preamble_marker/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/96_long_preamble_marker/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/97_single_character_with_end/97_single_character_with_end.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/97_single_character_with_end/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/97_single_character_with_end/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/98_colon_scene_false_positive/98_colon_scene_false_positive.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/98_colon_scene_false_positive/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/98_colon_scene_false_positive/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/99_dot_signature_not_speaker/99_dot_signature_not_speaker.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/99_dot_signature_not_speaker/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/99_dot_signature_not_speaker/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/A Midsummer Night's Dream/A Midsummer Night's Dream.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/A Midsummer Night's Dream/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/All's Well That Ends Well/All's Well That Ends Well.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/All's Well That Ends Well/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Antony and Cleopatra/Antony and Cleopatra.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Antony and Cleopatra/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/As You Like It/As You Like It.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/As You Like It/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/CORPUS_FORMATS.md +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Coriolanus/Coriolanus.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Coriolanus/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Cymbeline/Cymbeline.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Cymbeline/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Gin vs Whiskey/Gin vs Whiskey.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Gin vs Whiskey/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Gin vs Whiskey/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Hamlet/Hamlet.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Hamlet/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry IV, Part 1/Henry IV, Part 1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry IV, Part 1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry IV, Part 2/Henry IV, Part 2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry IV, Part 2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry V/Henry V.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry V/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry VI, Part 1/Henry VI, Part 1.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry VI, Part 1/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry VI, Part 2/Henry VI, Part 2.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry VI, Part 2/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry VI, Part 3/Henry VI, Part 3.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry VI, Part 3/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry VIII/Henry VIII.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Henry VIII/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Julius Caesar/Julius Caesar.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Julius Caesar/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/King John/King John.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/King John/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/King Lear/King Lear.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/King Lear/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Love's Labour's Lost/Love's Labour's Lost.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Love's Labour's Lost/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Macbeth/Macbeth.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Macbeth/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Measure for Measure/Measure for Measure.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Measure for Measure/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Much Ado About Nothing/Much Ado About Nothing.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Much Ado About Nothing/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Othello/Othello.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Othello/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Pericles, Prince of Tyre/Pericles, Prince of Tyre.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Pericles, Prince of Tyre/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/README.md +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Richard II/Richard II.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Richard II/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Richard III/Richard III.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Richard III/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Romeo and Juliet/Romeo and Juliet.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Romeo and Juliet/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Comedy of Errors/The Comedy of Errors.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Comedy of Errors/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Importance of Being Earnest/The Importance of Being Earnest.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Importance of Being Earnest/hints.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Importance of Being Earnest/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Merchant of Venice/The Merchant of Venice.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Merchant of Venice/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Merry Wives of Windsor/The Merry Wives of Windsor.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Merry Wives of Windsor/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Taming of the Shrew/The Taming of the Shrew.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Taming of the Shrew/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Tempest/The Tempest.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Tempest/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Winter's Tale/The Winter's Tale.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/The Winter's Tale/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Timon of Athens/Timon of Athens.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Timon of Athens/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Titus Andronicus/Titus Andronicus.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Titus Andronicus/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Troilus and Cressida/Troilus and Cressida.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Troilus and Cressida/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Twelfth Night/Twelfth Night.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Twelfth Night/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Two Gentlemen of Verona/Two Gentlemen of Verona.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/data/Two Gentlemen of Verona/optimal.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/docs/API.md +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/docs/FORMAT_PROFILES.md +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/docs/JSON_SCHEMA.md +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/docs/play_document.schema.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/setup.cfg +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/__main__.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/_io.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/cli/__init__.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/cli/main.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/document/__init__.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/document/assembler.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/document/builder.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/document/constants.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/document/text.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/domain/__init__.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/domain/play.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/ingestion/__init__.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/ingestion/ingestor.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/__init__.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/context.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/front_matter.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/fsm.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/hints.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/parser.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/profiles/__init__.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/profiles/builtins/__init__.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/profiles/builtins/colon_inline.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/profiles/builtins/dot_block.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/profiles/builtins/dot_inline.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/profiles/builtins/mixed_parenthetical.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/profiles/builtins/narrative_stage_heavy.json +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/profiles/loader.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/profiles/schema.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/speakers.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/speech.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/stage.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/structure.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/parsing/viterbi.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser/py.typed +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser.egg-info/dependency_links.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser.egg-info/entry_points.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser.egg-info/requires.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/src/play_parser.egg-info/top_level.txt +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/__init__.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/conftest.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/play_document_comparison.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_cli.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_corpus_inventory.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_corpus_optimal_json.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_document_roundtrip.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_domain.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_fsm_corpus_optimal_json.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_fsm_scoring.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_ingestor.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_json_schema.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_parser_core.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_parser_factory.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_profiles.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_public_api.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_validation_strict_types.py +0 -0
- {play_parser-1.2.0 → play_parser-1.2.1}/tests/test_viterbi_decoder.py +0 -0
|
@@ -8,6 +8,7 @@ from play_parser.domain import Act, Character, Dialogue, Monologue, Play, Scene,
|
|
|
8
8
|
from play_parser.ingestion import PlayIngestor
|
|
9
9
|
from play_parser.parsers import FSMPlayParser, PlayParser, RuleBasedPlayParser, SimplePlayParser
|
|
10
10
|
from play_parser.parsing.hints import PlayParseConfig, PlayParseHints, load_play_parse_config
|
|
11
|
+
from play_parser.parsing.profile_detection import ProfileDetectionResult, ProfileScore, detect_format_profile
|
|
11
12
|
from play_parser.parsing.profiles import (
|
|
12
13
|
FormatProfile,
|
|
13
14
|
get_format_profile,
|
|
@@ -52,6 +53,9 @@ __all__ = [
|
|
|
52
53
|
"FSMPlayParser",
|
|
53
54
|
"PlayParseConfig",
|
|
54
55
|
"PlayParseHints",
|
|
56
|
+
"ProfileDetectionResult",
|
|
57
|
+
"ProfileScore",
|
|
58
|
+
"detect_format_profile",
|
|
55
59
|
"Scene",
|
|
56
60
|
"Speech",
|
|
57
61
|
"assemble_play_text",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
|
|
3
|
-
from typing import Literal, TypedDict
|
|
3
|
+
from typing import Any, Literal, TypedDict
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
class ActStartEvent(TypedDict):
|
|
@@ -95,6 +95,8 @@ class PlayMetadataRequired(TypedDict):
|
|
|
95
95
|
|
|
96
96
|
class PlayMetadata(PlayMetadataRequired, total=False):
|
|
97
97
|
preamble: str
|
|
98
|
+
selected_format_profile: str
|
|
99
|
+
profile_detection: dict[str, Any]
|
|
98
100
|
|
|
99
101
|
|
|
100
102
|
class PlayDocument(TypedDict):
|
|
@@ -12,7 +12,7 @@ from .types import PlayDocument, PlayEvent, PlayMetadata
|
|
|
12
12
|
|
|
13
13
|
DEFAULT_DIFF_CONTEXT_SIZE = 50
|
|
14
14
|
REQUIRED_METADATA_FIELDS = {"title", "author", "characters", "acts", "scenes", "stats"}
|
|
15
|
-
OPTIONAL_METADATA_FIELDS = {"preamble"}
|
|
15
|
+
OPTIONAL_METADATA_FIELDS = {"preamble", "selected_format_profile", "profile_detection"}
|
|
16
16
|
REQUIRED_DOCUMENT_FIELDS = {"metadata", "events"}
|
|
17
17
|
REQUIRED_ACT_SUMMARY_FIELDS = {"act_number", "label"}
|
|
18
18
|
REQUIRED_SCENE_SUMMARY_FIELDS = {"act_number", "scene_number", "label"}
|
|
@@ -12,6 +12,7 @@ from play_parser.domain import Play
|
|
|
12
12
|
from play_parser.ingestion.ingestor import ProfileInput, resolve_format_profile
|
|
13
13
|
from play_parser.parsing.fsm import FSMDocumentParser, PlayFSMScoring
|
|
14
14
|
from play_parser.parsing.hints import PlayParseHints
|
|
15
|
+
from play_parser.parsing.profile_detection import detect_format_profile
|
|
15
16
|
|
|
16
17
|
ParserMethod = Literal["simple", "rule", "fsm"]
|
|
17
18
|
|
|
@@ -79,6 +80,16 @@ class PlayParser(ABC):
|
|
|
79
80
|
).as_dict()
|
|
80
81
|
|
|
81
82
|
|
|
83
|
+
def _should_auto_detect_profile(profile: ProfileInput, profile_path: str | Path | None) -> bool:
|
|
84
|
+
if profile_path is not None:
|
|
85
|
+
return False
|
|
86
|
+
if profile is None:
|
|
87
|
+
return False
|
|
88
|
+
if isinstance(profile, str):
|
|
89
|
+
return profile.strip().lower().replace("-", "_") in {"auto", "default"}
|
|
90
|
+
return False
|
|
91
|
+
|
|
92
|
+
|
|
82
93
|
def _coerce_hints(hints: PlayParseHints | Mapping[str, object] | None) -> PlayParseHints | None:
|
|
83
94
|
if hints is None:
|
|
84
95
|
return None
|
|
@@ -109,13 +120,23 @@ class SimplePlayParser(PlayParser):
|
|
|
109
120
|
if existing_document is not None:
|
|
110
121
|
return Play(existing_document)
|
|
111
122
|
|
|
112
|
-
|
|
123
|
+
coerced_hints = _coerce_hints(hints)
|
|
124
|
+
detection = None
|
|
125
|
+
if _should_auto_detect_profile(profile, profile_path):
|
|
126
|
+
detection = detect_format_profile(data, hints=coerced_hints)
|
|
127
|
+
resolved_profile = None if detection.selected_profile == "generic" else resolve_format_profile(profile=detection.selected_profile)
|
|
128
|
+
else:
|
|
129
|
+
resolved_profile = resolve_format_profile(profile=profile, profile_path=profile_path)
|
|
130
|
+
|
|
113
131
|
document = build_play_document(
|
|
114
132
|
data,
|
|
115
133
|
play_name=Path(source_name).stem if source_name else None,
|
|
116
134
|
profile=resolved_profile,
|
|
117
|
-
hints=
|
|
135
|
+
hints=coerced_hints,
|
|
118
136
|
)
|
|
137
|
+
if detection is not None:
|
|
138
|
+
document.setdefault("metadata", {})["selected_format_profile"] = detection.selected_profile
|
|
139
|
+
document.setdefault("metadata", {})["profile_detection"] = detection.as_dict()
|
|
119
140
|
return Play(document)
|
|
120
141
|
|
|
121
142
|
|
|
@@ -149,12 +170,22 @@ class FSMPlayParser(PlayParser):
|
|
|
149
170
|
if existing_document is not None:
|
|
150
171
|
return Play(existing_document)
|
|
151
172
|
|
|
152
|
-
|
|
173
|
+
coerced_hints = _coerce_hints(hints)
|
|
174
|
+
detection = None
|
|
175
|
+
if _should_auto_detect_profile(profile, profile_path):
|
|
176
|
+
detection = detect_format_profile(data, hints=coerced_hints)
|
|
177
|
+
resolved_profile = None if detection.selected_profile == "generic" else resolve_format_profile(profile=detection.selected_profile)
|
|
178
|
+
else:
|
|
179
|
+
resolved_profile = resolve_format_profile(profile=profile, profile_path=profile_path)
|
|
180
|
+
|
|
153
181
|
document = FSMDocumentParser(
|
|
154
182
|
profile=resolved_profile,
|
|
155
|
-
hints=
|
|
183
|
+
hints=coerced_hints,
|
|
156
184
|
source_name=source_name,
|
|
157
185
|
beam_width=self.beam_width,
|
|
158
186
|
scoring=self.scoring,
|
|
159
187
|
).parse(data)
|
|
188
|
+
if detection is not None:
|
|
189
|
+
document.setdefault("metadata", {})["selected_format_profile"] = detection.selected_profile
|
|
190
|
+
document.setdefault("metadata", {})["profile_detection"] = detection.as_dict()
|
|
160
191
|
return Play(document)
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from dataclasses import dataclass
|
|
4
|
+
from typing import Any
|
|
5
|
+
|
|
6
|
+
from play_parser.document.text import count_words
|
|
7
|
+
from play_parser.document.types import PlayEvent
|
|
8
|
+
from collections.abc import Mapping
|
|
9
|
+
|
|
10
|
+
from play_parser.parsing.hints import PlayParseHints
|
|
11
|
+
from play_parser.parsing.parser import parse_play_text
|
|
12
|
+
from play_parser.parsing.profiles import get_format_profile
|
|
13
|
+
|
|
14
|
+
CANDIDATE_FORMAT_PROFILES: tuple[str, ...] = (
|
|
15
|
+
"dot_block",
|
|
16
|
+
"colon_inline",
|
|
17
|
+
"dot_inline",
|
|
18
|
+
"mixed_parenthetical",
|
|
19
|
+
"narrative_stage_heavy",
|
|
20
|
+
"generic",
|
|
21
|
+
)
|
|
22
|
+
DEFAULT_SAMPLE_CHARS = 2_000
|
|
23
|
+
LOW_SCORE = -10_000
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
@dataclass(frozen=True, slots=True)
|
|
27
|
+
class ProfileScore:
|
|
28
|
+
profile: str
|
|
29
|
+
score: int
|
|
30
|
+
speeches: int = 0
|
|
31
|
+
unique_speakers: tuple[str, ...] = ()
|
|
32
|
+
repeated_speakers: tuple[str, ...] = ()
|
|
33
|
+
stage_directions: int = 0
|
|
34
|
+
meta_events: int = 0
|
|
35
|
+
avg_words_per_speech: float = 0.0
|
|
36
|
+
very_short_ratio: float = 0.0
|
|
37
|
+
very_long_ratio: float = 0.0
|
|
38
|
+
alternation_ratio: float = 0.0
|
|
39
|
+
error: str | None = None
|
|
40
|
+
|
|
41
|
+
def as_dict(self) -> dict[str, Any]:
|
|
42
|
+
return {
|
|
43
|
+
"profile": self.profile,
|
|
44
|
+
"score": self.score,
|
|
45
|
+
"speeches": self.speeches,
|
|
46
|
+
"unique_speakers": list(self.unique_speakers),
|
|
47
|
+
"repeated_speakers": list(self.repeated_speakers),
|
|
48
|
+
"stage_directions": self.stage_directions,
|
|
49
|
+
"meta_events": self.meta_events,
|
|
50
|
+
"avg_words_per_speech": self.avg_words_per_speech,
|
|
51
|
+
"very_short_ratio": self.very_short_ratio,
|
|
52
|
+
"very_long_ratio": self.very_long_ratio,
|
|
53
|
+
"alternation_ratio": self.alternation_ratio,
|
|
54
|
+
"error": self.error,
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
@dataclass(frozen=True, slots=True)
|
|
59
|
+
class ProfileDetectionResult:
|
|
60
|
+
selected_profile: str
|
|
61
|
+
confidence: str
|
|
62
|
+
sample_chars: int
|
|
63
|
+
scores: tuple[ProfileScore, ...]
|
|
64
|
+
|
|
65
|
+
def as_dict(self) -> dict[str, Any]:
|
|
66
|
+
return {
|
|
67
|
+
"method": "sample_score",
|
|
68
|
+
"selected_profile": self.selected_profile,
|
|
69
|
+
"confidence": self.confidence,
|
|
70
|
+
"sample_chars": self.sample_chars,
|
|
71
|
+
"scores": [score.as_dict() for score in self.scores],
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
def sample_script_body(text: str, *, max_chars: int = DEFAULT_SAMPLE_CHARS) -> str:
|
|
76
|
+
"""Return a stable parser-detection sample without cutting mid-line when possible."""
|
|
77
|
+
|
|
78
|
+
stripped = text.strip()
|
|
79
|
+
if len(stripped) <= max_chars:
|
|
80
|
+
return stripped
|
|
81
|
+
|
|
82
|
+
sample = stripped[:max_chars]
|
|
83
|
+
last_newline = sample.rfind("\n")
|
|
84
|
+
if last_newline > max(300, max_chars // 3):
|
|
85
|
+
return sample[:last_newline].strip()
|
|
86
|
+
return sample.strip()
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
def score_parsed_events(events: list[PlayEvent]) -> ProfileScore:
|
|
90
|
+
return _score_events("<parsed>", events)
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
def score_profile_events(profile: str, events: list[PlayEvent], *, error: str | None = None) -> ProfileScore:
|
|
94
|
+
if error is not None:
|
|
95
|
+
return ProfileScore(profile=profile, score=LOW_SCORE, error=error)
|
|
96
|
+
return _score_events(profile, events)
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
def _score_events(profile: str, events: list[PlayEvent]) -> ProfileScore:
|
|
100
|
+
if not events:
|
|
101
|
+
return ProfileScore(profile=profile, score=LOW_SCORE, error="No events detected")
|
|
102
|
+
|
|
103
|
+
speeches = [event for event in events if event.get("type") == "speech"]
|
|
104
|
+
stage_dirs = [event for event in events if event.get("type") == "stage_direction"]
|
|
105
|
+
meta = [event for event in events if event.get("type") == "meta"]
|
|
106
|
+
|
|
107
|
+
speakers = [
|
|
108
|
+
str(event.get("speaker") or "").strip()
|
|
109
|
+
for event in speeches
|
|
110
|
+
if str(event.get("speaker") or "").strip()
|
|
111
|
+
]
|
|
112
|
+
unique_speakers = tuple(sorted(set(speakers)))
|
|
113
|
+
|
|
114
|
+
if not speeches or not unique_speakers:
|
|
115
|
+
return ProfileScore(
|
|
116
|
+
profile=profile,
|
|
117
|
+
score=LOW_SCORE,
|
|
118
|
+
speeches=len(speeches),
|
|
119
|
+
unique_speakers=unique_speakers,
|
|
120
|
+
stage_directions=len(stage_dirs),
|
|
121
|
+
meta_events=len(meta),
|
|
122
|
+
error="No speeches or speakers detected",
|
|
123
|
+
)
|
|
124
|
+
|
|
125
|
+
word_counts = [count_words(str(event.get("text") or "")) for event in speeches]
|
|
126
|
+
avg_words = sum(word_counts) / max(1, len(word_counts))
|
|
127
|
+
very_short_ratio = sum(1 for count in word_counts if count <= 1) / len(word_counts)
|
|
128
|
+
very_long_ratio = sum(1 for count in word_counts if count > 80) / len(word_counts)
|
|
129
|
+
|
|
130
|
+
plausible_speakers = [speaker for speaker in unique_speakers if _is_plausible_speaker_name(speaker)]
|
|
131
|
+
implausible_speakers = len(unique_speakers) - len(plausible_speakers)
|
|
132
|
+
|
|
133
|
+
repeated_speakers = tuple(sorted({speaker for speaker in unique_speakers if speakers.count(speaker) >= 2}))
|
|
134
|
+
|
|
135
|
+
speaker_changes = sum(1 for previous, current in zip(speakers, speakers[1:]) if previous != current)
|
|
136
|
+
alternation_ratio = speaker_changes / max(1, len(speakers) - 1)
|
|
137
|
+
meta_ratio = len(meta) / max(1, len(events))
|
|
138
|
+
|
|
139
|
+
score = 0
|
|
140
|
+
score += min(len(unique_speakers), 8) * 80
|
|
141
|
+
score += min(len(repeated_speakers), 8) * 100
|
|
142
|
+
score += min(len(speeches), 25) * 8
|
|
143
|
+
score += min(len(stage_dirs), 8) * 10
|
|
144
|
+
|
|
145
|
+
if 2 <= avg_words <= 35:
|
|
146
|
+
score += 150
|
|
147
|
+
elif 35 < avg_words <= 80:
|
|
148
|
+
score += 40
|
|
149
|
+
else:
|
|
150
|
+
score -= 150
|
|
151
|
+
|
|
152
|
+
if 0.25 <= alternation_ratio <= 1.0:
|
|
153
|
+
score += 60
|
|
154
|
+
|
|
155
|
+
if len(stage_dirs) > len(speeches) * 0.5:
|
|
156
|
+
score -= 120
|
|
157
|
+
if 0 < alternation_ratio < 0.15 and len(speeches) >= 6:
|
|
158
|
+
score -= 120
|
|
159
|
+
score -= int(meta_ratio * 250)
|
|
160
|
+
score -= implausible_speakers * 120
|
|
161
|
+
score -= int(very_short_ratio * 180)
|
|
162
|
+
score -= int(very_long_ratio * 220)
|
|
163
|
+
|
|
164
|
+
return ProfileScore(
|
|
165
|
+
profile=profile,
|
|
166
|
+
score=score,
|
|
167
|
+
speeches=len(speeches),
|
|
168
|
+
unique_speakers=unique_speakers,
|
|
169
|
+
repeated_speakers=repeated_speakers,
|
|
170
|
+
stage_directions=len(stage_dirs),
|
|
171
|
+
meta_events=len(meta),
|
|
172
|
+
avg_words_per_speech=round(avg_words, 3),
|
|
173
|
+
very_short_ratio=round(very_short_ratio, 3),
|
|
174
|
+
very_long_ratio=round(very_long_ratio, 3),
|
|
175
|
+
alternation_ratio=round(alternation_ratio, 3),
|
|
176
|
+
)
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
def _is_plausible_speaker_name(value: str) -> bool:
|
|
180
|
+
if not value or len(value) > 40:
|
|
181
|
+
return False
|
|
182
|
+
if any(char in value for char in ".?!,:;()[]{}"):
|
|
183
|
+
return False
|
|
184
|
+
parts = value.split()
|
|
185
|
+
return 1 <= len(parts) <= 4
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
def detect_format_profile(
|
|
189
|
+
text: str,
|
|
190
|
+
*,
|
|
191
|
+
hints: PlayParseHints | Mapping[str, object] | None = None,
|
|
192
|
+
candidate_profiles: tuple[str, ...] | list[str] = CANDIDATE_FORMAT_PROFILES,
|
|
193
|
+
sample_chars: int = DEFAULT_SAMPLE_CHARS,
|
|
194
|
+
) -> ProfileDetectionResult:
|
|
195
|
+
"""Detect the most plausible built-in format profile for raw play text.
|
|
196
|
+
|
|
197
|
+
The detector parses only a short sample with each candidate profile and scores
|
|
198
|
+
the resulting dramatic structure. It is intended for profile selection, not
|
|
199
|
+
final document parsing.
|
|
200
|
+
"""
|
|
201
|
+
|
|
202
|
+
sample = sample_script_body(text, max_chars=sample_chars)
|
|
203
|
+
coerced_hints = _coerce_hints(hints)
|
|
204
|
+
scores: list[ProfileScore] = []
|
|
205
|
+
|
|
206
|
+
for profile_name in _unique_profiles(candidate_profiles):
|
|
207
|
+
try:
|
|
208
|
+
profile = None if profile_name == "generic" else get_format_profile(profile_name)
|
|
209
|
+
events = parse_play_text(sample, profile=profile, hints=coerced_hints)
|
|
210
|
+
scores.append(score_profile_events(profile_name, events))
|
|
211
|
+
except Exception as exc: # pragma: no cover - defensive path depends on profile internals
|
|
212
|
+
scores.append(score_profile_events(profile_name, [], error=str(exc)))
|
|
213
|
+
|
|
214
|
+
scores.sort(key=lambda item: item.score, reverse=True)
|
|
215
|
+
if not scores:
|
|
216
|
+
raise ValueError("No candidate format profiles supplied")
|
|
217
|
+
|
|
218
|
+
best = scores[0]
|
|
219
|
+
second = scores[1] if len(scores) > 1 else None
|
|
220
|
+
confidence = _confidence(best, second)
|
|
221
|
+
return ProfileDetectionResult(
|
|
222
|
+
selected_profile=best.profile,
|
|
223
|
+
confidence=confidence,
|
|
224
|
+
sample_chars=len(sample),
|
|
225
|
+
scores=tuple(scores),
|
|
226
|
+
)
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
def _unique_profiles(profiles: tuple[str, ...] | list[str]) -> list[str]:
|
|
230
|
+
seen: set[str] = set()
|
|
231
|
+
output: list[str] = []
|
|
232
|
+
for profile in profiles:
|
|
233
|
+
if profile in seen:
|
|
234
|
+
continue
|
|
235
|
+
seen.add(profile)
|
|
236
|
+
output.append(profile)
|
|
237
|
+
return output
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
def _confidence(best: ProfileScore, second: ProfileScore | None) -> str:
|
|
241
|
+
if best.score < 250:
|
|
242
|
+
return "low"
|
|
243
|
+
if second is not None and best.score - second.score < 75:
|
|
244
|
+
return "medium"
|
|
245
|
+
return "high"
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
def _coerce_hints(hints: PlayParseHints | Mapping[str, object] | None) -> PlayParseHints | None:
|
|
249
|
+
if hints is None:
|
|
250
|
+
return None
|
|
251
|
+
if isinstance(hints, PlayParseHints):
|
|
252
|
+
return hints
|
|
253
|
+
return PlayParseHints(**dict(hints))
|
|
@@ -699,6 +699,7 @@ src/play_parser/parsing/front_matter.py
|
|
|
699
699
|
src/play_parser/parsing/fsm.py
|
|
700
700
|
src/play_parser/parsing/hints.py
|
|
701
701
|
src/play_parser/parsing/parser.py
|
|
702
|
+
src/play_parser/parsing/profile_detection.py
|
|
702
703
|
src/play_parser/parsing/speakers.py
|
|
703
704
|
src/play_parser/parsing/speech.py
|
|
704
705
|
src/play_parser/parsing/stage.py
|
|
@@ -727,6 +728,7 @@ tests/test_ingestor.py
|
|
|
727
728
|
tests/test_json_schema.py
|
|
728
729
|
tests/test_parser_core.py
|
|
729
730
|
tests/test_parser_factory.py
|
|
731
|
+
tests/test_profile_detection.py
|
|
730
732
|
tests/test_profiles.py
|
|
731
733
|
tests/test_public_api.py
|
|
732
734
|
tests/test_validation_strict_types.py
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from play_parser import PlayParser, detect_format_profile
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
DOT_BLOCK_TEXT = """Gin vs Whiskey
|
|
7
|
+
A light comic scene for two men
|
|
8
|
+
|
|
9
|
+
Characters:
|
|
10
|
+
TOM - Warm, precise.
|
|
11
|
+
BEN - Easygoing, dry wit.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
(TOM sits at the bar. BEN enters.)
|
|
16
|
+
|
|
17
|
+
BEN
|
|
18
|
+
Evening.
|
|
19
|
+
|
|
20
|
+
TOM
|
|
21
|
+
Evening. You're late.
|
|
22
|
+
|
|
23
|
+
BEN
|
|
24
|
+
By four minutes.
|
|
25
|
+
|
|
26
|
+
TOM
|
|
27
|
+
In cocktail time, that's a lifetime.
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
COLON_INLINE_TEXT = """The Ferry Bell
|
|
31
|
+
|
|
32
|
+
FERRYMAN: Last crossing.
|
|
33
|
+
PASSENGER: Is there room?
|
|
34
|
+
FERRYMAN: For one more.
|
|
35
|
+
"""
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
def test_detect_format_profile_picks_generic_for_bare_speaker_blocks() -> None:
|
|
39
|
+
result = detect_format_profile(DOT_BLOCK_TEXT, hints={"body_start_after": "---"})
|
|
40
|
+
|
|
41
|
+
assert result.selected_profile == "generic"
|
|
42
|
+
assert result.confidence in {"medium", "high"}
|
|
43
|
+
assert result.scores[0].score > result.scores[-1].score
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
def test_auto_profile_parsing_detects_characters_and_records_metadata() -> None:
|
|
47
|
+
document = PlayParser.create("rule").parse_document(
|
|
48
|
+
DOT_BLOCK_TEXT,
|
|
49
|
+
profile="auto",
|
|
50
|
+
hints={"body_start_after": "---"},
|
|
51
|
+
source_name="Gin vs Whiskey.txt",
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
assert document["metadata"]["selected_format_profile"] == "generic"
|
|
55
|
+
assert document["metadata"]["profile_detection"]["method"] == "sample_score"
|
|
56
|
+
assert document["metadata"]["characters"] == ["Ben", "Tom"]
|
|
57
|
+
assert document["metadata"]["stats"]["speeches"] == 4
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
def test_default_profile_alias_uses_auto_detection_for_backward_compatibility() -> None:
|
|
61
|
+
document = PlayParser.create("rule").parse_document(
|
|
62
|
+
DOT_BLOCK_TEXT,
|
|
63
|
+
profile="default",
|
|
64
|
+
hints={"body_start_after": "---"},
|
|
65
|
+
source_name="Gin vs Whiskey.txt",
|
|
66
|
+
)
|
|
67
|
+
|
|
68
|
+
assert document["metadata"]["selected_format_profile"] == "generic"
|
|
69
|
+
assert document["metadata"]["characters"] == ["Ben", "Tom"]
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
def test_detect_format_profile_picks_colon_inline_for_colon_dialogue() -> None:
|
|
73
|
+
result = detect_format_profile(COLON_INLINE_TEXT)
|
|
74
|
+
|
|
75
|
+
assert result.selected_profile == "colon_inline"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{play_parser-1.2.0 → play_parser-1.2.1}/data/01_modern_two_hander_preamble_separator/hints.json
RENAMED
|
File without changes
|
{play_parser-1.2.0 → play_parser-1.2.1}/data/01_modern_two_hander_preamble_separator/optimal.json
RENAMED
|
File without changes
|
|
File without changes
|
{play_parser-1.2.0 → play_parser-1.2.1}/data/02_modern_three_characters_no_separator/hints.json
RENAMED
|
File without changes
|
{play_parser-1.2.0 → play_parser-1.2.1}/data/02_modern_three_characters_no_separator/optimal.json
RENAMED
|
File without changes
|
{play_parser-1.2.0 → play_parser-1.2.1}/data/03_colon_format_one_scene/03_colon_format_one_scene.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{play_parser-1.2.0 → play_parser-1.2.1}/data/07_long_preamble_cast_setting_notes/optimal.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{play_parser-1.2.0 → play_parser-1.2.1}/data/100_formal_three_hander/100_formal_three_hander.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{play_parser-1.2.0 → play_parser-1.2.1}/data/101_lift_lobby_sluglines/101_lift_lobby_sluglines.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{play_parser-1.2.0 → play_parser-1.2.1}/data/102_weather_frequency/102_weather_frequency.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{play_parser-1.2.0 → play_parser-1.2.1}/data/108_scene_is_not_a_scene/108_scene_is_not_a_scene.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{play_parser-1.2.0 → play_parser-1.2.1}/data/10_simple_spare_key_scene/10_simple_spare_key_scene.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|