Stenogram Sejmu · 2026-07-16

Piotr Kowal

Kadencja 10 · posiedzenie 62 · wypowiedź 251

Profil posła

Brak głosu imiennego z tego dnia, który potwierdzałby klub mówcy.

Pełna wypowiedź

10. kadencja, 62. posiedzenie, 2. dzień (16-07-2026) 10. punkt porządku dziennego: Sprawozdanie Komisji Infrastruktury oraz Komisji Samorządu Terytorialnego i Polityki Regionalnej o rządowym projekcie ustawy o zmianie ustawy o publicznym transporcie zbiorowym oraz niektórych innych ustaw (druki nr 2700 i 2785). Poseł Piotr Kowal (tekst niewygłoszony): Stanowisko Panie Marszałku! Wysoka Izbo! W imieniu Koalicyjnego Klubu Parlamentarnego Lewicy mam zaszczyt przedstawić stanowisko dotyczące rządowego projektu ustawy o zmianie ustawy o publicznym transporcie zbiorowym oraz niektórych innych ustaw z druku nr 2700, wraz ze sprawozdaniem komisji. Sprawnie funkcjonujący transport publiczny to jeden z podstawowych elementów dobrze zorganizowanego państwa. Nie jest on jedynie środkiem przemieszczania się, lecz warunkiem zapewnienia mieszkańcom równego dostępu do edukacji, pracy, ochrony zdrowia, administracji publicznej oraz życia społecznego. System komunikacji musi odpowiadać na rzeczywiste potrzeby mieszkańców zarówno dużych miast, jak i mniejszych miejscowości. Obowiązująca od 2010 r. ustawa o publicznym transporcie zbiorowym wymaga dostosowania do obecnych realiów. W ostatnich latach w wielu regionach Polski ograniczano liczbę połączeń autobusowych, a część miejscowości została całkowicie pozbawiona transportu publicznego. Najbardziej odczuwają to mieszkańcy terenów wiejskich, osoby starsze, osoby z niepełnosprawnościami, uczniowie oraz wszyscy, którzy nie mają możliwości korzystania z własnego samochodu. Wprowadzenie do ustawy definicji wykluczenia transportowego jasno określa zjawiska planowania działania i kierowania wsparcia tam, gdzie dostęp do komunikacji publicznej jest dziś niewystarczający. Miejsce zamieszkania nie może decydować o możliwościach korzystania z podstawowych usług publicznych. Państwo powinno zapewnić mieszkańcom minimalny standard dostępności komunikacyjnej pomiędzy gminami, powiatami i miastami wojewódzkimi. Tylko w ten sposób można zagwarantować realny dostęp do szkół, miejsc pracy, placówek ochrony zdrowia, urzędów i innych instytucji świadczących usługi publiczne. Pozytywnie oceniamy możliwość organizowania przewozów na żądanie. W wielu gminach, zwłaszcza o rozproszonej zabudowie, utrzymanie regularnych linii autobusowych nie zawsze jest uzasadnione. Elastyczne rozwiązania transportowe mogą skutecznie uzupełniać istniejącą sieć połączeń i ograniczać zjawisko wykluczenia komunikacyjnego. Na poparcie zasługuje także wzmocnienie roli marszałka województwa jako koordynatora systemu przewozów. Obecnie odpowiedzialność za organizację transportu jest rozproszona pomiędzy wielu organizatorów, co często prowadzi do nieefektywnego planowania połączeń, dublowania tras lub powstawania obszarów całkowicie pozbawionych komunikacji publicznej. Lepsza koordynacja oznacza większą efektywność wydatkowania środków publicznych oraz wygodniejszy system dla mieszkańców. Projekt ustawy zakłada, że planowanie transportu powinno wynikać z rzeczywistych potrzeb lokalnych społeczności. Sieć połączeń musi uwzględniać codzienne dojazdy do szkół, zakładów pracy, placówek medycznych, instytucji kultury oraz innych miejsc, z których mieszkańcy korzystają na co dzień. Transport publiczny nie jest kosztem, lecz inwestycją w rozwój państwa. To inwestycja w wyrównywanie szans, zwiększenie aktywności zawodowej, poprawę dostępu do edukacji i usług publicznych oraz podnoszenie jakości życia mieszkańców, szczególnie tych zamieszkujących mniejsze miasta i obszary wiejskie. Klub parlamentarny Lewicy popiera rządowy projekt ustawy o zmianie ustawy o publicznym transporcie zbiorowym oraz niektórych innych ustaw. Przebieg posiedzenia

Otwórz zachowany oryginał · Źródło urzędowe

Dowód treści wypowiedzi

Dowód kolejności na liście dnia

Kontekst w stenogramie

  1. Wcześniej · wypowiedź 249 Marcin Józefaciuk 10. kadencja, 62. posiedzenie, 2. dzień (16-07-2026) 10. punkt porządku dziennego: Sprawozdanie Komisji Infrastruktury oraz Komisji Samorządu Terytorialnego i Polityki Regionalnej o rządowym projekcie ustawy o zmianie ustawy o publicznym tr
  2. Wcześniej · wypowiedź 250 Tomasz Kostuś 10. kadencja, 62. posiedzenie, 2. dzień (16-07-2026) 10. punkt porządku dziennego: Sprawozdanie Komisji Infrastruktury oraz Komisji Samorządu Terytorialnego i Polityki Regionalnej o rządowym projekcie ustawy o zmianie ustawy o publicznym tr
  3. Później · wypowiedź 252 Dariusz Matecki 10. kadencja, 62. posiedzenie, 2. dzień (16-07-2026) 10. punkt porządku dziennego: Sprawozdanie Komisji Infrastruktury oraz Komisji Samorządu Terytorialnego i Polityki Regionalnej o rządowym projekcie ustawy o zmianie ustawy o publicznym tr
  4. Później · wypowiedź 253 Grzegorz Płaczek 10. kadencja, 62. posiedzenie, 2. dzień (16-07-2026) 10. punkt porządku dziennego: Sprawozdanie Komisji Infrastruktury oraz Komisji Samorządu Terytorialnego i Polityki Regionalnej o rządowym projekcie ustawy o zmianie ustawy o publicznym tr
1. (2.48ms; exec 2.45 + fetch 0.03; rows 1) SELECT s.object_id AS statement_id, s.statement_number, s.speaker_name, s.source_member_id, mp.object_id AS member_id, d…
2. (0.96ms; exec 0.95 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
3. (0.62ms; exec 0.61 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3926 ORDER BY ordinal
4. (0.93ms; exec 0.91 + fetch 0.02; rows 4) SELECT statement.object_id, statement.statement_number, statement.speaker_name, dayStatement.ordinal FROM sejm_transcrip…
5. (0.94ms; exec 0.94 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.obje…
6. (0.77ms; exec 0.76 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
7. (0.63ms; exec 0.62 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3924 ORDER BY ordinal
8. (0.95ms; exec 0.95 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.obje…
9. (0.64ms; exec 0.63 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
10. (0.39ms; exec 0.38 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3925 ORDER BY ordinal
11. (0.6ms; exec 0.59 + fetch 0; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.obje…
12. (0.75ms; exec 0.74 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
13. (0.91ms; exec 0.9 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3927 ORDER BY ordinal
14. (0.65ms; exec 0.64 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.obje…
15. (0.58ms; exec 0.57 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extracti…
16. (0.46ms; exec 0.45 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3928 ORDER BY ordinal
17. (3.15ms; exec 3.14 + fetch 0.02; rows 0) SELECT individual.raw_club, individual.evidence_id, f.requested_url FROM sejm_individual_votes individual JOIN sejm_vote…
toggle
1. (2.48ms; exec 2.45 + fetch 0.03; rows 1) SELECT s.object_id AS statement_id, s.statement_number, s.speaker_name, s.source_member_id, mp.object_id AS member_id, day.object_id AS day_id, day.term, day.proceeding_number, day.source_date, day.current_revision_id AS day_revision_id, dayStatement.ordinal, dayEvidence.id AS list_evidence_id, dayEvidence.selector_type AS list_selector_type, dayEvidence.selector AS list_selector, dayFetch.id AS list_fetch_id, dayFetch.requested_url AS list_source_url, dayArtifact.sha256 AS list_sha256, binding.artifact_id, binding.evidence_id AS transcript_evidence_id, transcriptEvidence.selector_type AS transcript_selector_type, transcriptEvidence.selector AS transcript_selector, transcriptFetch.id AS transcript_fetch_id, transcriptFetch.requested_url AS transcript_source_url, artifact.sha256 AS transcript_sha256, artifact.detected_mime, artifact.byte_size FROM sejm_statements s JOIN sejm_transcript_days day ON day.object_id = s.transcript_day_id LEFT JOIN sejm_mp_identities mp ON mp.term = day.term AND mp.mp_number = s.source_member_id LEFT JOIN sejm_transcript_day_statements dayStatement ON dayStatement.day_id = day.object_id AND dayStatement.day_revision_id = day.current_revision_id AND dayStatement.statement_id = s.object_id LEFT JOIN evidence dayEvidence ON dayEvidence.id = dayStatement.evidence_id LEFT JOIN fetches dayFetch ON dayFetch.id = dayEvidence.fetch_id LEFT JOIN artifacts dayArtifact ON dayArtifact.id = dayEvidence.artifact_id LEFT JOIN documents document ON document.owner_object_id = day.object_id AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', s.statement_number) LEFT JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) LEFT JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = 'html' AND binding.current_selector_sha IS NOT NULL LEFT JOIN evidence transcriptEvidence ON transcriptEvidence.id = binding.evidence_id LEFT JOIN fetches transcriptFetch ON transcriptFetch.id = transcriptEvidence.fetch_id LEFT JOIN artifacts artifact ON artifact.id = binding.artifact_id WHERE s.object_id = 13772 LIMIT 1
2. (0.96ms; exec 0.95 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = 13557 AND run.state = 'completed' ORDER BY CASE extraction.quality_state WHEN 'success' THEN 0 WHEN 'unreadable' THEN 1 ELSE 2 END, run.finished_at DESC, extraction.id DESC LIMIT 1
3. (0.62ms; exec 0.61 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3926 ORDER BY ordinal
4. (0.93ms; exec 0.91 + fetch 0.02; rows 4) SELECT statement.object_id, statement.statement_number, statement.speaker_name, dayStatement.ordinal FROM sejm_transcript_day_statements dayStatement JOIN sejm_statements statement ON statement.object_id = dayStatement.statement_id WHERE dayStatement.day_id = 13520 AND dayStatement.day_revision_id = 13100 AND dayStatement.ordinal BETWEEN 249 AND 253 AND statement.object_id <> 13772 ORDER BY dayStatement.ordinal
5. (0.94ms; exec 0.94 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = 'html' AND binding.current_selector_sha IS NOT NULL WHERE document.owner_object_id = 13520 AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', 249) LIMIT 1
6. (0.77ms; exec 0.76 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = 13555 AND run.state = 'completed' ORDER BY CASE extraction.quality_state WHEN 'success' THEN 0 WHEN 'unreadable' THEN 1 ELSE 2 END, run.finished_at DESC, extraction.id DESC LIMIT 1
7. (0.63ms; exec 0.62 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3924 ORDER BY ordinal
8. (0.95ms; exec 0.95 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = 'html' AND binding.current_selector_sha IS NOT NULL WHERE document.owner_object_id = 13520 AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', 250) LIMIT 1
9. (0.64ms; exec 0.63 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = 13556 AND run.state = 'completed' ORDER BY CASE extraction.quality_state WHEN 'success' THEN 0 WHEN 'unreadable' THEN 1 ELSE 2 END, run.finished_at DESC, extraction.id DESC LIMIT 1
10. (0.39ms; exec 0.38 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3925 ORDER BY ordinal
11. (0.6ms; exec 0.59 + fetch 0; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = 'html' AND binding.current_selector_sha IS NOT NULL WHERE document.owner_object_id = 13520 AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', 252) LIMIT 1
12. (0.75ms; exec 0.74 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = 13558 AND run.state = 'completed' ORDER BY CASE extraction.quality_state WHEN 'success' THEN 0 WHEN 'unreadable' THEN 1 ELSE 2 END, run.finished_at DESC, extraction.id DESC LIMIT 1
13. (0.91ms; exec 0.9 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3927 ORDER BY ordinal
14. (0.65ms; exec 0.64 + fetch 0.01; rows 1) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = 'html' AND binding.current_selector_sha IS NOT NULL WHERE document.owner_object_id = 13520 AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', 253) LIMIT 1
15. (0.58ms; exec 0.57 + fetch 0.01; rows 1) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = 13559 AND run.state = 'completed' ORDER BY CASE extraction.quality_state WHEN 'success' THEN 0 WHEN 'unreadable' THEN 1 ELSE 2 END, run.finished_at DESC, extraction.id DESC LIMIT 1
16. (0.46ms; exec 0.45 + fetch 0.01; rows 1) SELECT source_text FROM text_segments WHERE extraction_id = 3928 ORDER BY ordinal
17. (3.15ms; exec 3.14 + fetch 0.02; rows 0) SELECT individual.raw_club, individual.evidence_id, f.requested_url FROM sejm_individual_votes individual JOIN sejm_votes vote ON vote.object_id = individual.vote_id AND vote.current_revision_id = individual.vote_revision_id JOIN object_revisions revision ON revision.id = vote.current_revision_id JOIN evidence e ON e.id = individual.evidence_id JOIN fetches f ON f.id = e.fetch_id WHERE vote.term = 10 AND vote.sitting_number = 62 AND individual.mp_number = 472 AND LEFT(JSON_VALUE(revision.snapshot, '$.date'), 10) = '2026-07-16' AND individual.raw_club IS NOT NULL AND individual.raw_club <> '' ORDER BY vote.voting_number DESC
Top slow:
3.15ms SELECT individual.raw_club, individual.evidence_id, f.requested_url FROM sejm_individual_votes indiv…
2.48ms SELECT s.object_id AS statement_id, s.statement_number, s.speaker_name, s.source_member_id, mp.objec…
0.96ms SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run …
toggle
3.15ms SELECT individual.raw_club, individual.evidence_id, f.requested_url FROM sejm_individual_votes individual JOIN sejm_votes vote ON vote.object_id = individual.vote_id AND vote.current_revision_id = individual.vote_revision_id JOIN object_revisions revision ON revision.id = vote.current_revision_id JOIN evidence e ON e.id = individual.evidence_id JOIN fetches f ON f.id = e.fetch_id WHERE vote.term = 10 AND vote.sitting_number = 62 AND individual.mp_number = 472 AND LEFT(JSON_VALUE(revision.snapshot, '$.date'), 10) = '2026-07-16' AND individual.raw_club IS NOT NULL AND individual.raw_club <> '' ORDER BY vote.voting_number DESC
2.48ms SELECT s.object_id AS statement_id, s.statement_number, s.speaker_name, s.source_member_id, mp.object_id AS member_id, day.object_id AS day_id, day.term, day.proceeding_number, day.source_date, day.current_revision_id AS day_revision_id, dayStatement.ordinal, dayEvidence.id AS list_evidence_id, dayEvidence.selector_type AS list_selector_type, dayEvidence.selector AS list_selector, dayFetch.id AS list_fetch_id, dayFetch.requested_url AS list_source_url, dayArtifact.sha256 AS list_sha256, binding.artifact_id, binding.evidence_id AS transcript_evidence_id, transcriptEvidence.selector_type AS transcript_selector_type, transcriptEvidence.selector AS transcript_selector, transcriptFetch.id AS transcript_fetch_id, transcriptFetch.requested_url AS transcript_source_url, artifact.sha256 AS transcript_sha256, artifact.detected_mime, artifact.byte_size FROM sejm_statements s JOIN sejm_transcript_days day ON day.object_id = s.transcript_day_id LEFT JOIN sejm_mp_identities mp ON mp.term = day.term AND mp.mp_number = s.source_member_id LEFT JOIN sejm_transcript_day_statements dayStatement ON dayStatement.day_id = day.object_id AND dayStatement.day_revision_id = day.current_revision_id AND dayStatement.statement_id = s.object_id LEFT JOIN evidence dayEvidence ON dayEvidence.id = dayStatement.evidence_id LEFT JOIN fetches dayFetch ON dayFetch.id = dayEvidence.fetch_id LEFT JOIN artifacts dayArtifact ON dayArtifact.id = dayEvidence.artifact_id LEFT JOIN documents document ON document.owner_object_id = day.object_id AND document.document_kind = 'statement_transcript' AND document.source_document_key = CONCAT('sejm:statement:', s.statement_number) LEFT JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) LEFT JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = 'html' AND binding.current_selector_sha IS NOT NULL LEFT JOIN evidence transcriptEvidence ON transcriptEvidence.id = binding.evidence_id LEFT JOIN fetches transcriptFetch ON transcriptFetch.id = transcriptEvidence.fetch_id LEFT JOIN artifacts artifact ON artifact.id = binding.artifact_id WHERE s.object_id = 13772 LIMIT 1
0.96ms SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = 13557 AND run.state = 'completed' ORDER BY CASE extraction.quality_state WHEN 'success' THEN 0 WHEN 'unreadable' THEN 1 ELSE 2 END, run.finished_at DESC, extraction.id DESC LIMIT 1
N+1 candidates:
5× (3.7ms) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing…
5× (3.01ms) SELECT source_text FROM text_segments WHERE extraction_id = ? ORDER BY ordinal
4× (3.14ms) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON versi…
toggle
5× (3.7ms) SELECT extraction.id, extraction.quality_state FROM extractions extraction JOIN processing_runs run ON run.id = extraction.run_id WHERE extraction.source_artifact_id = ? AND run.state = ? ORDER BY CASE extraction.quality_state WHEN ? THEN ? WHEN ? THEN ? ELSE ? END, run.finished_at DESC, extraction.id DESC LIMIT ?
5× (3.01ms) SELECT source_text FROM text_segments WHERE extraction_id = ? ORDER BY ordinal
4× (3.14ms) SELECT binding.artifact_id FROM documents document JOIN document_versions version ON version.document_id = document.object_id AND version.sequence_no = (SELECT MAX(latest.sequence_no) FROM document_versions latest WHERE latest.document_id = document.object_id) JOIN document_version_artifacts binding ON binding.version_id = version.object_id AND binding.role = ? AND binding.current_selector_sha IS NOT NULL WHERE document.owner_object_id = ? AND document.document_kind = ? AND document.source_document_key = CONCAT(?, ?) LIMIT ?
PHP: 21ms | App: 20.8ms | DB: 16.4ms (17, rows: 19) [exec: 16.2ms, fetch: 0.2ms] | View: 0.2ms (1) | Mem: 2MB (peak: 2MB) | Files: 20
toggle files
(0.18ms) /app/templates/speeches/show.php
/app/public/index.php
/app/vendor/autoload.php
/app/vendor/composer/autoload_real.php
/app/vendor/composer/platform_check.php
/app/vendor/composer/ClassLoader.php
/app/vendor/composer/autoload_static.php
/app/vendor/symfony/deprecation-contracts/function.php
/app/vendor/symfony/polyfill-php83/bootstrap.php
/app/lib/PFrame.php
/app/config/credentials/local.php
/app/src/Http/PublicResponseCache.php
/app/src/Http/AuthRoutes.php
/app/src/Http/ReviewDecisionRoutes.php
/app/src/Http/TopicDecisionRoutes.php
/app/src/Http/WatchRoutes.php
/app/src/Http/SpeechController.php
/app/src/Overview/SpeechReadModel.php
/app/src/Text/TextSearch.php
/app/templates/layout.php