openrag/coverage.xml
Edwin Jose 3881c50ad5 Add comprehensive test suite and Makefile targets
Introduces a full test suite under the tests/ directory, including API, service, connector, and utility tests, along with fixtures and documentation. Expands Makefile with granular test commands for unit, integration, API, service, connector, coverage, and quick tests. Adds configuration files for pytest and coverage reporting, and provides a quickstart guide for testing workflow.
2025-10-07 04:41:52 -04:00

10663 lines
477 KiB
XML

<?xml version="1.0" ?>
<coverage version="7.10.7" timestamp="1759826382692" lines-valid="10163" lines-covered="274" line-rate="0.02696" branches-valid="3084" branches-covered="15" branch-rate="0.004864" complexity="0">
<!-- Generated by coverage.py: https://coverage.readthedocs.io/en/7.10.7 -->
<!-- Based on https://raw.githubusercontent.com/cobertura/web/master/htdocs/xml/coverage-04.dtd -->
<sources>
<source>/Users/edwin.jose/Documents/openrag/src</source>
</sources>
<packages>
<package name="." line-rate="0.02526" branch-rate="0" complexity="0">
<classes>
<class name="agent.py" filename="agent.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="3" hits="0"/>
<line number="6" hits="0"/>
<line number="9" hits="0"/>
<line number="12" hits="0"/>
<line number="14" hits="0"/>
<line number="17" hits="0"/>
<line number="19" hits="0"/>
<line number="22" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="23,26"/>
<line number="23" hits="0"/>
<line number="26" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="27,33"/>
<line number="27" hits="0"/>
<line number="30" hits="0"/>
<line number="33" hits="0"/>
<line number="45" hits="0"/>
<line number="48" hits="0"/>
<line number="51" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="52,53"/>
<line number="52" hits="0"/>
<line number="53" hits="0"/>
<line number="56" hits="0"/>
<line number="57" hits="0"/>
<line number="58" hits="0"/>
<line number="59" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="60,63"/>
<line number="60" hits="0"/>
<line number="61" hits="0"/>
<line number="63" hits="0"/>
<line number="76" hits="0"/>
<line number="82" hits="0"/>
<line number="85" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="86,93"/>
<line number="86" hits="0"/>
<line number="90" hits="0"/>
<line number="93" hits="0"/>
<line number="94" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="95,98"/>
<line number="95" hits="0"/>
<line number="98" hits="0"/>
<line number="99" hits="0"/>
<line number="103" hits="0"/>
<line number="111" hits="0"/>
<line number="113" hits="0"/>
<line number="115" hits="0"/>
<line number="121" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="122,124"/>
<line number="122" hits="0"/>
<line number="124" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="125,128"/>
<line number="125" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="126,128"/>
<line number="126" hits="0"/>
<line number="128" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="129,131"/>
<line number="129" hits="0"/>
<line number="131" hits="0"/>
<line number="133" hits="0"/>
<line number="134" hits="0"/>
<line number="135" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="136,181"/>
<line number="136" hits="0"/>
<line number="137" hits="0"/>
<line number="142" hits="0"/>
<line number="145" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="146,147"/>
<line number="146" hits="0"/>
<line number="147" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="149,160"/>
<line number="149" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="150,156"/>
<line number="150" hits="0"/>
<line number="156" hits="0"/>
<line number="157" hits="0"/>
<line number="160" hits="0"/>
<line number="162" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="164,165"/>
<line number="164" hits="0"/>
<line number="165" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="166,168"/>
<line number="166" hits="0"/>
<line number="168" hits="0"/>
<line number="170" hits="0"/>
<line number="171" hits="0"/>
<line number="173" hits="0"/>
<line number="174" hits="0"/>
<line number="181" hits="0"/>
<line number="182" hits="0"/>
<line number="184" hits="0"/>
<line number="185" hits="0"/>
<line number="186" hits="0"/>
<line number="188" hits="0"/>
<line number="189" hits="0"/>
<line number="193" hits="0"/>
<line number="201" hits="0"/>
<line number="202" hits="0"/>
<line number="205" hits="0"/>
<line number="211" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="212,213"/>
<line number="212" hits="0"/>
<line number="213" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="214,216"/>
<line number="214" hits="0"/>
<line number="216" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="217,220"/>
<line number="217" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="218,220"/>
<line number="218" hits="0"/>
<line number="220" hits="0"/>
<line number="222" hits="0"/>
<line number="223" hits="0"/>
<line number="226" hits="0"/>
<line number="230" hits="0"/>
<line number="231" hits="0"/>
<line number="232" hits="0"/>
<line number="233" hits="0"/>
<line number="235" hits="0"/>
<line number="236" hits="0"/>
<line number="240" hits="0"/>
<line number="248" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,256"/>
<line number="256" hits="0"/>
<line number="260" hits="0"/>
<line number="267" hits="0"/>
<line number="275" hits="0"/>
<line number="279" hits="0"/>
<line number="286" hits="0"/>
<line number="287" hits="0"/>
<line number="288" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="296,301"/>
<line number="296" hits="0"/>
<line number="300" hits="0"/>
<line number="301" hits="0"/>
<line number="302" hits="0"/>
<line number="303" hits="0"/>
<line number="304" hits="0"/>
<line number="306" hits="0"/>
<line number="307" hits="0"/>
<line number="311" hits="0"/>
<line number="318" hits="0"/>
<line number="323" hits="0"/>
<line number="324" hits="0"/>
<line number="329" hits="0"/>
<line number="331" hits="0"/>
<line number="332" hits="0"/>
<line number="333" hits="0"/>
<line number="337" hits="0"/>
<line number="344" hits="0"/>
<line number="349" hits="0"/>
<line number="358" hits="0"/>
<line number="359" hits="0"/>
<line number="364" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="365,380"/>
<line number="365" hits="0"/>
<line number="366" hits="0"/>
<line number="367" hits="0"/>
<line number="372" hits="0"/>
<line number="373" hits="0"/>
<line number="380" hits="0"/>
<line number="382" hits="0"/>
<line number="386" hits="0"/>
<line number="394" hits="0"/>
<line number="397" hits="0"/>
<line number="399" hits="0"/>
<line number="400" hits="0"/>
<line number="402" hits="0"/>
<line number="403" hits="0"/>
<line number="404" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="412,428"/>
<line number="412" hits="0"/>
<line number="413" hits="0"/>
<line number="415" hits="0"/>
<line number="416" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="417,419"/>
<line number="417" hits="0"/>
<line number="419" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="420,421"/>
<line number="420" hits="0"/>
<line number="421" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="422,425"/>
<line number="422" hits="0"/>
<line number="423" hits="0"/>
<line number="424" hits="0"/>
<line number="425" hits="0"/>
<line number="428" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,429"/>
<line number="429" hits="0"/>
<line number="435" hits="0"/>
<line number="438" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,439"/>
<line number="439" hits="0"/>
<line number="440" hits="0"/>
<line number="441" hits="0"/>
<line number="447" hits="0"/>
<line number="456" hits="0"/>
<line number="462" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="464,471"/>
<line number="464" hits="0"/>
<line number="465" hits="0"/>
<line number="471" hits="0"/>
<line number="473" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="474,481"/>
<line number="474" hits="0"/>
<line number="475" hits="0"/>
<line number="476" hits="0"/>
<line number="481" hits="0"/>
<line number="489" hits="0"/>
<line number="494" hits="0"/>
<line number="500" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="502,517"/>
<line number="502" hits="0"/>
<line number="511" hits="0"/>
<line number="512" hits="0"/>
<line number="517" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="518,521"/>
<line number="518" hits="0"/>
<line number="521" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="522,552"/>
<line number="522" hits="0"/>
<line number="523" hits="0"/>
<line number="526" hits="0"/>
<line number="527" hits="0"/>
<line number="529" hits="0"/>
<line number="530" hits="0"/>
<line number="531" hits="0"/>
<line number="532" hits="0"/>
<line number="534" hits="0"/>
<line number="537" hits="0"/>
<line number="544" hits="0"/>
<line number="545" hits="0"/>
<line number="552" hits="0"/>
<line number="554" hits="0"/>
<line number="558" hits="0"/>
<line number="566" hits="0"/>
<line number="573" hits="0"/>
<line number="576" hits="0"/>
<line number="578" hits="0"/>
<line number="579" hits="0"/>
<line number="581" hits="0"/>
<line number="582" hits="0"/>
<line number="583" hits="0"/>
<line number="585" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="594,612"/>
<line number="594" hits="0"/>
<line number="595" hits="0"/>
<line number="597" hits="0"/>
<line number="598" hits="0"/>
<line number="600" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="601,603"/>
<line number="601" hits="0"/>
<line number="603" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="604,605"/>
<line number="604" hits="0"/>
<line number="605" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="606,609"/>
<line number="606" hits="0"/>
<line number="607" hits="0"/>
<line number="608" hits="0"/>
<line number="609" hits="0"/>
<line number="612" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,613"/>
<line number="613" hits="0"/>
<line number="620" hits="0"/>
<line number="623" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="624,628"/>
<line number="624" hits="0"/>
<line number="625" hits="0"/>
<line number="628" hits="0"/>
<line number="629" hits="0"/>
<line number="631" hits="0"/>
<line number="632" hits="0"/>
<line number="633" hits="0"/>
<line number="634" hits="0"/>
<line number="636" hits="0"/>
<line number="641" hits="0"/>
<line number="643" hits="0"/>
<line number="645" hits="0"/>
<line number="647" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="648,653"/>
<line number="648" hits="0"/>
<line number="649" hits="0"/>
<line number="650" hits="0"/>
<line number="653" hits="0"/>
<line number="654" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="655,659"/>
<line number="655" hits="0"/>
<line number="656" hits="0"/>
<line number="659" hits="0"/>
<line number="660" hits="0"/>
<line number="661" hits="0"/>
<line number="662" hits="0"/>
<line number="663" hits="0"/>
<line number="664" hits="0"/>
<line number="666" hits="0"/>
<line number="667" hits="0"/>
<line number="668" hits="0"/>
<line number="669" hits="0"/>
</lines>
</class>
<class name="auth_context.py" filename="auth_context.py" complexity="0" line-rate="0.6071" branch-rate="1">
<methods/>
<lines>
<line number="6" hits="1"/>
<line number="7" hits="1"/>
<line number="10" hits="1"/>
<line number="13" hits="1"/>
<line number="16" hits="1"/>
<line number="19" hits="1"/>
<line number="22" hits="1"/>
<line number="27" hits="1"/>
<line number="29" hits="0"/>
<line number="30" hits="0"/>
<line number="33" hits="1"/>
<line number="35" hits="0"/>
<line number="38" hits="1"/>
<line number="40" hits="0"/>
<line number="43" hits="1"/>
<line number="45" hits="0"/>
<line number="48" hits="1"/>
<line number="50" hits="0"/>
<line number="53" hits="1"/>
<line number="55" hits="0"/>
<line number="58" hits="1"/>
<line number="60" hits="0"/>
<line number="63" hits="1"/>
<line number="65" hits="0"/>
<line number="68" hits="1"/>
<line number="70" hits="0"/>
<line number="73" hits="1"/>
<line number="75" hits="0"/>
</lines>
</class>
<class name="auth_middleware.py" filename="auth_middleware.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="8" hits="0"/>
<line number="11" hits="0"/>
<line number="14" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="15,17"/>
<line number="15" hits="0"/>
<line number="17" hits="0"/>
<line number="18" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="19,21"/>
<line number="19" hits="0"/>
<line number="21" hits="0"/>
<line number="24" hits="0"/>
<line number="27" hits="0"/>
<line number="28" hits="0"/>
<line number="30" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="31,42"/>
<line number="31" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="42" hits="0"/>
<line number="43" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="44,49"/>
<line number="44" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0"/>
<line number="53" hits="0"/>
<line number="55" hits="0"/>
<line number="57" hits="0"/>
<line number="60" hits="0"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="66" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="68,75"/>
<line number="68" hits="0"/>
<line number="69" hits="0"/>
<line number="71" hits="0"/>
<line number="72" hits="0"/>
<line number="73" hits="0"/>
<line number="75" hits="0"/>
<line number="76" hits="0"/>
<line number="77" hits="0"/>
<line number="82" hits="0"/>
<line number="84" hits="0"/>
<line number="86" hits="0"/>
</lines>
</class>
<class name="main.py" filename="main.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="23" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="30" hits="0"/>
<line number="50" hits="0"/>
<line number="51" hits="0"/>
<line number="54" hits="0"/>
<line number="64" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="69" hits="0"/>
<line number="70" hits="0"/>
<line number="74" hits="0"/>
<line number="75" hits="0"/>
<line number="76" hits="0"/>
<line number="77" hits="0"/>
<line number="78" hits="0"/>
<line number="79" hits="0"/>
<line number="81" hits="0"/>
<line number="88" hits="0"/>
<line number="90" hits="0"/>
<line number="91" hits="0"/>
<line number="93" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,94"/>
<line number="94" hits="0"/>
<line number="95" hits="0"/>
<line number="96" hits="0"/>
<line number="97" hits="0"/>
<line number="98" hits="0"/>
<line number="99" hits="0"/>
<line number="105" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="106,108"/>
<line number="106" hits="0"/>
<line number="108" hits="0"/>
<line number="111" hits="0"/>
<line number="113" hits="0"/>
<line number="116" hits="0"/>
<line number="125" hits="0"/>
<line number="126" hits="0"/>
<line number="129" hits="0"/>
<line number="130" hits="0"/>
<line number="134" hits="0"/>
<line number="136" hits="0"/>
<line number="138" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="139,143"/>
<line number="139" hits="0"/>
<line number="140" hits="0"/>
<line number="143" hits="0"/>
<line number="144" hits="0"/>
<line number="152" hits="0"/>
<line number="153" hits="0"/>
<line number="162" hits="0"/>
<line number="164" hits="0"/>
<line number="167" hits="0"/>
<line number="168" hits="0"/>
<line number="171" hits="0"/>
<line number="174" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="175,184"/>
<line number="175" hits="0"/>
<line number="178" hits="0"/>
<line number="184" hits="0"/>
<line number="191" hits="0"/>
<line number="192" hits="0"/>
<line number="209" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="210,217"/>
<line number="210" hits="0"/>
<line number="213" hits="0"/>
<line number="217" hits="0"/>
<line number="223" hits="0"/>
<line number="226" hits="0"/>
<line number="228" hits="0"/>
<line number="229" hits="0"/>
<line number="230" hits="0"/>
<line number="233" hits="0"/>
<line number="236" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="237,265"/>
<line number="237" hits="0"/>
<line number="239" hits="0"/>
<line number="246" hits="0"/>
<line number="260" hits="0"/>
<line number="261" hits="0"/>
<line number="262" hits="0"/>
<line number="263" hits="0"/>
<line number="265" hits="0"/>
<line number="268" hits="0"/>
<line number="270" hits="0"/>
<line number="271" hits="0"/>
<line number="272" hits="0"/>
<line number="273" hits="0"/>
<line number="274" hits="0"/>
<line number="275" hits="0"/>
<line number="280" hits="0"/>
<line number="282" hits="0"/>
<line number="283" hits="0"/>
<line number="287" hits="0"/>
<line number="288" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="289,296"/>
<line number="289" hits="0"/>
<line number="293" hits="0"/>
<line number="296" hits="0"/>
<line number="302" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="303,308"/>
<line number="303" hits="0"/>
<line number="306" hits="0"/>
<line number="308" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="309,311"/>
<line number="309" hits="0"/>
<line number="311" hits="0"/>
<line number="313" hits="0"/>
<line number="314" hits="0"/>
<line number="317" hits="0"/>
<line number="319" hits="0"/>
<line number="320" hits="0"/>
<line number="322" hits="0"/>
<line number="327" hits="0"/>
<line number="328" hits="0"/>
<line number="330" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="331,407"/>
<line number="331" hits="0"/>
<line number="332" hits="0"/>
<line number="335" hits="0"/>
<line number="336" hits="0"/>
<line number="339" hits="0"/>
<line number="341" hits="0"/>
<line number="342" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="343,345"/>
<line number="343" hits="0"/>
<line number="345" hits="0"/>
<line number="348" hits="0"/>
<line number="350" hits="0"/>
<line number="354" hits="0"/>
<line number="357" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="359,367"/>
<line number="359" hits="0"/>
<line number="363" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="364,367"/>
<line number="364" hits="0"/>
<line number="367" hits="0"/>
<line number="379" hits="0"/>
<line number="392" hits="0"/>
<line number="397" hits="0"/>
<line number="399" hits="0"/>
<line number="400" hits="0"/>
<line number="405" hits="0"/>
<line number="407" hits="0"/>
<line number="415" hits="0"/>
<line number="417" hits="0"/>
<line number="423" hits="0"/>
<line number="425" hits="0"/>
<line number="433" hits="0"/>
<line number="436" hits="0"/>
<line number="443" hits="0"/>
<line number="445" hits="0"/>
<line number="448" hits="0"/>
<line number="450" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="451,454"/>
<line number="451" hits="0"/>
<line number="454" hits="0"/>
<line number="457" hits="0"/>
<line number="460" hits="0"/>
<line number="463" hits="0"/>
<line number="466" hits="0"/>
<line number="469" hits="0"/>
<line number="470" hits="0"/>
<line number="471" hits="0"/>
<line number="472" hits="0"/>
<line number="473" hits="0"/>
<line number="474" hits="0"/>
<line number="475" hits="0"/>
<line number="476" hits="0"/>
<line number="479" hits="0"/>
<line number="484" hits="0"/>
<line number="488" hits="0"/>
<line number="498" hits="0"/>
<line number="504" hits="0"/>
<line number="514" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="515,527"/>
<line number="515" hits="0"/>
<line number="516" hits="0"/>
<line number="517" hits="0"/>
<line number="518" hits="0"/>
<line number="522" hits="0"/>
<line number="523" hits="0"/>
<line number="527" hits="0"/>
<line number="529" hits="0"/>
<line number="531" hits="0"/>
<line number="547" hits="0"/>
<line number="549" hits="0"/>
<line number="552" hits="0"/>
<line number="1123" hits="0"/>
<line number="1124" hits="0"/>
<line number="1125" hits="0"/>
<line number="1128" hits="0"/>
<line number="1129" hits="0"/>
<line number="1131" hits="0"/>
<line number="1132" hits="0"/>
<line number="1133" hits="0"/>
<line number="1136" hits="0"/>
<line number="1137" hits="0"/>
<line number="1138" hits="0"/>
<line number="1140" hits="0"/>
<line number="1143" hits="0"/>
<line number="1146" hits="0"/>
<line number="1147" hits="0"/>
<line number="1150" hits="0"/>
<line number="1152" hits="0"/>
<line number="1154" hits="0"/>
<line number="1155" hits="0"/>
<line number="1156" hits="0"/>
<line number="1159" hits="0"/>
<line number="1160" hits="0"/>
<line number="1166" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1167,1188"/>
<line number="1167" hits="0"/>
<line number="1168" hits="0"/>
<line number="1172" hits="0"/>
<line number="1175" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1166,1176"/>
<line number="1176" hits="0"/>
<line number="1177" hits="0"/>
<line number="1178" hits="0"/>
<line number="1181" hits="0"/>
<line number="1182" hits="0"/>
<line number="1188" hits="0"/>
<line number="1193" hits="0"/>
<line number="1194" hits="0"/>
<line number="1197" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,1198"/>
<line number="1198" hits="0"/>
<line number="1202" hits="0"/>
<line number="1205" hits="0"/>
<line number="1208" hits="0"/>
</lines>
</class>
<class name="session_manager.py" filename="session_manager.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0"/>
<line number="15" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="28" hits="0"/>
<line number="29" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="30,31"/>
<line number="30" hits="0"/>
<line number="31" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,32"/>
<line number="32" hits="0"/>
<line number="34" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0"/>
<line number="48" hits="0"/>
<line number="51" hits="0"/>
<line number="57" hits="0"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="64" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="68" hits="0"/>
<line number="70" hits="0"/>
<line number="71" hits="0"/>
<line number="72" hits="0"/>
<line number="76" hits="0"/>
<line number="77" hits="0"/>
<line number="80" hits="0"/>
<line number="82" hits="0"/>
<line number="83" hits="0"/>
<line number="84" hits="0"/>
<line number="85" hits="0"/>
<line number="87" hits="0"/>
<line number="91" hits="0"/>
<line number="92" hits="0"/>
<line number="93" hits="0"/>
<line number="98" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="99,101"/>
<line number="99" hits="0"/>
<line number="101" hits="0"/>
<line number="106" hits="0"/>
<line number="108" hits="0"/>
<line number="109" hits="0"/>
<line number="110" hits="0"/>
<line number="112" hits="0"/>
<line number="116" hits="0"/>
<line number="117" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="118,121"/>
<line number="118" hits="0"/>
<line number="121" hits="0"/>
<line number="122" hits="0"/>
<line number="131" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="132,134"/>
<line number="132" hits="0"/>
<line number="134" hits="0"/>
<line number="137" hits="0"/>
<line number="139" hits="0"/>
<line number="142" hits="0"/>
<line number="145" hits="0"/>
<line number="146" hits="0"/>
<line number="163" hits="0"/>
<line number="164" hits="0"/>
<line number="166" hits="0"/>
<line number="168" hits="0"/>
<line number="169" hits="0"/>
<line number="175" hits="0"/>
<line number="176" hits="0"/>
<line number="177" hits="0"/>
<line number="178" hits="0"/>
<line number="179" hits="0"/>
<line number="181" hits="0"/>
<line number="183" hits="0"/>
<line number="185" hits="0"/>
<line number="187" hits="0"/>
<line number="188" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="189,190"/>
<line number="189" hits="0"/>
<line number="190" hits="0"/>
<line number="192" hits="0"/>
<line number="195" hits="0"/>
<line number="198" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="199,205"/>
<line number="199" hits="0"/>
<line number="201" hits="0"/>
<line number="205" hits="0"/>
<line number="207" hits="0"/>
<line number="209" hits="0"/>
<line number="211" hits="0"/>
<line number="219" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="220,230"/>
<line number="220" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="222,227"/>
<line number="222" hits="0"/>
<line number="223" hits="0"/>
<line number="224" hits="0"/>
<line number="227" hits="0"/>
<line number="228" hits="0"/>
<line number="230" hits="0"/>
<line number="232" hits="0"/>
<line number="234" hits="0"/>
<line number="235" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="api" line-rate="0" branch-rate="0" complexity="0">
<classes>
<class name="__init__.py" filename="api/__init__.py" complexity="0" line-rate="1" branch-rate="1">
<methods/>
<lines/>
</class>
<class name="auth.py" filename="api/auth.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="5" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="17" hits="0"/>
<line number="20" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="31" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="39" hits="0"/>
<line number="44" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="45,58"/>
<line number="45" hits="0"/>
<line number="48" hits="0"/>
<line number="56" hits="0"/>
<line number="58" hits="0"/>
<line number="60" hits="0"/>
<line number="61" hits="0"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="67" hits="0"/>
<line number="69" hits="0"/>
<line number="70" hits="0"/>
<line number="73" hits="0"/>
<line number="75" hits="0"/>
<line number="80" hits="0"/>
<line number="84" hits="0"/>
</lines>
</class>
<class name="chat.py" filename="api/chat.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="5" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="16" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="21" hits="0"/>
<line number="23" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="24,27"/>
<line number="24" hits="0"/>
<line number="27" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="28,32"/>
<line number="28" hits="0"/>
<line number="30" hits="0"/>
<line number="32" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="37" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="38,55"/>
<line number="38" hits="0"/>
<line number="55" hits="0"/>
<line number="62" hits="0"/>
<line number="65" hits="0"/>
<line number="67" hits="0"/>
<line number="68" hits="0"/>
<line number="69" hits="0"/>
<line number="70" hits="0"/>
<line number="71" hits="0"/>
<line number="72" hits="0"/>
<line number="73" hits="0"/>
<line number="75" hits="0"/>
<line number="76" hits="0"/>
<line number="78" hits="0"/>
<line number="80" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="81,84"/>
<line number="81" hits="0"/>
<line number="84" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="85,89"/>
<line number="85" hits="0"/>
<line number="87" hits="0"/>
<line number="89" hits="0"/>
<line number="91" hits="0"/>
<line number="92" hits="0"/>
<line number="94" hits="0"/>
<line number="95" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="96,113"/>
<line number="96" hits="0"/>
<line number="113" hits="0"/>
<line number="120" hits="0"/>
<line number="122" hits="0"/>
<line number="123" hits="0"/>
<line number="125" hits="0"/>
<line number="126" hits="0"/>
<line number="127" hits="0"/>
<line number="132" hits="0"/>
<line number="134" hits="0"/>
<line number="135" hits="0"/>
<line number="137" hits="0"/>
<line number="138" hits="0"/>
<line number="139" hits="0"/>
<line number="140" hits="0"/>
<line number="141" hits="0"/>
<line number="146" hits="0"/>
<line number="148" hits="0"/>
<line number="149" hits="0"/>
<line number="151" hits="0"/>
<line number="152" hits="0"/>
<line number="153" hits="0"/>
<line number="154" hits="0"/>
<line number="155" hits="0"/>
<line number="160" hits="0"/>
<line number="162" hits="0"/>
<line number="163" hits="0"/>
<line number="164" hits="0"/>
<line number="166" hits="0"/>
<line number="168" hits="0"/>
<line number="170" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="171,173"/>
<line number="171" hits="0"/>
<line number="173" hits="0"/>
<line number="177" hits="0"/>
<line number="178" hits="0"/>
<line number="179" hits="0"/>
</lines>
</class>
<class name="connector_router.py" filename="api/connector_router.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="5" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0"/>
<line number="16" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="28" hits="0"/>
<line number="33" hits="0"/>
<line number="35" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="36,39"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="44" hits="0"/>
<line number="48" hits="0"/>
<line number="50" hits="0"/>
<line number="51" hits="0"/>
<line number="53" hits="0"/>
<line number="55" hits="0"/>
<line number="57" hits="0"/>
<line number="59" hits="0"/>
<line number="63" hits="0"/>
<line number="67" hits="0"/>
<line number="72" hits="0"/>
<line number="73" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="74,76"/>
<line number="74" hits="0"/>
<line number="76" hits="0"/>
</lines>
</class>
<class name="connectors.py" filename="api/connectors.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="5" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="20" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="27" hits="0"/>
<line number="28" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="37" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="43,49"/>
<line number="43" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="51,78"/>
<line number="51" hits="0"/>
<line number="55" hits="0"/>
<line number="57" hits="0"/>
<line number="58" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="59,66"/>
<line number="59" hits="0"/>
<line number="60" hits="0"/>
<line number="64" hits="0"/>
<line number="66" hits="0"/>
<line number="70" hits="0"/>
<line number="71" hits="0"/>
<line number="76" hits="0"/>
<line number="78" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="79,85"/>
<line number="79" hits="0"/>
<line number="85" hits="0"/>
<line number="90" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="91,98"/>
<line number="91" hits="0"/>
<line number="98" hits="0"/>
<line number="104" hits="0"/>
<line number="105" hits="0"/>
<line number="115" hits="0"/>
<line number="116" hits="0"/>
<line number="117" hits="0"/>
<line number="120" hits="0"/>
<line number="122" hits="0"/>
<line number="123" hits="0"/>
<line number="126" hits="0"/>
<line number="131" hits="0"/>
<line number="132" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="133,148"/>
<line number="133" hits="0"/>
<line number="134" hits="0"/>
<line number="135" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="136,138"/>
<line number="136" hits="0"/>
<line number="138" hits="0"/>
<line number="139" hits="0"/>
<line number="140" hits="0"/>
<line number="145" hits="0"/>
<line number="148" hits="0"/>
<line number="149" hits="0"/>
<line number="151" hits="0"/>
<line number="171" hits="0"/>
<line number="173" hits="0"/>
<line number="174" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="175,178"/>
<line number="175" hits="0"/>
<line number="178" hits="0"/>
<line number="179" hits="0"/>
<line number="181" hits="0"/>
<line number="187" hits="0"/>
<line number="188" hits="0"/>
<line number="191" hits="0"/>
<line number="194" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="195,200"/>
<line number="195" hits="0"/>
<line number="196" hits="0"/>
<line number="198" hits="0"/>
<line number="200" hits="0"/>
<line number="202" hits="0"/>
<line number="203" hits="0"/>
<line number="205" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="206,215"/>
<line number="206" hits="0"/>
<line number="207" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="208,211"/>
<line number="208" hits="0"/>
<line number="211" hits="0"/>
<line number="212" hits="0"/>
<line number="215" hits="0"/>
<line number="218" hits="0"/>
<line number="219" hits="0"/>
<line number="221" hits="0"/>
<line number="224" hits="0"/>
<line number="225" hits="0"/>
<line number="228" hits="0"/>
<line number="229" hits="0"/>
<line number="230" hits="0"/>
<line number="232" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="233,239"/>
<line number="233" hits="0"/>
<line number="236" hits="0"/>
<line number="239" hits="0"/>
<line number="244" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="245,253"/>
<line number="245" hits="0"/>
<line number="248" hits="0"/>
<line number="253" hits="0"/>
<line number="255" hits="0"/>
<line number="256" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="257,266"/>
<line number="257" hits="0"/>
<line number="261" hits="0"/>
<line number="266" hits="0"/>
<line number="268" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="269,297"/>
<line number="269" hits="0"/>
<line number="276" hits="0"/>
<line number="277" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="278,280"/>
<line number="278" hits="0"/>
<line number="280" hits="0"/>
<line number="283" hits="0"/>
<line number="290" hits="0"/>
<line number="297" hits="0"/>
<line number="302" hits="0"/>
<line number="308" hits="0"/>
<line number="317" hits="0"/>
<line number="318" hits="0"/>
<line number="323" hits="0"/>
<line number="325" hits="0"/>
<line number="327" hits="0"/>
<line number="337" hits="0"/>
<line number="338" hits="0"/>
<line number="339" hits="0"/>
<line number="343" hits="0"/>
<line number="345" hits="0"/>
<line number="346" hits="0"/>
<line number="348" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="349,351"/>
<line number="349" hits="0"/>
<line number="351" hits="0"/>
<line number="353" hits="0"/>
<line number="355" hits="0"/>
<line number="356" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="357,360"/>
<line number="357" hits="0"/>
<line number="360" hits="0"/>
<line number="361" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="362,367"/>
<line number="362" hits="0"/>
<line number="367" hits="0"/>
<line number="368" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="369,372"/>
<line number="369" hits="0"/>
<line number="372" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="374,388"/>
<line number="374" hits="0"/>
<line number="388" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="389,408"/>
<line number="389" hits="0"/>
<line number="390" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="391,405"/>
<line number="391" hits="0"/>
<line number="392" hits="0"/>
<line number="393" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="394,399"/>
<line number="394" hits="0"/>
<line number="395" hits="0"/>
<line number="396" hits="0"/>
<line number="397" hits="0"/>
<line number="399" hits="0"/>
<line number="405" hits="0"/>
<line number="408" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="410,433"/>
<line number="410" hits="0"/>
<line number="412" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="413,416"/>
<line number="413" hits="0"/>
<line number="416" hits="0"/>
<line number="417" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="418,420"/>
<line number="418" hits="0"/>
<line number="420" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="421,424"/>
<line number="421" hits="0"/>
<line number="424" hits="0"/>
<line number="426" hits="0"/>
<line number="427" hits="0"/>
<line number="429" hits="0"/>
<line number="430" hits="0"/>
<line number="431" hits="0"/>
<line number="433" hits="0"/>
<line number="435" hits="0"/>
<line number="436" hits="0"/>
<line number="437" hits="0"/>
</lines>
</class>
<class name="docling.py" filename="api/docling.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="11" hits="0"/>
<line number="16" hits="0"/>
<line number="18" hits="0"/>
<line number="21" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="27,37"/>
<line number="27" hits="0"/>
<line number="28" hits="0"/>
<line number="29" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="26,30"/>
<line number="30" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="37" hits="0"/>
<line number="40" hits="0"/>
<line number="42" hits="0"/>
<line number="43" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="44,55"/>
<line number="44" hits="0"/>
<line number="45" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="46,49"/>
<line number="46" hits="0"/>
<line number="47" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="51,55"/>
<line number="51" hits="0"/>
<line number="52" hits="0"/>
<line number="55" hits="0"/>
<line number="56" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="57,59"/>
<line number="57" hits="0"/>
<line number="59" hits="0"/>
<line number="60" hits="0"/>
<line number="64" hits="0"/>
<line number="65" hits="0"/>
<line number="68" hits="0"/>
<line number="73" hits="0"/>
<line number="74" hits="0"/>
<line number="75" hits="0"/>
<line number="80" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="81,86"/>
<line number="81" hits="0"/>
<line number="86" hits="0"/>
<line number="92" hits="0"/>
<line number="93" hits="0"/>
<line number="98" hits="0"/>
<line number="99" hits="0"/>
<line number="100" hits="0"/>
</lines>
</class>
<class name="documents.py" filename="api/documents.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="6" hits="0"/>
<line number="9" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="14,16"/>
<line number="14" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="19" hits="0"/>
<line number="21" hits="0"/>
<line number="26" hits="0"/>
<line number="28" hits="0"/>
<line number="30" hits="0"/>
<line number="32" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="41" hits="0"/>
<line number="43" hits="0"/>
<line number="48" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0"/>
<line number="51" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="52,54"/>
<line number="52" hits="0"/>
<line number="54" hits="0"/>
<line number="57" hits="0"/>
<line number="59" hits="0"/>
<line number="60" hits="0"/>
<line number="62" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="63,65"/>
<line number="63" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="68" hits="0"/>
<line number="70" hits="0"/>
<line number="75" hits="0"/>
<line number="77" hits="0"/>
<line number="79" hits="0"/>
<line number="81" hits="0"/>
<line number="87" hits="0"/>
<line number="88" hits="0"/>
<line number="90" hits="0"/>
<line number="97" hits="0"/>
<line number="98" hits="0"/>
<line number="99" hits="0"/>
<line number="100" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="101,103"/>
<line number="101" hits="0"/>
<line number="103" hits="0"/>
</lines>
</class>
<class name="flows.py" filename="api/flows.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="7" hits="0"/>
<line number="10" hits="0"/>
<line number="17" hits="0"/>
<line number="19" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="20,28"/>
<line number="20" hits="0"/>
<line number="28" hits="0"/>
<line number="32" hits="0"/>
<line number="34" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="35,42"/>
<line number="35" hits="0"/>
<line number="40" hits="0"/>
<line number="42" hits="0"/>
<line number="47" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0"/>
<line number="51" hits="0"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="60" hits="0"/>
</lines>
</class>
<class name="knowledge_filter.py" filename="api/knowledge_filter.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="8" hits="0"/>
<line number="11" hits="0"/>
<line number="15" hits="0"/>
<line number="17" hits="0"/>
<line number="18" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="19,23"/>
<line number="19" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="26,28"/>
<line number="26" hits="0"/>
<line number="28" hits="0"/>
<line number="29" hits="0"/>
<line number="32" hits="0"/>
<line number="33" hits="0"/>
<line number="45" hits="0"/>
<line number="50" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="51,53"/>
<line number="51" hits="0"/>
<line number="53" hits="0"/>
<line number="54" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="58,60"/>
<line number="58" hits="0"/>
<line number="60" hits="0"/>
<line number="63" hits="0"/>
<line number="67" hits="0"/>
<line number="69" hits="0"/>
<line number="70" hits="0"/>
<line number="72" hits="0"/>
<line number="73" hits="0"/>
<line number="75" hits="0"/>
<line number="80" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="81,83"/>
<line number="81" hits="0"/>
<line number="83" hits="0"/>
<line number="84" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="88,90"/>
<line number="88" hits="0"/>
<line number="90" hits="0"/>
<line number="93" hits="0"/>
<line number="97" hits="0"/>
<line number="98" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="99,103"/>
<line number="99" hits="0"/>
<line number="103" hits="0"/>
<line number="104" hits="0"/>
<line number="106" hits="0"/>
<line number="111" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="112,114"/>
<line number="112" hits="0"/>
<line number="114" hits="0"/>
<line number="115" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="116,117"/>
<line number="116" hits="0"/>
<line number="117" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="121,123"/>
<line number="121" hits="0"/>
<line number="123" hits="0"/>
<line number="126" hits="0"/>
<line number="130" hits="0"/>
<line number="131" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="132,136"/>
<line number="132" hits="0"/>
<line number="136" hits="0"/>
<line number="138" hits="0"/>
<line number="139" hits="0"/>
<line number="142" hits="0"/>
<line number="145" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="146,150"/>
<line number="146" hits="0"/>
<line number="150" hits="0"/>
<line number="153" hits="0"/>
<line number="156" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="157,162"/>
<line number="157" hits="0"/>
<line number="162" hits="0"/>
<line number="179" hits="0"/>
<line number="184" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="185,187"/>
<line number="185" hits="0"/>
<line number="187" hits="0"/>
<line number="188" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="192,194"/>
<line number="192" hits="0"/>
<line number="194" hits="0"/>
<line number="197" hits="0"/>
<line number="201" hits="0"/>
<line number="202" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="203,207"/>
<line number="203" hits="0"/>
<line number="207" hits="0"/>
<line number="208" hits="0"/>
<line number="210" hits="0"/>
<line number="215" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="216,218"/>
<line number="216" hits="0"/>
<line number="218" hits="0"/>
<line number="219" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="220,221"/>
<line number="220" hits="0"/>
<line number="221" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="225,227"/>
<line number="225" hits="0"/>
<line number="227" hits="0"/>
<line number="230" hits="0"/>
<line number="234" hits="0"/>
<line number="235" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="236,240"/>
<line number="236" hits="0"/>
<line number="240" hits="0"/>
<line number="241" hits="0"/>
<line number="242" hits="0"/>
<line number="245" hits="0"/>
<line number="248" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="249,253"/>
<line number="249" hits="0"/>
<line number="253" hits="0"/>
<line number="256" hits="0"/>
<line number="265" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="266,269"/>
<line number="266" hits="0"/>
<line number="269" hits="0"/>
<line number="278" hits="0"/>
<line number="282" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="283,295"/>
<line number="283" hits="0"/>
<line number="295" hits="0"/>
<line number="298" hits="0"/>
<line number="301" hits="0"/>
<line number="305" hits="0"/>
<line number="306" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="307,311"/>
<line number="307" hits="0"/>
<line number="311" hits="0"/>
<line number="312" hits="0"/>
<line number="314" hits="0"/>
<line number="318" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="319,321"/>
<line number="319" hits="0"/>
<line number="321" hits="0"/>
<line number="322" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="323,324"/>
<line number="323" hits="0"/>
<line number="324" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="325,327"/>
<line number="325" hits="0"/>
<line number="327" hits="0"/>
<line number="330" hits="0"/>
<line number="334" hits="0"/>
<line number="335" hits="0"/>
<line number="337" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="338,343"/>
<line number="338" hits="0"/>
<line number="343" hits="0"/>
<line number="344" hits="0"/>
<line number="347" hits="0"/>
<line number="350" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="351,356"/>
<line number="351" hits="0"/>
<line number="356" hits="0"/>
<line number="357" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="358,362"/>
<line number="358" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="357,359"/>
<line number="359" hits="0"/>
<line number="360" hits="0"/>
<line number="362" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="363,366"/>
<line number="363" hits="0"/>
<line number="366" hits="0"/>
<line number="371" hits="0"/>
<line number="375" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="376,381"/>
<line number="376" hits="0"/>
<line number="381" hits="0"/>
<line number="384" hits="0"/>
<line number="388" hits="0"/>
<line number="389" hits="0"/>
<line number="391" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="392,394"/>
<line number="392" hits="0"/>
<line number="394" hits="0"/>
<line number="396" hits="0"/>
<line number="398" hits="0"/>
<line number="406" hits="0"/>
<line number="407" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="408,414"/>
<line number="408" hits="0"/>
<line number="411" hits="0"/>
<line number="414" hits="0"/>
<line number="415" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="417,427"/>
<line number="417" hits="0"/>
<line number="427" hits="0"/>
<line number="432" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="433,446"/>
<line number="433" hits="0"/>
<line number="446" hits="0"/>
<line number="456" hits="0"/>
<line number="457" hits="0"/>
<line number="463" hits="0"/>
<line number="465" hits="0"/>
<line number="466" hits="0"/>
</lines>
</class>
<class name="langflow_files.py" filename="api/langflow_files.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="7" hits="0"/>
<line number="10" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="18,21"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="21" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="46" hits="0"/>
<line number="48" hits="0"/>
<line number="49" hits="0"/>
<line number="52" hits="0"/>
<line number="55" hits="0"/>
<line number="56" hits="0"/>
<line number="57" hits="0"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="60" hits="0"/>
<line number="61" hits="0"/>
<line number="62" hits="0"/>
<line number="65" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="66,71"/>
<line number="66" hits="0"/>
<line number="71" hits="0"/>
<line number="72" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="73,86"/>
<line number="73" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="74,81"/>
<line number="74" hits="0"/>
<line number="75" hits="0"/>
<line number="76" hits="0"/>
<line number="78" hits="0"/>
<line number="81" hits="0"/>
<line number="82" hits="0"/>
<line number="83" hits="0"/>
<line number="86" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="87,117"/>
<line number="87" hits="0"/>
<line number="90" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="95,107"/>
<line number="95" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="96,97"/>
<line number="96" hits="0"/>
<line number="97" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="98,99"/>
<line number="98" hits="0"/>
<line number="99" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="100,103"/>
<line number="100" hits="0"/>
<line number="103" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="104,107"/>
<line number="104" hits="0"/>
<line number="107" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="108,115"/>
<line number="108" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="109,110"/>
<line number="109" hits="0"/>
<line number="110" hits="0"/>
<line number="115" hits="0"/>
<line number="117" hits="0"/>
<line number="120" hits="0"/>
<line number="121" hits="0"/>
<line number="122" hits="0"/>
<line number="123" hits="0"/>
<line number="125" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="127,131"/>
<line number="127" hits="0"/>
<line number="129" hits="0"/>
<line number="131" hits="0"/>
<line number="142" hits="0"/>
<line number="143" hits="0"/>
<line number="144" hits="0"/>
<line number="147" hits="0"/>
<line number="151" hits="0"/>
<line number="152" hits="0"/>
<line number="153" hits="0"/>
<line number="154" hits="0"/>
<line number="155" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="156,160"/>
<line number="156" hits="0"/>
<line number="157" hits="0"/>
<line number="160" hits="0"/>
<line number="161" hits="0"/>
<line number="162" hits="0"/>
<line number="163" hits="0"/>
<line number="166" hits="0"/>
<line number="167" hits="0"/>
<line number="169" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="170,177"/>
<line number="170" hits="0"/>
<line number="171" hits="0"/>
<line number="172" hits="0"/>
<line number="173" hits="0"/>
<line number="174" hits="0"/>
<line number="175" hits="0"/>
<line number="177" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="178,186"/>
<line number="178" hits="0"/>
<line number="179" hits="0"/>
<line number="180" hits="0"/>
<line number="181" hits="0"/>
<line number="182" hits="0"/>
<line number="183" hits="0"/>
<line number="186" hits="0"/>
<line number="187" hits="0"/>
<line number="188" hits="0"/>
<line number="189" hits="0"/>
<line number="190" hits="0"/>
<line number="192" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="193,195"/>
<line number="193" hits="0"/>
<line number="195" hits="0"/>
<line number="207" hits="0"/>
<line number="208" hits="0"/>
<line number="211" hits="0"/>
<line number="215" hits="0"/>
<line number="216" hits="0"/>
<line number="217" hits="0"/>
<line number="220" hits="0"/>
<line number="222" hits="0"/>
<line number="223" hits="0"/>
<line number="225" hits="0"/>
<line number="228" hits="0"/>
<line number="242" hits="0"/>
<line number="244" hits="0"/>
<line number="250" hits="0"/>
<line number="252" hits="0"/>
<line number="253" hits="0"/>
<line number="254" hits="0"/>
<line number="256" hits="0"/>
<line number="257" hits="0"/>
<line number="262" hits="0"/>
<line number="263" hits="0"/>
<line number="264" hits="0"/>
<line number="267" hits="0"/>
<line number="270" hits="0"/>
<line number="271" hits="0"/>
<line number="272" hits="0"/>
<line number="273" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="274,278"/>
<line number="274" hits="0"/>
<line number="278" hits="0"/>
<line number="279" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="280,285"/>
<line number="280" hits="0"/>
<line number="281" hits="0"/>
<line number="282" hits="0"/>
<line number="283" hits="0"/>
<line number="285" hits="0"/>
<line number="286" hits="0"/>
<line number="295" hits="0"/>
<line number="296" hits="0"/>
</lines>
</class>
<class name="models.py" filename="api/models.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="5" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="16" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="17,26"/>
<line number="17" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="26" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="27,34"/>
<line number="27" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0"/>
<line number="43" hits="0"/>
<line number="45" hits="0"/>
<line number="47" hits="0"/>
<line number="48" hits="0"/>
<line number="51" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="52,61"/>
<line number="52" hits="0"/>
<line number="53" hits="0"/>
<line number="54" hits="0"/>
<line number="55" hits="0"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="61" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="62,69"/>
<line number="62" hits="0"/>
<line number="69" hits="0"/>
<line number="70" hits="0"/>
<line number="71" hits="0"/>
<line number="72" hits="0"/>
<line number="73" hits="0"/>
<line number="78" hits="0"/>
<line number="80" hits="0"/>
<line number="82" hits="0"/>
<line number="83" hits="0"/>
<line number="84" hits="0"/>
<line number="85" hits="0"/>
<line number="87" hits="0"/>
<line number="89" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="90,98"/>
<line number="90" hits="0"/>
<line number="91" hits="0"/>
<line number="92" hits="0"/>
<line number="95" hits="0"/>
<line number="96" hits="0"/>
<line number="98" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="99,106"/>
<line number="99" hits="0"/>
<line number="106" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="107,115"/>
<line number="107" hits="0"/>
<line number="108" hits="0"/>
<line number="109" hits="0"/>
<line number="112" hits="0"/>
<line number="113" hits="0"/>
<line number="115" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="116,123"/>
<line number="116" hits="0"/>
<line number="123" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="124,132"/>
<line number="124" hits="0"/>
<line number="125" hits="0"/>
<line number="126" hits="0"/>
<line number="129" hits="0"/>
<line number="130" hits="0"/>
<line number="132" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="133,140"/>
<line number="133" hits="0"/>
<line number="140" hits="0"/>
<line number="143" hits="0"/>
<line number="144" hits="0"/>
<line number="145" hits="0"/>
<line number="146" hits="0"/>
</lines>
</class>
<class name="nudges.py" filename="api/nudges.py" complexity="0" line-rate="0" branch-rate="1">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="5" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0"/>
<line number="26" hits="0"/>
<line number="28" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0"/>
<line number="32" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
</lines>
</class>
<class name="oidc.py" filename="api/oidc.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="9" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0"/>
<line number="38" hits="0"/>
<line number="41" hits="0"/>
<line number="43" hits="0"/>
<line number="45" hits="0"/>
<line number="48" hits="0"/>
<line number="51" hits="0"/>
<line number="53" hits="0"/>
<line number="54" hits="0"/>
<line number="55" hits="0"/>
<line number="58" hits="0"/>
<line number="60" hits="0"/>
<line number="69" hits="0"/>
<line number="71" hits="0"/>
<line number="73" hits="0"/>
<line number="74" hits="0"/>
<line number="79" hits="0"/>
<line number="81" hits="0"/>
<line number="82" hits="0"/>
<line number="83" hits="0"/>
<line number="85" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="86,89"/>
<line number="86" hits="0"/>
<line number="89" hits="0"/>
<line number="91" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="92,106"/>
<line number="92" hits="0"/>
<line number="106" hits="0"/>
<line number="108" hits="0"/>
<line number="109" hits="0"/>
</lines>
</class>
<class name="router.py" filename="api/router.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="10" hits="0"/>
<line number="12" hits="0"/>
<line number="15" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="38" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="40,44"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="44" hits="0"/>
<line number="45" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0"/>
<line number="51" hits="0"/>
<line number="52" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="56,58"/>
<line number="56" hits="0"/>
<line number="58" hits="0"/>
<line number="61" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="67" hits="0"/>
<line number="68" hits="0"/>
<line number="70" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="71,75"/>
<line number="71" hits="0"/>
<line number="72" hits="0"/>
<line number="75" hits="0"/>
<line number="76" hits="0"/>
<line number="77" hits="0"/>
<line number="78" hits="0"/>
<line number="79" hits="0"/>
<line number="82" hits="0"/>
<line number="83" hits="0"/>
<line number="85" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="86,94"/>
<line number="86" hits="0"/>
<line number="87" hits="0"/>
<line number="89" hits="0"/>
<line number="90" hits="0"/>
<line number="91" hits="0"/>
<line number="92" hits="0"/>
<line number="94" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="95,104"/>
<line number="95" hits="0"/>
<line number="96" hits="0"/>
<line number="98" hits="0"/>
<line number="99" hits="0"/>
<line number="100" hits="0"/>
<line number="101" hits="0"/>
<line number="104" hits="0"/>
<line number="105" hits="0"/>
<line number="106" hits="0"/>
<line number="107" hits="0"/>
<line number="108" hits="0"/>
<line number="110" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="111,116"/>
<line number="111" hits="0"/>
<line number="116" hits="0"/>
<line number="117" hits="0"/>
<line number="119" hits="0"/>
<line number="120" hits="0"/>
<line number="122" hits="0"/>
<line number="124" hits="0"/>
<line number="126" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="128,144"/>
<line number="128" hits="0"/>
<line number="131" hits="0"/>
<line number="135" hits="0"/>
<line number="136" hits="0"/>
<line number="139" hits="0"/>
<line number="140" hits="0"/>
<line number="142" hits="0"/>
<line number="144" hits="0"/>
<line number="154" hits="0"/>
<line number="158" hits="0"/>
<line number="159" hits="0"/>
<line number="162" hits="0"/>
<line number="178" hits="0"/>
<line number="180" hits="0"/>
<line number="189" hits="0"/>
<line number="191" hits="0"/>
<line number="193" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="194,195"/>
<line number="194" hits="0"/>
<line number="195" hits="0"/>
<line number="197" hits="0"/>
<line number="198" hits="0"/>
<line number="203" hits="0"/>
<line number="205" hits="0"/>
<line number="206" hits="0"/>
</lines>
</class>
<class name="search.py" filename="api/search.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="5" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="14,16"/>
<line number="14" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="18" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="25" hits="0"/>
<line number="36" hits="0"/>
<line number="44" hits="0"/>
<line number="45" hits="0"/>
<line number="46" hits="0"/>
<line number="47" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="51,53"/>
<line number="51" hits="0"/>
<line number="53" hits="0"/>
</lines>
</class>
<class name="settings.py" filename="api/settings.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="18" hits="0"/>
<line number="22" hits="0"/>
<line number="30" hits="0"/>
<line number="32" hits="0"/>
<line number="44" hits="0"/>
<line number="47" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0"/>
<line number="52" hits="0"/>
<line number="53" hits="0"/>
<line number="54" hits="0"/>
<line number="56" hits="0"/>
<line number="83" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="84,88"/>
<line number="84" hits="0"/>
<line number="88" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="89,94"/>
<line number="89" hits="0"/>
<line number="94" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="95,149"/>
<line number="95" hits="0"/>
<line number="96" hits="0"/>
<line number="99" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="100,149"/>
<line number="100" hits="0"/>
<line number="104" hits="0"/>
<line number="111" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="112,143"/>
<line number="112" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="113,143"/>
<line number="113" hits="0"/>
<line number="118" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="119,133"/>
<line number="119" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="120,123"/>
<line number="120" hits="0"/>
<line number="123" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="124,127"/>
<line number="124" hits="0"/>
<line number="127" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="112,128"/>
<line number="128" hits="0"/>
<line number="133" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="112,134"/>
<line number="134" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="112,135"/>
<line number="135" hits="0"/>
<line number="143" hits="0"/>
<line number="145" hits="0"/>
<line number="146" hits="0"/>
<line number="149" hits="0"/>
<line number="151" hits="0"/>
<line number="152" hits="0"/>
<line number="157" hits="0"/>
<line number="159" hits="0"/>
<line number="161" hits="0"/>
<line number="164" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="165,173"/>
<line number="165" hits="0"/>
<line number="173" hits="0"/>
<line number="176" hits="0"/>
<line number="188" hits="0"/>
<line number="189" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="190,198"/>
<line number="190" hits="0"/>
<line number="198" hits="0"/>
<line number="201" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="202,217"/>
<line number="202" hits="0"/>
<line number="203" hits="0"/>
<line number="206" hits="0"/>
<line number="207" hits="0"/>
<line number="208" hits="0"/>
<line number="209" hits="0"/>
<line number="212" hits="0"/>
<line number="213" hits="0"/>
<line number="217" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="218,235"/>
<line number="218" hits="0"/>
<line number="219" hits="0"/>
<line number="222" hits="0"/>
<line number="223" hits="0"/>
<line number="224" hits="0"/>
<line number="228" hits="0"/>
<line number="229" hits="0"/>
<line number="230" hits="0"/>
<line number="235" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="236,262"/>
<line number="236" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="240,244"/>
<line number="240" hits="0"/>
<line number="244" hits="0"/>
<line number="245" hits="0"/>
<line number="248" hits="0"/>
<line number="249" hits="0"/>
<line number="250" hits="0"/>
<line number="254" hits="0"/>
<line number="257" hits="0"/>
<line number="258" hits="0"/>
<line number="262" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="263,283"/>
<line number="263" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="264,267"/>
<line number="264" hits="0"/>
<line number="267" hits="0"/>
<line number="268" hits="0"/>
<line number="271" hits="0"/>
<line number="272" hits="0"/>
<line number="273" hits="0"/>
<line number="278" hits="0"/>
<line number="279" hits="0"/>
<line number="280" hits="0"/>
<line number="281" hits="0"/>
<line number="283" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="284,304"/>
<line number="284" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="285,288"/>
<line number="285" hits="0"/>
<line number="288" hits="0"/>
<line number="289" hits="0"/>
<line number="292" hits="0"/>
<line number="293" hits="0"/>
<line number="294" hits="0"/>
<line number="299" hits="0"/>
<line number="300" hits="0"/>
<line number="301" hits="0"/>
<line number="302" hits="0"/>
<line number="304" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="305,325"/>
<line number="305" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="306,309"/>
<line number="306" hits="0"/>
<line number="309" hits="0"/>
<line number="310" hits="0"/>
<line number="313" hits="0"/>
<line number="314" hits="0"/>
<line number="315" hits="0"/>
<line number="320" hits="0"/>
<line number="321" hits="0"/>
<line number="322" hits="0"/>
<line number="323" hits="0"/>
<line number="325" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="326,345"/>
<line number="326" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="327,330"/>
<line number="327" hits="0"/>
<line number="330" hits="0"/>
<line number="331" hits="0"/>
<line number="334" hits="0"/>
<line number="335" hits="0"/>
<line number="336" hits="0"/>
<line number="337" hits="0"/>
<line number="340" hits="0"/>
<line number="341" hits="0"/>
<line number="345" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="346,368"/>
<line number="346" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="347,351"/>
<line number="347" hits="0"/>
<line number="351" hits="0"/>
<line number="352" hits="0"/>
<line number="355" hits="0"/>
<line number="356" hits="0"/>
<line number="357" hits="0"/>
<line number="360" hits="0"/>
<line number="363" hits="0"/>
<line number="364" hits="0"/>
<line number="368" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="369,374"/>
<line number="369" hits="0"/>
<line number="374" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="375,380"/>
<line number="375" hits="0"/>
<line number="378" hits="0"/>
<line number="380" hits="0"/>
<line number="384" hits="0"/>
<line number="385" hits="0"/>
<line number="386" hits="0"/>
<line number="391" hits="0"/>
<line number="393" hits="0"/>
<line number="395" hits="0"/>
<line number="398" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="399,407"/>
<line number="399" hits="0"/>
<line number="407" hits="0"/>
<line number="410" hits="0"/>
<line number="421" hits="0"/>
<line number="422" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="423,431"/>
<line number="423" hits="0"/>
<line number="431" hits="0"/>
<line number="434" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="435,446"/>
<line number="435" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="439,443"/>
<line number="439" hits="0"/>
<line number="443" hits="0"/>
<line number="444" hits="0"/>
<line number="446" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="447,455"/>
<line number="447" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="448,451"/>
<line number="448" hits="0"/>
<line number="451" hits="0"/>
<line number="452" hits="0"/>
<line number="455" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="456,468"/>
<line number="456" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="460,464"/>
<line number="460" hits="0"/>
<line number="464" hits="0"/>
<line number="465" hits="0"/>
<line number="468" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="469,476"/>
<line number="469" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="470,473"/>
<line number="470" hits="0"/>
<line number="473" hits="0"/>
<line number="474" hits="0"/>
<line number="476" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="477,484"/>
<line number="477" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="478,481"/>
<line number="478" hits="0"/>
<line number="481" hits="0"/>
<line number="482" hits="0"/>
<line number="484" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="485,496"/>
<line number="485" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="489,492"/>
<line number="489" hits="0"/>
<line number="492" hits="0"/>
<line number="493" hits="0"/>
<line number="496" hits="0"/>
<line number="497" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="498,504"/>
<line number="498" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="499,502"/>
<line number="499" hits="0"/>
<line number="502" hits="0"/>
<line number="504" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="505,510"/>
<line number="505" hits="0"/>
<line number="510" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="511,653"/>
<line number="511" hits="0"/>
<line number="514" hits="0"/>
<line number="520" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="521,546"/>
<line number="521" hits="0"/>
<line number="522" hits="0"/>
<line number="523" hits="0"/>
<line number="525" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="526,531"/>
<line number="526" hits="0"/>
<line number="531" hits="0"/>
<line number="537" hits="0"/>
<line number="538" hits="0"/>
<line number="546" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="547,601"/>
<line number="547" hits="0"/>
<line number="549" hits="0"/>
<line number="551" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="552,559"/>
<line number="552" hits="0"/>
<line number="553" hits="0"/>
<line number="556" hits="0"/>
<line number="559" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="560,569"/>
<line number="560" hits="0"/>
<line number="561" hits="0"/>
<line number="564" hits="0"/>
<line number="569" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="570,577"/>
<line number="570" hits="0"/>
<line number="571" hits="0"/>
<line number="574" hits="0"/>
<line number="577" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="578,585"/>
<line number="578" hits="0"/>
<line number="580" hits="0"/>
<line number="583" hits="0"/>
<line number="585" hits="0"/>
<line number="592" hits="0"/>
<line number="593" hits="0"/>
<line number="601" hits="0"/>
<line number="603" hits="0"/>
<line number="605" hits="0"/>
<line number="608" hits="0"/>
<line number="609" hits="0"/>
<line number="610" hits="0"/>
<line number="611" hits="0"/>
<line number="619" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="620,645"/>
<line number="620" hits="0"/>
<line number="622" hits="0"/>
<line number="626" hits="0"/>
<line number="627" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="628,635"/>
<line number="628" hits="0"/>
<line number="629" hits="0"/>
<line number="632" hits="0"/>
<line number="633" hits="0"/>
<line number="635" hits="0"/>
<line number="639" hits="0"/>
<line number="640" hits="0"/>
<line number="645" hits="0"/>
<line number="653" hits="0"/>
<line number="657" hits="0"/>
<line number="658" hits="0"/>
<line number="659" hits="0"/>
<line number="665" hits="0"/>
<line number="667" hits="0"/>
<line number="669" hits="0"/>
<line number="672" hits="0"/>
<line number="674" hits="0"/>
<line number="676" hits="0"/>
<line number="679" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="681,698"/>
<line number="681" hits="0"/>
<line number="688" hits="0"/>
<line number="689" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="690,695"/>
<line number="690" hits="0"/>
<line number="695" hits="0"/>
<line number="698" hits="0"/>
<line number="705" hits="0"/>
<line number="708" hits="0"/>
<line number="709" hits="0"/>
<line number="711" hits="0"/>
<line number="713" hits="0"/>
<line number="721" hits="0"/>
<line number="722" hits="0"/>
<line number="723" hits="0"/>
</lines>
</class>
<class name="tasks.py" filename="api/tasks.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="5" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="12,14"/>
<line number="12" hits="0"/>
<line number="14" hits="0"/>
<line number="17" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0"/>
<line number="24" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="31,35"/>
<line number="31" hits="0"/>
<line number="35" hits="0"/>
</lines>
</class>
<class name="upload.py" filename="api/upload.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="16" hits="0"/>
<line number="20" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="21,25"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="43,45"/>
<line number="43" hits="0"/>
<line number="45" hits="0"/>
<line number="48" hits="0"/>
<line number="50" hits="0"/>
<line number="51" hits="0"/>
<line number="52" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="53,55"/>
<line number="53" hits="0"/>
<line number="55" hits="0"/>
<line number="59" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="60,62"/>
<line number="60" hits="0"/>
<line number="62" hits="0"/>
<line number="63" hits="0"/>
<line number="65" hits="0"/>
<line number="68" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="69,73"/>
<line number="69" hits="0"/>
<line number="70" hits="0"/>
<line number="71" hits="0"/>
<line number="73" hits="0"/>
<line number="74" hits="0"/>
<line number="75" hits="0"/>
<line number="77" hits="0"/>
<line number="85" hits="0"/>
<line number="91" hits="0"/>
<line number="95" hits="0"/>
<line number="96" hits="0"/>
<line number="97" hits="0"/>
<line number="100" hits="0"/>
<line number="101" hits="0"/>
<line number="103" hits="0"/>
<line number="106" hits="0"/>
<line number="107" hits="0"/>
<line number="110" hits="0"/>
<line number="113" hits="0"/>
<line number="122" hits="0"/>
<line number="131" hits="0"/>
<line number="134" hits="0"/>
<line number="136" hits="0"/>
<line number="139" hits="0"/>
<line number="142" hits="0"/>
<line number="144" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="145,149"/>
<line number="145" hits="0"/>
<line number="149" hits="0"/>
<line number="150" hits="0"/>
<line number="151" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="152,154"/>
<line number="152" hits="0"/>
<line number="154" hits="0"/>
<line number="155" hits="0"/>
<line number="156" hits="0"/>
<line number="158" hits="0"/>
<line number="159" hits="0"/>
<line number="160" hits="0"/>
<line number="161" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="162,167"/>
<line number="162" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="161,163"/>
<line number="163" hits="0"/>
<line number="164" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="162,165"/>
<line number="165" hits="0"/>
<line number="167" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="168,170"/>
<line number="168" hits="0"/>
<line number="170" hits="0"/>
<line number="171" hits="0"/>
<line number="173" hits="0"/>
<line number="174" hits="0"/>
<line number="177" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="178,183"/>
<line number="178" hits="0"/>
<line number="179" hits="0"/>
<line number="180" hits="0"/>
<line number="181" hits="0"/>
<line number="183" hits="0"/>
<line number="184" hits="0"/>
<line number="185" hits="0"/>
<line number="186" hits="0"/>
<line number="188" hits="0"/>
<line number="198" hits="0"/>
<line number="200" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="config" line-rate="0.3545" branch-rate="0.01042" complexity="0">
<classes>
<class name="__init__.py" filename="config/__init__.py" complexity="0" line-rate="1" branch-rate="1">
<methods/>
<lines/>
</class>
<class name="config_manager.py" filename="config/config_manager.py" complexity="0" line-rate="0.3929" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="1"/>
<line number="4" hits="1"/>
<line number="5" hits="1"/>
<line number="6" hits="1"/>
<line number="7" hits="1"/>
<line number="8" hits="1"/>
<line number="10" hits="1"/>
<line number="13" hits="1"/>
<line number="14" hits="1"/>
<line number="17" hits="1"/>
<line number="18" hits="1"/>
<line number="19" hits="1"/>
<line number="20" hits="1"/>
<line number="23" hits="1"/>
<line number="24" hits="1"/>
<line number="27" hits="1"/>
<line number="28" hits="1"/>
<line number="29" hits="1"/>
<line number="30" hits="1"/>
<line number="31" hits="1"/>
<line number="32" hits="1"/>
<line number="35" hits="1"/>
<line number="36" hits="1"/>
<line number="39" hits="1"/>
<line number="40" hits="1"/>
<line number="43" hits="1"/>
<line number="44" hits="1"/>
<line number="47" hits="1"/>
<line number="48" hits="1"/>
<line number="49" hits="1"/>
<line number="50" hits="1"/>
<line number="52" hits="1"/>
<line number="53" hits="1"/>
<line number="55" hits="0"/>
<line number="62" hits="1"/>
<line number="64" hits="0"/>
<line number="67" hits="1"/>
<line number="70" hits="1"/>
<line number="76" hits="1"/>
<line number="77" hits="1"/>
<line number="79" hits="1"/>
<line number="87" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="88,91"/>
<line number="88" hits="0"/>
<line number="91" hits="0"/>
<line number="94" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="95,110"/>
<line number="95" hits="0"/>
<line number="96" hits="0"/>
<line number="97" hits="0"/>
<line number="100" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="101,103"/>
<line number="101" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="100,102"/>
<line number="102" hits="0"/>
<line number="103" hits="0"/>
<line number="105" hits="0"/>
<line number="106" hits="0"/>
<line number="107" hits="0"/>
<line number="110" hits="0"/>
<line number="113" hits="0"/>
<line number="116" hits="0"/>
<line number="118" hits="0"/>
<line number="119" hits="0"/>
<line number="121" hits="1"/>
<line number="127" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="128,132"/>
<line number="128" hits="0"/>
<line number="129" hits="0"/>
<line number="132" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="133,134"/>
<line number="133" hits="0"/>
<line number="134" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="135,136"/>
<line number="135" hits="0"/>
<line number="136" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="137,138"/>
<line number="137" hits="0"/>
<line number="138" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="139,141"/>
<line number="139" hits="0"/>
<line number="141" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="142,147"/>
<line number="142" hits="0"/>
<line number="143" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="144,147"/>
<line number="144" hits="0"/>
<line number="147" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="148,149"/>
<line number="148" hits="0"/>
<line number="149" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="150,151"/>
<line number="150" hits="0"/>
<line number="151" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="152,153"/>
<line number="152" hits="0"/>
<line number="153" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="154,159"/>
<line number="154" hits="0"/>
<line number="159" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="160,165"/>
<line number="160" hits="0"/>
<line number="165" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="166,167"/>
<line number="166" hits="0"/>
<line number="167" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,168"/>
<line number="168" hits="0"/>
<line number="170" hits="1"/>
<line number="172" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="173,174"/>
<line number="173" hits="0"/>
<line number="174" hits="0"/>
<line number="176" hits="1"/>
<line number="178" hits="0"/>
<line number="179" hits="0"/>
<line number="181" hits="1"/>
<line number="190" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="191,194"/>
<line number="191" hits="0"/>
<line number="194" hits="0"/>
<line number="196" hits="0"/>
<line number="198" hits="0"/>
<line number="200" hits="0"/>
<line number="201" hits="0"/>
<line number="204" hits="0"/>
<line number="206" hits="0"/>
<line number="207" hits="0"/>
<line number="208" hits="0"/>
<line number="209" hits="0"/>
<line number="210" hits="0"/>
<line number="214" hits="1"/>
</lines>
</class>
<class name="settings.py" filename="config/settings.py" complexity="0" line-rate="0.3362" branch-rate="0.01786">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="4" hits="1"/>
<line number="5" hits="1"/>
<line number="6" hits="1"/>
<line number="7" hits="1"/>
<line number="8" hits="1"/>
<line number="9" hits="1"/>
<line number="10" hits="1"/>
<line number="12" hits="1"/>
<line number="13" hits="1"/>
<line number="14" hits="1"/>
<line number="16" hits="1"/>
<line number="17" hits="1"/>
<line number="19" hits="1"/>
<line number="22" hits="1"/>
<line number="25" hits="1"/>
<line number="26" hits="1"/>
<line number="27" hits="1"/>
<line number="28" hits="1"/>
<line number="29" hits="1"/>
<line number="31" hits="1"/>
<line number="33" hits="1"/>
<line number="35" hits="1"/>
<line number="36" hits="1"/>
<line number="37" hits="1"/>
<line number="38" hits="1"/>
<line number="40" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="41"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
<line number="46" hits="1"/>
<line number="47" hits="1"/>
<line number="49" hits="1"/>
<line number="50" hits="1"/>
<line number="51" hits="1"/>
<line number="52" hits="1"/>
<line number="53" hits="1"/>
<line number="56" hits="1"/>
<line number="61" hits="1"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="70" hits="0"/>
<line number="74" hits="1"/>
<line number="79" hits="1"/>
<line number="80" hits="1"/>
<line number="81" hits="1"/>
<line number="83" hits="1"/>
<line number="89" hits="1"/>
<line number="95" hits="1"/>
<line number="108" hits="1"/>
<line number="147" hits="1"/>
<line number="150" hits="1"/>
<line number="154" hits="0"/>
<line number="159" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="160,188"/>
<line number="160" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="161,165"/>
<line number="161" hits="0"/>
<line number="162" hits="0"/>
<line number="165" hits="0"/>
<line number="166" hits="0"/>
<line number="167" hits="0"/>
<line number="172" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="173,176"/>
<line number="173" hits="0"/>
<line number="174" hits="0"/>
<line number="176" hits="0"/>
<line number="180" hits="0"/>
<line number="181" hits="0"/>
<line number="182" hits="0"/>
<line number="186" hits="0"/>
<line number="188" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="189,194"/>
<line number="189" hits="0"/>
<line number="192" hits="0"/>
<line number="194" hits="0"/>
<line number="195" hits="0"/>
<line number="196" hits="0"/>
<line number="197" hits="0"/>
<line number="199" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,200"/>
<line number="200" hits="0"/>
<line number="202" hits="0"/>
<line number="211" hits="0"/>
<line number="212" hits="0"/>
<line number="213" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="214,217"/>
<line number="214" hits="0"/>
<line number="217" hits="0"/>
<line number="226" hits="0"/>
<line number="227" hits="0"/>
<line number="228" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="229,232"/>
<line number="229" hits="0"/>
<line number="232" hits="0"/>
<line number="237" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="238,245"/>
<line number="238" hits="0"/>
<line number="239" hits="0"/>
<line number="243" hits="0"/>
<line number="245" hits="0"/>
<line number="249" hits="0"/>
<line number="252" hits="0"/>
<line number="253" hits="0"/>
<line number="259" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="260,262"/>
<line number="260" hits="0"/>
<line number="262" hits="0"/>
<line number="264" hits="0"/>
<line number="265" hits="0"/>
<line number="266" hits="0"/>
<line number="267" hits="0"/>
<line number="268" hits="0"/>
<line number="269" hits="0"/>
<line number="270" hits="0"/>
<line number="271" hits="0"/>
<line number="272" hits="0"/>
<line number="275" hits="1"/>
<line number="276" hits="1"/>
<line number="277" hits="1"/>
<line number="278" hits="1"/>
<line number="279" hits="1"/>
<line number="280" hits="1"/>
<line number="281" hits="1"/>
<line number="283" hits="1"/>
<line number="285" hits="0"/>
<line number="288" hits="0"/>
<line number="300" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="301,314"/>
<line number="301" hits="0"/>
<line number="302" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="303,305"/>
<line number="303" hits="0"/>
<line number="305" hits="0"/>
<line number="308" hits="0"/>
<line number="311" hits="0"/>
<line number="312" hits="0"/>
<line number="313" hits="0"/>
<line number="314" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="315,320"/>
<line number="315" hits="0"/>
<line number="320" hits="0"/>
<line number="323" hits="0"/>
<line number="326" hits="0"/>
<line number="330" hits="0"/>
<line number="332" hits="1"/>
<line number="334" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="335,337"/>
<line number="335" hits="0"/>
<line number="337" hits="0"/>
<line number="338" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="339,349"/>
<line number="339" hits="0"/>
<line number="340" hits="0"/>
<line number="343" hits="0"/>
<line number="344" hits="0"/>
<line number="345" hits="0"/>
<line number="348" hits="0"/>
<line number="349" hits="0"/>
<line number="351" hits="1"/>
<line number="353" hits="0"/>
<line number="354" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="355,358"/>
<line number="355" hits="0"/>
<line number="358" hits="0"/>
<line number="359" hits="0"/>
<line number="360" hits="0"/>
<line number="363" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="364,366"/>
<line number="364" hits="0"/>
<line number="366" hits="0"/>
<line number="368" hits="0"/>
<line number="372" hits="1"/>
<line number="376" hits="0"/>
<line number="377" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="378,383"/>
<line number="378" hits="0"/>
<line number="381" hits="0"/>
<line number="383" hits="0"/>
<line number="384" hits="0"/>
<line number="390" hits="0"/>
<line number="392" hits="0"/>
<line number="393" hits="0"/>
<line number="394" hits="0"/>
<line number="396" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="397,401"/>
<line number="397" hits="0"/>
<line number="401" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="402,414"/>
<line number="402" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="403,409"/>
<line number="403" hits="0"/>
<line number="407" hits="0"/>
<line number="409" hits="0"/>
<line number="414" hits="0"/>
<line number="419" hits="0"/>
<line number="420" hits="0"/>
<line number="426" hits="1"/>
<line number="428" hits="0"/>
<line number="429" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="430,435"/>
<line number="430" hits="0"/>
<line number="433" hits="0"/>
<line number="435" hits="0"/>
<line number="437" hits="0"/>
<line number="438" hits="0"/>
<line number="440" hits="0"/>
<line number="444" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="445,452"/>
<line number="445" hits="0"/>
<line number="450" hits="0"/>
<line number="452" hits="0"/>
<line number="453" hits="0"/>
<line number="456" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="457,461"/>
<line number="457" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="456,458"/>
<line number="458" hits="0"/>
<line number="459" hits="0"/>
<line number="461" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="462,465"/>
<line number="462" hits="0"/>
<line number="463" hits="0"/>
<line number="465" hits="0"/>
<line number="466" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="467,471"/>
<line number="467" hits="0"/>
<line number="468" hits="0"/>
<line number="471" hits="0"/>
<line number="478" hits="0"/>
<line number="484" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="485,491"/>
<line number="485" hits="0"/>
<line number="491" hits="0"/>
<line number="499" hits="0"/>
<line number="500" hits="0"/>
<line number="506" hits="1"/>
<line number="508" hits="0"/>
<line number="510" hits="0"/>
<line number="526" hits="1"/>
<line number="529" hits="1"/>
<line number="532" hits="1"/>
<line number="535" hits="1"/>
<line number="538" hits="1"/>
<line number="541" hits="1"/>
<line number="547" hits="1"/>
<line number="550" hits="1"/>
<line number="555" hits="1"/>
<line number="558" hits="1"/>
<line number="562" hits="1"/>
<line number="565" hits="1"/>
<line number="568" hits="1"/>
<line number="570" hits="1"/>
<line number="573" hits="1"/>
<line number="577" hits="1"/>
<line number="579" hits="0"/>
<line number="583" hits="1"/>
<line number="585" hits="0"/>
<line number="588" hits="1"/>
<line number="590" hits="0"/>
<line number="593" hits="1"/>
<line number="595" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="connectors" line-rate="0" branch-rate="0" complexity="0">
<classes>
<class name="__init__.py" filename="connectors/__init__.py" complexity="0" line-rate="0" branch-rate="1">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="6" hits="0"/>
</lines>
</class>
<class name="base.py" filename="connectors/base.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="16" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="20,21"/>
<line number="20" hits="0"/>
<line number="21" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,22"/>
<line number="22" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0"/>
<line number="32" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
<line number="43" hits="0"/>
<line number="44" hits="0"/>
<line number="45" hits="0"/>
<line number="46" hits="0"/>
<line number="47" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,51"/>
<line number="51" hits="0"/>
<line number="54" hits="0"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="62" hits="0"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="66" hits="0"/>
<line number="67" hits="0"/>
<line number="68" hits="0"/>
<line number="70" hits="0"/>
<line number="72" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="73,77"/>
<line number="73" hits="0"/>
<line number="77" hits="0"/>
<line number="78" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="79,83"/>
<line number="79" hits="0"/>
<line number="83" hits="0"/>
<line number="85" hits="0"/>
<line number="87" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="88,92"/>
<line number="88" hits="0"/>
<line number="92" hits="0"/>
<line number="93" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="94,98"/>
<line number="94" hits="0"/>
<line number="98" hits="0"/>
<line number="100" hits="0"/>
<line number="101" hits="0"/>
<line number="103" hits="0"/>
<line number="105" hits="0"/>
<line number="106" hits="0"/>
<line number="108" hits="0"/>
<line number="110" hits="0"/>
<line number="111" hits="0"/>
<line number="113" hits="0"/>
<line number="115" hits="0"/>
<line number="116" hits="0"/>
<line number="118" hits="0"/>
<line number="120" hits="0"/>
<line number="121" hits="0"/>
<line number="123" hits="0"/>
<line number="125" hits="0"/>
<line number="131" hits="0"/>
<line number="133" hits="0"/>
<line number="138" hits="0"/>
<line number="142" hits="0"/>
<line number="143" hits="0"/>
<line number="145" hits="0"/>
<line number="147" hits="0"/>
<line number="148" hits="0"/>
<line number="149" hits="0"/>
</lines>
</class>
<class name="connection_manager.py" filename="connectors/connection_manager.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="28" hits="0"/>
<line number="29" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,33"/>
<line number="33" hits="0"/>
<line number="36" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
<line number="44" hits="0"/>
<line number="46" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,47"/>
<line number="47" hits="0"/>
<line number="48" hits="0"/>
<line number="50" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="52,65"/>
<line number="52" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="53,56"/>
<line number="53" hits="0"/>
<line number="56" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="57,61"/>
<line number="57" hits="0"/>
<line number="61" hits="0"/>
<line number="62" hits="0"/>
<line number="65" hits="0"/>
<line number="67" hits="0"/>
<line number="69" hits="0"/>
<line number="71" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="72,80"/>
<line number="72" hits="0"/>
<line number="74" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="75,76"/>
<line number="75" hits="0"/>
<line number="76" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="77,78"/>
<line number="77" hits="0"/>
<line number="78" hits="0"/>
<line number="80" hits="0"/>
<line number="81" hits="0"/>
<line number="83" hits="0"/>
<line number="87" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="88,94"/>
<line number="88" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="87,93"/>
<line number="93" hits="0"/>
<line number="94" hits="0"/>
<line number="96" hits="0"/>
<line number="105" hits="0"/>
<line number="108" hits="0"/>
<line number="110" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="111,122"/>
<line number="111" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="112,114"/>
<line number="112" hits="0"/>
<line number="114" hits="0"/>
<line number="116" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="117,119"/>
<line number="117" hits="0"/>
<line number="119" hits="0"/>
<line number="122" hits="0"/>
<line number="124" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="125,139"/>
<line number="125" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="126,128"/>
<line number="126" hits="0"/>
<line number="128" hits="0"/>
<line number="131" hits="0"/>
<line number="134" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="124,135"/>
<line number="135" hits="0"/>
<line number="136" hits="0"/>
<line number="139" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="140,145"/>
<line number="140" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="141,143"/>
<line number="141" hits="0"/>
<line number="143" hits="0"/>
<line number="145" hits="0"/>
<line number="146" hits="0"/>
<line number="147" hits="0"/>
<line number="149" hits="0"/>
<line number="158" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="159,161"/>
<line number="159" hits="0"/>
<line number="161" hits="0"/>
<line number="164" hits="0"/>
<line number="173" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="174,175"/>
<line number="174" hits="0"/>
<line number="175" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="176,177"/>
<line number="176" hits="0"/>
<line number="177" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="178,179"/>
<line number="178" hits="0"/>
<line number="179" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="180,182"/>
<line number="180" hits="0"/>
<line number="182" hits="0"/>
<line number="185" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="186,188"/>
<line number="186" hits="0"/>
<line number="188" hits="0"/>
<line number="190" hits="0"/>
<line number="200" hits="0"/>
<line number="202" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="204,227"/>
<line number="204" hits="0"/>
<line number="205" hits="0"/>
<line number="206" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="207,227"/>
<line number="207" hits="0"/>
<line number="212" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="213,218"/>
<line number="213" hits="0"/>
<line number="214" hits="0"/>
<line number="218" hits="0"/>
<line number="219" hits="0"/>
<line number="220" hits="0"/>
<line number="227" hits="0"/>
<line number="229" hits="0"/>
<line number="237" hits="0"/>
<line number="240" hits="0"/>
<line number="242" hits="0"/>
<line number="243" hits="0"/>
<line number="245" hits="0"/>
<line number="249" hits="0"/>
<line number="251" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="252,254"/>
<line number="252" hits="0"/>
<line number="254" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="255,257"/>
<line number="255" hits="0"/>
<line number="257" hits="0"/>
<line number="259" hits="0"/>
<line number="261" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="262,264"/>
<line number="262" hits="0"/>
<line number="264" hits="0"/>
<line number="267" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="268,277"/>
<line number="268" hits="0"/>
<line number="269" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="270,277"/>
<line number="270" hits="0"/>
<line number="271" hits="0"/>
<line number="272" hits="0"/>
<line number="273" hits="0"/>
<line number="274" hits="0"/>
<line number="277" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="278,291"/>
<line number="278" hits="0"/>
<line number="280" hits="0"/>
<line number="281" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="285,289"/>
<line number="285" hits="0"/>
<line number="286" hits="0"/>
<line number="287" hits="0"/>
<line number="289" hits="0"/>
<line number="291" hits="0"/>
<line number="292" hits="0"/>
<line number="293" hits="0"/>
<line number="295" hits="0"/>
<line number="297" hits="0"/>
<line number="300" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="301,311"/>
<line number="301" hits="0"/>
<line number="302" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="303,307"/>
<line number="303" hits="0"/>
<line number="304" hits="0"/>
<line number="307" hits="0"/>
<line number="308" hits="0"/>
<line number="311" hits="0"/>
<line number="312" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="313,316"/>
<line number="313" hits="0"/>
<line number="314" hits="0"/>
<line number="316" hits="0"/>
<line number="317" hits="0"/>
<line number="319" hits="0"/>
<line number="320" hits="0"/>
<line number="321" hits="0"/>
<line number="323" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="324,328"/>
<line number="324" hits="0"/>
<line number="326" hits="0"/>
<line number="328" hits="0"/>
<line number="329" hits="0"/>
<line number="331" hits="0"/>
<line number="333" hits="0"/>
<line number="354" hits="0"/>
<line number="356" hits="0"/>
<line number="357" hits="0"/>
<line number="363" hits="0"/>
<line number="365" hits="0"/>
<line number="366" hits="0"/>
<line number="367" hits="0"/>
<line number="368" hits="0"/>
<line number="369" hits="0"/>
<line number="371" hits="0"/>
<line number="373" hits="0"/>
<line number="374" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="375,376"/>
<line number="375" hits="0"/>
<line number="376" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="377,378"/>
<line number="377" hits="0"/>
<line number="378" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="379,380"/>
<line number="379" hits="0"/>
<line number="380" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="381,382"/>
<line number="381" hits="0"/>
<line number="382" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="383,385"/>
<line number="383" hits="0"/>
<line number="385" hits="0"/>
<line number="386" hits="0"/>
<line number="387" hits="0"/>
<line number="389" hits="0"/>
<line number="391" hits="0"/>
<line number="393" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,394"/>
<line number="394" hits="0"/>
<line number="395" hits="0"/>
<line number="397" hits="0"/>
<line number="399" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="400,403"/>
<line number="400" hits="0"/>
<line number="401" hits="0"/>
<line number="402" hits="0"/>
<line number="403" hits="0"/>
<line number="405" hits="0"/>
<line number="407" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="408,416"/>
<line number="408" hits="0"/>
<line number="409" hits="0"/>
<line number="412" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="413,415"/>
<line number="413" hits="0"/>
<line number="415" hits="0"/>
<line number="416" hits="0"/>
<line number="418" hits="0"/>
<line number="420" hits="0"/>
<line number="422" hits="0"/>
<line number="426" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="428,433"/>
<line number="428" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="429,431"/>
<line number="429" hits="0"/>
<line number="431" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="426,432"/>
<line number="432" hits="0"/>
<line number="433" hits="0"/>
<line number="435" hits="0"/>
<line number="443" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="446,452"/>
<line number="446" hits="0"/>
<line number="449" hits="0"/>
<line number="452" hits="0"/>
<line number="453" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="454,460"/>
<line number="454" hits="0"/>
<line number="458" hits="0"/>
<line number="460" hits="0"/>
<line number="461" hits="0"/>
<line number="462" hits="0"/>
<line number="465" hits="0"/>
<line number="466" hits="0"/>
<line number="469" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="470,473"/>
<line number="470" hits="0"/>
<line number="473" hits="0"/>
<line number="475" hits="0"/>
<line number="481" hits="0"/>
<line number="482" hits="0"/>
<line number="489" hits="0"/>
<line number="493" hits="0"/>
<line number="494" hits="0"/>
<line number="500" hits="0"/>
<line number="501" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="502,509"/>
<line number="502" hits="0"/>
<line number="506" hits="0"/>
<line number="509" hits="0"/>
<line number="512" hits="0"/>
<line number="513" hits="0"/>
<line number="514" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="515,518"/>
<line number="515" hits="0"/>
<line number="518" hits="0"/>
<line number="520" hits="0"/>
<line number="526" hits="0"/>
<line number="527" hits="0"/>
</lines>
</class>
<class name="langflow_connector_service.py" filename="connectors/langflow_connector_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="11" hits="0"/>
<line number="14" hits="0"/>
<line number="17" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0"/>
<line number="31" hits="0"/>
<line number="33" hits="0"/>
<line number="35" hits="0"/>
<line number="37" hits="0"/>
<line number="48" hits="0"/>
<line number="54" hits="0"/>
<line number="56" hits="0"/>
<line number="59" hits="0"/>
<line number="61" hits="0"/>
<line number="62" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="67" hits="0"/>
<line number="73" hits="0"/>
<line number="74" hits="0"/>
<line number="75" hits="0"/>
<line number="78" hits="0"/>
<line number="79" hits="0"/>
<line number="81" hits="0"/>
<line number="88" hits="0"/>
<line number="93" hits="0"/>
<line number="95" hits="0"/>
<line number="106" hits="0"/>
<line number="109" hits="0"/>
<line number="110" hits="0"/>
<line number="111" hits="0"/>
<line number="113" hits="0"/>
<line number="122" hits="0"/>
<line number="123" hits="0"/>
<line number="129" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="130,142"/>
<line number="130" hits="0"/>
<line number="131" hits="0"/>
<line number="132" hits="0"/>
<line number="136" hits="0"/>
<line number="137" hits="0"/>
<line number="142" hits="0"/>
<line number="144" hits="0"/>
<line number="146" hits="0"/>
<line number="159" hits="0"/>
<line number="161" hits="0"/>
<line number="169" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="170,174"/>
<line number="170" hits="0"/>
<line number="174" hits="0"/>
<line number="180" hits="0"/>
<line number="181" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="182,186"/>
<line number="182" hits="0"/>
<line number="186" hits="0"/>
<line number="188" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="189,192"/>
<line number="189" hits="0"/>
<line number="192" hits="0"/>
<line number="193" hits="0"/>
<line number="196" hits="0"/>
<line number="198" hits="0"/>
<line number="200" hits="0"/>
<line number="203" hits="0"/>
<line number="204" hits="0"/>
<line number="207" hits="0"/>
<line number="209" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="210,212"/>
<line number="210" hits="0"/>
<line number="212" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="213,218"/>
<line number="213" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="214,215"/>
<line number="214" hits="0"/>
<line number="215" hits="0"/>
<line number="218" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="221,223"/>
<line number="221" hits="0"/>
<line number="223" hits="0"/>
<line number="226" hits="0"/>
<line number="227" hits="0"/>
<line number="228" hits="0"/>
<line number="230" hits="0"/>
<line number="241" hits="0"/>
<line number="244" hits="0"/>
<line number="248" hits="0"/>
<line number="250" hits="0"/>
<line number="261" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="262,266"/>
<line number="262" hits="0"/>
<line number="266" hits="0"/>
<line number="267" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="268,272"/>
<line number="268" hits="0"/>
<line number="272" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="273,275"/>
<line number="273" hits="0"/>
<line number="275" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="276,279"/>
<line number="276" hits="0"/>
<line number="279" hits="0"/>
<line number="280" hits="0"/>
<line number="281" hits="0"/>
<line number="285" hits="0"/>
<line number="286" hits="0"/>
<line number="287" hits="0"/>
<line number="289" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="290,293"/>
<line number="290" hits="0"/>
<line number="291" hits="0"/>
<line number="293" hits="0"/>
<line number="295" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="296,301"/>
<line number="296" hits="0"/>
<line number="297" hits="0"/>
<line number="301" hits="0"/>
<line number="302" hits="0"/>
<line number="304" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="305,319"/>
<line number="305" hits="0"/>
<line number="311" hits="0"/>
<line number="313" hits="0"/>
<line number="314" hits="0"/>
<line number="316" hits="0"/>
<line number="319" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="320,323"/>
<line number="320" hits="0"/>
<line number="321" hits="0"/>
<line number="323" hits="0"/>
<line number="334" hits="0"/>
<line number="338" hits="0"/>
<line number="340" hits="0"/>
<line number="342" hits="0"/>
</lines>
</class>
<class name="service.py" filename="connectors/service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="3" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="9" hits="0"/>
<line number="12" hits="0"/>
<line number="15" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="28" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0"/>
<line number="32" hits="0"/>
<line number="34" hits="0"/>
<line number="36" hits="0"/>
<line number="38" hits="0"/>
<line number="40" hits="0"/>
<line number="52" hits="0"/>
<line number="54" hits="0"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="63" hits="0"/>
<line number="65" hits="0"/>
<line number="67" hits="0"/>
<line number="70" hits="0"/>
<line number="72" hits="0"/>
<line number="73" hits="0"/>
<line number="85" hits="0"/>
<line number="88" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="90,94"/>
<line number="90" hits="0"/>
<line number="94" hits="0"/>
<line number="100" hits="0"/>
<line number="108" hits="0"/>
<line number="111" hits="0"/>
<line number="114" hits="0"/>
<line number="118" hits="0"/>
<line number="119" hits="0"/>
<line number="120" hits="0"/>
<line number="121" hits="0"/>
<line number="126" hits="0"/>
<line number="128" hits="0"/>
<line number="136" hits="0"/>
<line number="141" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,142"/>
<line number="142" hits="0"/>
<line number="143" hits="0"/>
<line number="144" hits="0"/>
<line number="151" hits="0"/>
<line number="172" hits="0"/>
<line number="173" hits="0"/>
<line number="176" hits="0"/>
<line number="177" hits="0"/>
<line number="178" hits="0"/>
<line number="184" hits="0"/>
<line number="186" hits="0"/>
<line number="188" hits="0"/>
<line number="201" hits="0"/>
<line number="203" hits="0"/>
<line number="211" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="212,216"/>
<line number="212" hits="0"/>
<line number="216" hits="0"/>
<line number="222" hits="0"/>
<line number="223" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="224,228"/>
<line number="224" hits="0"/>
<line number="228" hits="0"/>
<line number="230" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="231,234"/>
<line number="231" hits="0"/>
<line number="234" hits="0"/>
<line number="235" hits="0"/>
<line number="238" hits="0"/>
<line number="240" hits="0"/>
<line number="242" hits="0"/>
<line number="245" hits="0"/>
<line number="246" hits="0"/>
<line number="249" hits="0"/>
<line number="251" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="252,254"/>
<line number="252" hits="0"/>
<line number="254" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="255,260"/>
<line number="255" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="256,257"/>
<line number="256" hits="0"/>
<line number="257" hits="0"/>
<line number="260" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="263,265"/>
<line number="263" hits="0"/>
<line number="265" hits="0"/>
<line number="268" hits="0"/>
<line number="269" hits="0"/>
<line number="270" hits="0"/>
<line number="273" hits="0"/>
<line number="275" hits="0"/>
<line number="286" hits="0"/>
<line number="289" hits="0"/>
<line number="293" hits="0"/>
<line number="295" hits="0"/>
<line number="306" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="307,311"/>
<line number="307" hits="0"/>
<line number="311" hits="0"/>
<line number="312" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="313,317"/>
<line number="313" hits="0"/>
<line number="317" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="318,320"/>
<line number="318" hits="0"/>
<line number="320" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="321,324"/>
<line number="321" hits="0"/>
<line number="324" hits="0"/>
<line number="325" hits="0"/>
<line number="326" hits="0"/>
<line number="330" hits="0"/>
<line number="331" hits="0"/>
<line number="333" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="334,337"/>
<line number="334" hits="0"/>
<line number="335" hits="0"/>
<line number="337" hits="0"/>
<line number="339" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="340,345"/>
<line number="340" hits="0"/>
<line number="341" hits="0"/>
<line number="345" hits="0"/>
<line number="346" hits="0"/>
<line number="348" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="349,363"/>
<line number="349" hits="0"/>
<line number="355" hits="0"/>
<line number="357" hits="0"/>
<line number="358" hits="0"/>
<line number="360" hits="0"/>
<line number="363" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="364,368"/>
<line number="364" hits="0"/>
<line number="365" hits="0"/>
<line number="368" hits="0"/>
<line number="371" hits="0"/>
<line number="382" hits="0"/>
<line number="386" hits="0"/>
<line number="388" hits="0"/>
<line number="390" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="connectors.google_drive" line-rate="0" branch-rate="0" complexity="0">
<classes>
<class name="__init__.py" filename="connectors/google_drive/__init__.py" complexity="0" line-rate="0" branch-rate="1">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="4" hits="0"/>
</lines>
</class>
<class name="connector.py" filename="connectors/google_drive/connector.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="9" hits="0"/>
<line number="10" hits="0"/>
<line number="12" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="17" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0"/>
<line number="31" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="42" hits="0"/>
<line number="45" hits="0"/>
<line number="48" hits="0"/>
<line number="54" hits="0"/>
<line number="70" hits="0"/>
<line number="71" hits="0"/>
<line number="74" hits="0"/>
<line number="75" hits="0"/>
<line number="76" hits="0"/>
<line number="79" hits="0"/>
<line number="80" hits="0"/>
<line number="82" hits="0"/>
<line number="89" hits="0"/>
<line number="91" hits="0"/>
<line number="93" hits="0"/>
<line number="94" hits="0"/>
<line number="96" hits="0"/>
<line number="97" hits="0"/>
<line number="100" hits="0"/>
<line number="101" hits="0"/>
<line number="104" hits="0"/>
<line number="106" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="107,111"/>
<line number="107" hits="0"/>
<line number="111" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="112,118"/>
<line number="112" hits="0"/>
<line number="118" hits="0"/>
<line number="121" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="122,125"/>
<line number="122" hits="0"/>
<line number="123" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="121,124"/>
<line number="124" hits="0"/>
<line number="125" hits="0"/>
<line number="127" hits="0"/>
<line number="128" hits="0"/>
<line number="130" hits="0"/>
<line number="148" hits="0"/>
<line number="155" hits="0"/>
<line number="157" hits="0"/>
<line number="158" hits="0"/>
<line number="161" hits="0"/>
<line number="164" hits="0"/>
<line number="169" hits="0"/>
<line number="170" hits="0"/>
<line number="174" hits="0"/>
<line number="176" hits="0"/>
<line number="177" hits="0"/>
<line number="181" hits="0"/>
<line number="183" hits="0"/>
<line number="190" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="191,192"/>
<line number="191" hits="0"/>
<line number="192" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="193,195"/>
<line number="193" hits="0"/>
<line number="195" hits="0"/>
<line number="197" hits="0"/>
<line number="201" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="202,204"/>
<line number="202" hits="0"/>
<line number="204" hits="0"/>
<line number="205" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="206,208"/>
<line number="206" hits="0"/>
<line number="208" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="209,211"/>
<line number="209" hits="0"/>
<line number="211" hits="0"/>
<line number="212" hits="0"/>
<line number="224" hits="0"/>
<line number="225" hits="0"/>
<line number="226" hits="0"/>
<line number="228" hits="0"/>
<line number="230" hits="0"/>
<line number="234" hits="0"/>
<line number="235" hits="0"/>
<line number="236" hits="0"/>
<line number="238" hits="0"/>
<line number="239" hits="0"/>
<line number="255" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="256,257"/>
<line number="256" hits="0"/>
<line number="257" hits="0"/>
<line number="258" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="238,259"/>
<line number="259" hits="0"/>
<line number="261" hits="0"/>
<line number="263" hits="0"/>
<line number="269" hits="0"/>
<line number="270" hits="0"/>
<line number="272" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="273,284"/>
<line number="273" hits="0"/>
<line number="274" hits="0"/>
<line number="275" hits="0"/>
<line number="277" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="272,279"/>
<line number="279" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="272,280"/>
<line number="280" hits="0"/>
<line number="281" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="279,282"/>
<line number="282" hits="0"/>
<line number="284" hits="0"/>
<line number="286" hits="0"/>
<line number="290" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="291,294"/>
<line number="291" hits="0"/>
<line number="294" hits="0"/>
<line number="295" hits="0"/>
<line number="307" hits="0"/>
<line number="308" hits="0"/>
<line number="309" hits="0"/>
<line number="311" hits="0"/>
<line number="315" hits="0"/>
<line number="316" hits="0"/>
<line number="318" hits="0"/>
<line number="319" hits="0"/>
<line number="320" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="321,322"/>
<line number="321" hits="0"/>
<line number="322" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="323,324"/>
<line number="323" hits="0"/>
<line number="324" hits="0"/>
<line number="326" hits="0"/>
<line number="328" hits="0"/>
<line number="335" hits="0"/>
<line number="336" hits="0"/>
<line number="337" hits="0"/>
<line number="340" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="341,359"/>
<line number="341" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="342,359"/>
<line number="342" hits="0"/>
<line number="343" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="344,347"/>
<line number="344" hits="0"/>
<line number="347" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="348,353"/>
<line number="348" hits="0"/>
<line number="352" hits="0"/>
<line number="353" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="341,355"/>
<line number="355" hits="0"/>
<line number="356" hits="0"/>
<line number="359" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="360,363"/>
<line number="360" hits="0"/>
<line number="363" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="364,376"/>
<line number="364" hits="0"/>
<line number="365" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="366,376"/>
<line number="366" hits="0"/>
<line number="367" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="368,369"/>
<line number="368" hits="0"/>
<line number="369" hits="0"/>
<line number="370" hits="0"/>
<line number="376" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="377,379"/>
<line number="377" hits="0"/>
<line number="379" hits="0"/>
<line number="381" hits="0"/>
<line number="386" hits="0"/>
<line number="391" hits="0"/>
<line number="395" hits="0"/>
<line number="396" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="397,401"/>
<line number="397" hits="0"/>
<line number="401" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="402,406"/>
<line number="402" hits="0"/>
<line number="406" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="407,412"/>
<line number="407" hits="0"/>
<line number="412" hits="0"/>
<line number="414" hits="0"/>
<line number="419" hits="0"/>
<line number="420" hits="0"/>
<line number="421" hits="0"/>
<line number="423" hits="0"/>
<line number="429" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="430,440"/>
<line number="430" hits="0"/>
<line number="440" hits="0"/>
<line number="447" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="449,464"/>
<line number="449" hits="0"/>
<line number="450" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="452,454"/>
<line number="452" hits="0"/>
<line number="454" hits="0"/>
<line number="458" hits="0"/>
<line number="464" hits="0"/>
<line number="466" hits="0"/>
<line number="469" hits="0"/>
<line number="470" hits="0"/>
<line number="471" hits="0"/>
<line number="473" hits="0"/>
<line number="474" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="475,497"/>
<line number="475" hits="0"/>
<line number="477" hits="0"/>
<line number="480" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="481,495"/>
<line number="481" hits="0"/>
<line number="485" hits="0"/>
<line number="486" hits="0"/>
<line number="489" hits="0"/>
<line number="490" hits="0"/>
<line number="491" hits="0"/>
<line number="492" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="493,497"/>
<line number="493" hits="0"/>
<line number="495" hits="0"/>
<line number="497" hits="0"/>
<line number="503" hits="0"/>
<line number="508" hits="0"/>
<line number="510" hits="0"/>
<line number="513" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="514,520"/>
<line number="514" hits="0"/>
<line number="517" hits="0"/>
<line number="520" hits="0"/>
<line number="523" hits="0"/>
<line number="524" hits="0"/>
<line number="525" hits="0"/>
<line number="527" hits="0"/>
<line number="528" hits="0"/>
<line number="529" hits="0"/>
<line number="530" hits="0"/>
<line number="532" hits="0"/>
<line number="546" hits="0"/>
<line number="547" hits="0"/>
<line number="550" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="551,555"/>
<line number="551" hits="0"/>
<line number="555" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="556,558"/>
<line number="556" hits="0"/>
<line number="558" hits="0"/>
<line number="562" hits="0"/>
<line number="564" hits="0"/>
<line number="565" hits="0"/>
<line number="566" hits="0"/>
<line number="567" hits="0"/>
<line number="568" hits="0"/>
<line number="570" hits="0"/>
<line number="575" hits="0"/>
<line number="576" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="577,580"/>
<line number="577" hits="0"/>
<line number="580" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="581,587"/>
<line number="581" hits="0"/>
<line number="587" hits="0"/>
<line number="588" hits="0"/>
<line number="589" hits="0"/>
<line number="590" hits="0"/>
<line number="591" hits="0"/>
<line number="592" hits="0"/>
<line number="593" hits="0"/>
<line number="594" hits="0"/>
<line number="596" hits="0"/>
<line number="598" hits="0"/>
<line number="599" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="600,601"/>
<line number="600" hits="0"/>
<line number="601" hits="0"/>
<line number="603" hits="0"/>
<line number="604" hits="0"/>
<line number="605" hits="0"/>
<line number="606" hits="0"/>
<line number="607" hits="0"/>
<line number="608" hits="0"/>
<line number="610" hits="0"/>
<line number="627" hits="0"/>
<line number="629" hits="0"/>
<line number="638" hits="0"/>
<line number="641" hits="0"/>
<line number="642" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="643,648"/>
<line number="643" hits="0"/>
<line number="648" hits="0"/>
<line number="651" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="652,658"/>
<line number="652" hits="0"/>
<line number="658" hits="0"/>
<line number="659" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="660,669"/>
<line number="660" hits="0"/>
<line number="661" hits="0"/>
<line number="662" hits="0"/>
<line number="663" hits="0"/>
<line number="664" hits="0"/>
<line number="665" hits="0"/>
<line number="666" hits="0"/>
<line number="669" hits="0"/>
<line number="671" hits="0"/>
<line number="678" hits="0"/>
<line number="680" hits="0"/>
<line number="687" hits="0"/>
<line number="688" hits="0"/>
<line number="689" hits="0"/>
<line number="692" hits="0"/>
<line number="700" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="701,705"/>
<line number="701" hits="0"/>
<line number="705" hits="0"/>
<line number="707" hits="0"/>
<line number="708" hits="0"/>
<line number="709" hits="0"/>
<line number="710" hits="0"/>
<line number="711" hits="0"/>
<line number="712" hits="0"/>
<line number="714" hits="0"/>
<line number="728" hits="0"/>
<line number="729" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="730,737"/>
<line number="730" hits="0"/>
<line number="731" hits="0"/>
<line number="732" hits="0"/>
<line number="733" hits="0"/>
<line number="734" hits="0"/>
<line number="737" hits="0"/>
<line number="740" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="741,746"/>
<line number="741" hits="0"/>
<line number="742" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="743,746"/>
<line number="743" hits="0"/>
<line number="746" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="747,754"/>
<line number="747" hits="0"/>
<line number="748" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="749,754"/>
<line number="749" hits="0"/>
<line number="750" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="751,754"/>
<line number="751" hits="0"/>
<line number="754" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="755,757"/>
<line number="755" hits="0"/>
<line number="757" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="758,767"/>
<line number="758" hits="0"/>
<line number="759" hits="0"/>
<line number="763" hits="0"/>
<line number="764" hits="0"/>
<line number="765" hits="0"/>
<line number="767" hits="0"/>
<line number="768" hits="0"/>
<line number="773" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="777,779"/>
<line number="777" hits="0"/>
<line number="779" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="782,784"/>
<line number="782" hits="0"/>
<line number="784" hits="0"/>
<line number="786" hits="0"/>
<line number="787" hits="0"/>
<line number="788" hits="0"/>
<line number="789" hits="0"/>
<line number="790" hits="0"/>
<line number="791" hits="0"/>
<line number="793" hits="0"/>
<line number="806" hits="0"/>
<line number="807" hits="0"/>
<line number="809" hits="0"/>
<line number="810" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="811,818"/>
<line number="811" hits="0"/>
<line number="812" hits="0"/>
<line number="813" hits="0"/>
<line number="814" hits="0"/>
<line number="815" hits="0"/>
<line number="818" hits="0"/>
<line number="819" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="821,826"/>
<line number="821" hits="0"/>
<line number="822" hits="0"/>
<line number="826" hits="0"/>
<line number="827" hits="0"/>
<line number="828" hits="0"/>
<line number="829" hits="0"/>
<line number="830" hits="0"/>
<line number="831" hits="0"/>
<line number="832" hits="0"/>
<line number="835" hits="0"/>
<line number="836" hits="0"/>
<line number="839" hits="0"/>
<line number="840" hits="0"/>
<line number="855" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="856,882"/>
<line number="856" hits="0"/>
<line number="857" hits="0"/>
<line number="860" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="862,865"/>
<line number="862" hits="0"/>
<line number="865" hits="0"/>
<line number="866" hits="0"/>
<line number="869" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="871,879"/>
<line number="871" hits="0"/>
<line number="876" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="877,879"/>
<line number="877" hits="0"/>
<line number="879" hits="0"/>
<line number="882" hits="0"/>
<line number="883" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="884,888"/>
<line number="884" hits="0"/>
<line number="885" hits="0"/>
<line number="888" hits="0"/>
<line number="889" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="890,893"/>
<line number="890" hits="0"/>
<line number="893" hits="0"/>
<line number="894" hits="0"/>
<line number="897" hits="0"/>
<line number="898" hits="0"/>
<line number="899" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="900,903"/>
<line number="900" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="899,901"/>
<line number="901" hits="0"/>
<line number="902" hits="0"/>
<line number="903" hits="0"/>
<line number="905" hits="0"/>
<line number="906" hits="0"/>
<line number="907" hits="0"/>
<line number="908" hits="0"/>
<line number="909" hits="0"/>
<line number="910" hits="0"/>
<line number="912" hits="0"/>
<line number="918" hits="0"/>
<line number="919" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,920"/>
<line number="920" hits="0"/>
<line number="921" hits="0"/>
<line number="922" hits="0"/>
<line number="924" hits="0"/>
<line number="927" hits="0"/>
<line number="929" hits="0"/>
<line number="931" hits="0"/>
<line number="932" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="933,934"/>
<line number="933" hits="0"/>
<line number="934" hits="0"/>
<line number="936" hits="0"/>
<line number="937" hits="0"/>
<line number="938" hits="0"/>
<line number="939" hits="0"/>
<line number="940" hits="0"/>
<line number="941" hits="0"/>
<line number="943" hits="0"/>
<line number="962" hits="0"/>
<line number="967" hits="0"/>
<line number="969" hits="0"/>
<line number="972" hits="0"/>
<line number="974" hits="0"/>
<line number="980" hits="0"/>
<line number="982" hits="0"/>
<line number="983" hits="0"/>
<line number="997" hits="0"/>
<line number="1000" hits="0"/>
<line number="1001" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1002,1056"/>
<line number="1002" hits="0"/>
<line number="1003" hits="0"/>
<line number="1004" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1005,1008"/>
<line number="1005" hits="0"/>
<line number="1008" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1010,1021"/>
<line number="1010" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1014,1021"/>
<line number="1014" hits="0"/>
<line number="1015" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1016,1018"/>
<line number="1016" hits="0"/>
<line number="1018" hits="0"/>
<line number="1021" hits="0"/>
<line number="1022" hits="0"/>
<line number="1023" hits="0"/>
<line number="1024" hits="0"/>
<line number="1025" hits="0"/>
<line number="1027" hits="0"/>
<line number="1029" hits="0"/>
<line number="1030" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1031,1032"/>
<line number="1031" hits="0"/>
<line number="1032" hits="0"/>
<line number="1033" hits="0"/>
<line number="1034" hits="0"/>
<line number="1035" hits="0"/>
<line number="1036" hits="0"/>
<line number="1037" hits="0"/>
<line number="1038" hits="0"/>
<line number="1040" hits="0"/>
<line number="1054" hits="0"/>
<line number="1056" hits="0"/>
<line number="1057" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1058,1062"/>
<line number="1058" hits="0"/>
<line number="1059" hits="0"/>
<line number="1062" hits="0"/>
<line number="1063" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1064,1068"/>
<line number="1064" hits="0"/>
<line number="1065" hits="0"/>
<line number="1068" hits="0"/>
<line number="1073" hits="0"/>
<line number="1079" hits="0"/>
<line number="1085" hits="0"/>
<line number="1090" hits="0"/>
<line number="1091" hits="0"/>
<line number="1092" hits="0"/>
<line number="1097" hits="0"/>
<line number="1099" hits="0"/>
<line number="1103" hits="0"/>
<line number="1104" hits="0"/>
<line number="1107" hits="0"/>
<line number="1109" hits="0"/>
<line number="1110" hits="0"/>
<line number="1112" hits="0"/>
</lines>
</class>
<class name="oauth.py" filename="connectors/google_drive/oauth.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="11" hits="0"/>
<line number="14" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="25" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="36" hits="0"/>
<line number="38" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="39,62"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="43" hits="0"/>
<line number="54" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="55,62"/>
<line number="55" hits="0"/>
<line number="57" hits="0"/>
<line number="59" hits="0"/>
<line number="62" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="63,66"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="66" hits="0"/>
<line number="68" hits="0"/>
<line number="70" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,72"/>
<line number="72" hits="0"/>
<line number="80" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="81,83"/>
<line number="81" hits="0"/>
<line number="83" hits="0"/>
<line number="84" hits="0"/>
<line number="86" hits="0"/>
<line number="89" hits="0"/>
<line number="98" hits="0"/>
<line number="102" hits="0"/>
<line number="109" hits="0"/>
<line number="110" hits="0"/>
<line number="112" hits="0"/>
<line number="114" hits="0"/>
<line number="118" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="119,122"/>
<line number="119" hits="0"/>
<line number="122" hits="0"/>
<line number="123" hits="0"/>
<line number="126" hits="0"/>
<line number="128" hits="0"/>
<line number="130" hits="0"/>
<line number="132" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="133,135"/>
<line number="133" hits="0"/>
<line number="135" hits="0"/>
<line number="137" hits="0"/>
<line number="139" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="140,142"/>
<line number="140" hits="0"/>
<line number="142" hits="0"/>
<line number="144" hits="0"/>
<line number="146" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="147,149"/>
<line number="147" hits="0"/>
<line number="149" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="150,152"/>
<line number="150" hits="0"/>
<line number="152" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="connectors.onedrive" line-rate="0" branch-rate="0" complexity="0">
<classes>
<class name="__init__.py" filename="connectors/onedrive/__init__.py" complexity="0" line-rate="0" branch-rate="1">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="4" hits="0"/>
</lines>
</class>
<class name="connector.py" filename="connectors/onedrive/connector.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="13" hits="0"/>
<line number="17" hits="0"/>
<line number="18" hits="0"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="28" hits="0"/>
<line number="29" hits="0"/>
<line number="31" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="32,35"/>
<line number="32" hits="0"/>
<line number="33" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="44" hits="0"/>
<line number="45" hits="0"/>
<line number="46" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0"/>
<line number="51" hits="0"/>
<line number="52" hits="0"/>
<line number="53" hits="0"/>
<line number="55" hits="0"/>
<line number="56" hits="0"/>
<line number="57" hits="0"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="62" hits="0"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="67" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="68,88"/>
<line number="68" hits="0"/>
<line number="71" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="72,75"/>
<line number="72" hits="0"/>
<line number="75" hits="0"/>
<line number="78" hits="0"/>
<line number="80" hits="0"/>
<line number="88" hits="0"/>
<line number="91" hits="0"/>
<line number="94" hits="0"/>
<line number="95" hits="0"/>
<line number="99" hits="0"/>
<line number="100" hits="0"/>
<line number="102" hits="0"/>
<line number="104" hits="0"/>
<line number="106" hits="0"/>
<line number="108" hits="0"/>
<line number="110" hits="0"/>
<line number="111" hits="0"/>
<line number="112" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="113,117"/>
<line number="113" hits="0"/>
<line number="114" hits="0"/>
<line number="115" hits="0"/>
<line number="117" hits="0"/>
<line number="118" hits="0"/>
<line number="119" hits="0"/>
<line number="121" hits="0"/>
<line number="122" hits="0"/>
<line number="123" hits="0"/>
<line number="125" hits="0"/>
<line number="126" hits="0"/>
<line number="127" hits="0"/>
<line number="128" hits="0"/>
<line number="129" hits="0"/>
<line number="130" hits="0"/>
<line number="131" hits="0"/>
<line number="132" hits="0"/>
<line number="134" hits="0"/>
<line number="136" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="137,138"/>
<line number="137" hits="0"/>
<line number="138" hits="0"/>
<line number="140" hits="0"/>
<line number="142" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="143,144"/>
<line number="143" hits="0"/>
<line number="144" hits="0"/>
<line number="145" hits="0"/>
<line number="146" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="147,150"/>
<line number="147" hits="0"/>
<line number="148" hits="0"/>
<line number="150" hits="0"/>
<line number="151" hits="0"/>
<line number="152" hits="0"/>
<line number="153" hits="0"/>
<line number="155" hits="0"/>
<line number="159" hits="0"/>
<line number="161" hits="0"/>
<line number="162" hits="0"/>
<line number="163" hits="0"/>
<line number="164" hits="0"/>
<line number="165" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,166"/>
<line number="166" hits="0"/>
<line number="167" hits="0"/>
<line number="168" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="169,170"/>
<line number="169" hits="0"/>
<line number="170" hits="0"/>
<line number="171" hits="0"/>
<line number="172" hits="0"/>
<line number="173" hits="0"/>
<line number="174" hits="0"/>
<line number="175" hits="0"/>
<line number="176" hits="0"/>
<line number="177" hits="0"/>
<line number="179" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="180,182"/>
<line number="180" hits="0"/>
<line number="182" hits="0"/>
<line number="183" hits="0"/>
<line number="185" hits="0"/>
<line number="190" hits="0"/>
<line number="191" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="192,195"/>
<line number="192" hits="0"/>
<line number="193" hits="0"/>
<line number="195" hits="0"/>
<line number="196" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="197,199"/>
<line number="197" hits="0"/>
<line number="199" hits="0"/>
<line number="202" hits="0"/>
<line number="204" hits="0"/>
<line number="212" hits="0"/>
<line number="217" hits="0"/>
<line number="219" hits="0"/>
<line number="220" hits="0"/>
<line number="221" hits="0"/>
<line number="223" hits="0"/>
<line number="224" hits="0"/>
<line number="226" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="227,231"/>
<line number="227" hits="0"/>
<line number="228" hits="0"/>
<line number="229" hits="0"/>
<line number="231" hits="0"/>
<line number="233" hits="0"/>
<line number="234" hits="0"/>
<line number="235" hits="0"/>
<line number="237" hits="0"/>
<line number="239" hits="0"/>
<line number="240" hits="0"/>
<line number="241" hits="0"/>
<line number="243" hits="0"/>
<line number="250" hits="0"/>
<line number="251" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="252,254"/>
<line number="252" hits="0"/>
<line number="254" hits="0"/>
<line number="255" hits="0"/>
<line number="257" hits="0"/>
<line number="259" hits="0"/>
<line number="260" hits="0"/>
<line number="262" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="263,265"/>
<line number="263" hits="0"/>
<line number="265" hits="0"/>
<line number="266" hits="0"/>
<line number="268" hits="0"/>
<line number="269" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="270,284"/>
<line number="270" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="269,271"/>
<line number="271" hits="0"/>
<line number="284" hits="0"/>
<line number="285" hits="0"/>
<line number="286" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="287,293"/>
<line number="287" hits="0"/>
<line number="288" hits="0"/>
<line number="289" hits="0"/>
<line number="290" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="291,293"/>
<line number="291" hits="0"/>
<line number="293" hits="0"/>
<line number="295" hits="0"/>
<line number="296" hits="0"/>
<line number="297" hits="0"/>
<line number="299" hits="0"/>
<line number="301" hits="0"/>
<line number="302" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="303,305"/>
<line number="303" hits="0"/>
<line number="305" hits="0"/>
<line number="306" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="307,309"/>
<line number="307" hits="0"/>
<line number="309" hits="0"/>
<line number="310" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="311,313"/>
<line number="311" hits="0"/>
<line number="313" hits="0"/>
<line number="315" hits="0"/>
<line number="321" hits="0"/>
<line number="322" hits="0"/>
<line number="324" hits="0"/>
<line number="339" hits="0"/>
<line number="340" hits="0"/>
<line number="341" hits="0"/>
<line number="343" hits="0"/>
<line number="345" hits="0"/>
<line number="346" hits="0"/>
<line number="347" hits="0"/>
<line number="349" hits="0"/>
<line number="350" hits="0"/>
<line number="352" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="353,365"/>
<line number="353" hits="0"/>
<line number="365" hits="0"/>
<line number="367" hits="0"/>
<line number="368" hits="0"/>
<line number="369" hits="0"/>
<line number="371" hits="0"/>
<line number="373" hits="0"/>
<line number="374" hits="0"/>
<line number="375" hits="0"/>
<line number="376" hits="0"/>
<line number="378" hits="0"/>
<line number="379" hits="0"/>
<line number="380" hits="0"/>
<line number="381" hits="0"/>
<line number="383" hits="0"/>
<line number="384" hits="0"/>
<line number="385" hits="0"/>
<line number="387" hits="0"/>
<line number="389" hits="0"/>
<line number="390" hits="0"/>
<line number="391" hits="0"/>
<line number="392" hits="0"/>
<line number="393" hits="0"/>
<line number="394" hits="0"/>
<line number="395" hits="0"/>
<line number="396" hits="0"/>
<line number="398" hits="0"/>
<line number="400" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="401,402"/>
<line number="401" hits="0"/>
<line number="402" hits="0"/>
<line number="403" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="404,406"/>
<line number="404" hits="0"/>
<line number="406" hits="0"/>
<line number="407" hits="0"/>
<line number="408" hits="0"/>
<line number="410" hits="0"/>
<line number="413" hits="0"/>
<line number="414" hits="0"/>
<line number="419" hits="0"/>
<line number="420" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="421,422"/>
<line number="421" hits="0"/>
<line number="422" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="423,424"/>
<line number="423" hits="0"/>
<line number="424" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="425,427"/>
<line number="425" hits="0"/>
<line number="427" hits="0"/>
<line number="429" hits="0"/>
<line number="430" hits="0"/>
<line number="432" hits="0"/>
<line number="434" hits="0"/>
<line number="435" hits="0"/>
<line number="436" hits="0"/>
<line number="439" hits="0"/>
<line number="443" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="444,445"/>
<line number="444" hits="0"/>
<line number="445" hits="0"/>
<line number="447" hits="0"/>
<line number="450" hits="0"/>
<line number="451" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="452,453"/>
<line number="452" hits="0"/>
<line number="453" hits="0"/>
<line number="455" hits="0"/>
<line number="457" hits="0"/>
<line number="458" hits="0"/>
<line number="459" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="460,464"/>
<line number="460" hits="0"/>
<line number="461" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="459,462"/>
<line number="462" hits="0"/>
<line number="463" hits="0"/>
<line number="464" hits="0"/>
<line number="466" hits="0"/>
<line number="468" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="469,472"/>
<line number="469" hits="0"/>
<line number="470" hits="0"/>
<line number="472" hits="0"/>
<line number="473" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="474,477"/>
<line number="474" hits="0"/>
<line number="475" hits="0"/>
<line number="477" hits="0"/>
<line number="478" hits="0"/>
<line number="480" hits="0"/>
<line number="482" hits="0"/>
<line number="483" hits="0"/>
<line number="485" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="486,489"/>
<line number="486" hits="0"/>
<line number="487" hits="0"/>
<line number="489" hits="0"/>
<line number="490" hits="0"/>
<line number="492" hits="0"/>
<line number="493" hits="0"/>
<line number="494" hits="0"/>
</lines>
</class>
<class name="oauth.py" filename="connectors/onedrive/oauth.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="9" hits="0"/>
<line number="12" hits="0"/>
<line number="16" hits="0"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0"/>
<line number="51" hits="0"/>
<line number="52" hits="0"/>
<line number="53" hits="0"/>
<line number="54" hits="0"/>
<line number="55" hits="0"/>
<line number="58" hits="0"/>
<line number="65" hits="0"/>
<line number="67" hits="0"/>
<line number="68" hits="0"/>
<line number="69" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="70,120"/>
<line number="70" hits="0"/>
<line number="73" hits="0"/>
<line number="74" hits="0"/>
<line number="75" hits="0"/>
<line number="77" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="79,118"/>
<line number="79" hits="0"/>
<line number="80" hits="0"/>
<line number="81" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="82,97"/>
<line number="82" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="83,88"/>
<line number="83" hits="0"/>
<line number="86" hits="0"/>
<line number="88" hits="0"/>
<line number="92" hits="0"/>
<line number="93" hits="0"/>
<line number="94" hits="0"/>
<line number="97" hits="0"/>
<line number="98" hits="0"/>
<line number="101" hits="0"/>
<line number="102" hits="0"/>
<line number="103" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="104,122"/>
<line number="104" hits="0"/>
<line number="105" hits="0"/>
<line number="108" hits="0"/>
<line number="109" hits="0"/>
<line number="110" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="111,115"/>
<line number="111" hits="0"/>
<line number="112" hits="0"/>
<line number="113" hits="0"/>
<line number="115" hits="0"/>
<line number="116" hits="0"/>
<line number="118" hits="0"/>
<line number="120" hits="0"/>
<line number="122" hits="0"/>
<line number="124" hits="0"/>
<line number="125" hits="0"/>
<line number="126" hits="0"/>
<line number="127" hits="0"/>
<line number="128" hits="0"/>
<line number="130" hits="0"/>
<line number="135" hits="0"/>
<line number="136" hits="0"/>
<line number="137" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="138,143"/>
<line number="138" hits="0"/>
<line number="139" hits="0"/>
<line number="140" hits="0"/>
<line number="143" hits="0"/>
<line number="144" hits="0"/>
<line number="146" hits="0"/>
<line number="151" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="152,163"/>
<line number="152" hits="0"/>
<line number="153" hits="0"/>
<line number="155" hits="0"/>
<line number="156" hits="0"/>
<line number="157" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="158,160"/>
<line number="158" hits="0"/>
<line number="159" hits="0"/>
<line number="160" hits="0"/>
<line number="163" hits="0"/>
<line number="164" hits="0"/>
<line number="166" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="167,172"/>
<line number="167" hits="0"/>
<line number="172" hits="0"/>
<line number="174" hits="0"/>
<line number="175" hits="0"/>
<line number="176" hits="0"/>
<line number="177" hits="0"/>
<line number="178" hits="0"/>
<line number="180" hits="0"/>
<line number="182" hits="0"/>
<line number="184" hits="0"/>
<line number="185" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="186,188"/>
<line number="186" hits="0"/>
<line number="188" hits="0"/>
<line number="189" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,190"/>
<line number="190" hits="0"/>
<line number="191" hits="0"/>
<line number="192" hits="0"/>
<line number="193" hits="0"/>
<line number="194" hits="0"/>
<line number="196" hits="0"/>
<line number="199" hits="0"/>
<line number="201" hits="0"/>
<line number="207" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="208,210"/>
<line number="208" hits="0"/>
<line number="210" hits="0"/>
<line number="212" hits="0"/>
<line number="213" hits="0"/>
<line number="215" hits="0"/>
<line number="217" hits="0"/>
<line number="221" hits="0"/>
<line number="222" hits="0"/>
<line number="228" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="229,237"/>
<line number="229" hits="0"/>
<line number="230" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="231,233"/>
<line number="231" hits="0"/>
<line number="233" hits="0"/>
<line number="234" hits="0"/>
<line number="235" hits="0"/>
<line number="237" hits="0"/>
<line number="238" hits="0"/>
<line number="239" hits="0"/>
<line number="241" hits="0"/>
<line number="242" hits="0"/>
<line number="243" hits="0"/>
<line number="245" hits="0"/>
<line number="247" hits="0"/>
<line number="249" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="250,253"/>
<line number="250" hits="0"/>
<line number="253" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="254,262"/>
<line number="254" hits="0"/>
<line number="255" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="256,258"/>
<line number="256" hits="0"/>
<line number="258" hits="0"/>
<line number="259" hits="0"/>
<line number="262" hits="0"/>
<line number="263" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="264,269"/>
<line number="264" hits="0"/>
<line number="265" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="266,267"/>
<line number="266" hits="0"/>
<line number="267" hits="0"/>
<line number="269" hits="0"/>
<line number="271" hits="0"/>
<line number="272" hits="0"/>
<line number="273" hits="0"/>
<line number="275" hits="0"/>
<line number="277" hits="0"/>
<line number="279" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="280,285"/>
<line number="280" hits="0"/>
<line number="281" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="282,285"/>
<line number="282" hits="0"/>
<line number="285" hits="0"/>
<line number="286" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="287,290"/>
<line number="287" hits="0"/>
<line number="290" hits="0"/>
<line number="291" hits="0"/>
<line number="293" hits="0"/>
<line number="294" hits="0"/>
<line number="295" hits="0"/>
<line number="297" hits="0"/>
<line number="299" hits="0"/>
<line number="301" hits="0"/>
<line number="302" hits="0"/>
<line number="305" hits="0"/>
<line number="313" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,314"/>
<line number="314" hits="0"/>
<line number="315" hits="0"/>
<line number="317" hits="0"/>
<line number="318" hits="0"/>
<line number="320" hits="0"/>
<line number="322" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="connectors.sharepoint" line-rate="0" branch-rate="0" complexity="0">
<classes>
<class name="__init__.py" filename="connectors/sharepoint/__init__.py" complexity="0" line-rate="0" branch-rate="1">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="4" hits="0"/>
</lines>
</class>
<class name="connector.py" filename="connectors/sharepoint/connector.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="11" hits="0"/>
<line number="14" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0"/>
<line number="33" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="34,37"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
<line number="43" hits="0"/>
<line number="46" hits="0"/>
<line number="47" hits="0"/>
<line number="48" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0"/>
<line number="53" hits="0"/>
<line number="54" hits="0"/>
<line number="55" hits="0"/>
<line number="56" hits="0"/>
<line number="57" hits="0"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="61" hits="0"/>
<line number="62" hits="0"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="67" hits="0"/>
<line number="70" hits="0"/>
<line number="71" hits="0"/>
<line number="72" hits="0"/>
<line number="75" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="76,93"/>
<line number="76" hits="0"/>
<line number="79" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="80,82"/>
<line number="80" hits="0"/>
<line number="82" hits="0"/>
<line number="84" hits="0"/>
<line number="86" hits="0"/>
<line number="93" hits="0"/>
<line number="96" hits="0"/>
<line number="99" hits="0"/>
<line number="100" hits="0"/>
<line number="104" hits="0"/>
<line number="105" hits="0"/>
<line number="107" hits="0"/>
<line number="109" hits="0"/>
<line number="113" hits="0"/>
<line number="115" hits="0"/>
<line number="117" hits="0"/>
<line number="118" hits="0"/>
<line number="119" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="120,124"/>
<line number="120" hits="0"/>
<line number="121" hits="0"/>
<line number="122" hits="0"/>
<line number="124" hits="0"/>
<line number="126" hits="0"/>
<line number="127" hits="0"/>
<line number="129" hits="0"/>
<line number="130" hits="0"/>
<line number="131" hits="0"/>
<line number="133" hits="0"/>
<line number="134" hits="0"/>
<line number="135" hits="0"/>
<line number="136" hits="0"/>
<line number="137" hits="0"/>
<line number="138" hits="0"/>
<line number="139" hits="0"/>
<line number="140" hits="0"/>
<line number="142" hits="0"/>
<line number="144" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="145,146"/>
<line number="145" hits="0"/>
<line number="146" hits="0"/>
<line number="148" hits="0"/>
<line number="150" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="151,152"/>
<line number="151" hits="0"/>
<line number="152" hits="0"/>
<line number="153" hits="0"/>
<line number="154" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="155,158"/>
<line number="155" hits="0"/>
<line number="156" hits="0"/>
<line number="158" hits="0"/>
<line number="159" hits="0"/>
<line number="160" hits="0"/>
<line number="161" hits="0"/>
<line number="163" hits="0"/>
<line number="168" hits="0"/>
<line number="170" hits="0"/>
<line number="171" hits="0"/>
<line number="173" hits="0"/>
<line number="174" hits="0"/>
<line number="176" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,177"/>
<line number="177" hits="0"/>
<line number="178" hits="0"/>
<line number="179" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="180,183"/>
<line number="180" hits="0"/>
<line number="183" hits="0"/>
<line number="184" hits="0"/>
<line number="186" hits="0"/>
<line number="187" hits="0"/>
<line number="188" hits="0"/>
<line number="190" hits="0"/>
<line number="191" hits="0"/>
<line number="192" hits="0"/>
<line number="195" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="196,199"/>
<line number="196" hits="0"/>
<line number="199" hits="0"/>
<line number="200" hits="0"/>
<line number="202" hits="0"/>
<line number="204" hits="0"/>
<line number="205" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="206,209"/>
<line number="206" hits="0"/>
<line number="207" hits="0"/>
<line number="209" hits="0"/>
<line number="211" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="212,214"/>
<line number="212" hits="0"/>
<line number="214" hits="0"/>
<line number="217" hits="0"/>
<line number="218" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="219,221"/>
<line number="219" hits="0"/>
<line number="221" hits="0"/>
<line number="223" hits="0"/>
<line number="231" hits="0"/>
<line number="236" hits="0"/>
<line number="238" hits="0"/>
<line number="239" hits="0"/>
<line number="240" hits="0"/>
<line number="242" hits="0"/>
<line number="243" hits="0"/>
<line number="245" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="246,250"/>
<line number="246" hits="0"/>
<line number="247" hits="0"/>
<line number="248" hits="0"/>
<line number="250" hits="0"/>
<line number="252" hits="0"/>
<line number="253" hits="0"/>
<line number="254" hits="0"/>
<line number="256" hits="0"/>
<line number="258" hits="0"/>
<line number="259" hits="0"/>
<line number="260" hits="0"/>
<line number="262" hits="0"/>
<line number="264" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="265,267"/>
<line number="265" hits="0"/>
<line number="267" hits="0"/>
<line number="268" hits="0"/>
<line number="270" hits="0"/>
<line number="271" hits="0"/>
<line number="273" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="274,282"/>
<line number="274" hits="0"/>
<line number="275" hits="0"/>
<line number="279" hits="0"/>
<line number="280" hits="0"/>
<line number="282" hits="0"/>
<line number="284" hits="0"/>
<line number="291" hits="0"/>
<line number="293" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="294,296"/>
<line number="294" hits="0"/>
<line number="296" hits="0"/>
<line number="297" hits="0"/>
<line number="300" hits="0"/>
<line number="301" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="302,304"/>
<line number="302" hits="0"/>
<line number="304" hits="0"/>
<line number="306" hits="0"/>
<line number="307" hits="0"/>
<line number="309" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="310,312"/>
<line number="310" hits="0"/>
<line number="312" hits="0"/>
<line number="313" hits="0"/>
<line number="315" hits="0"/>
<line number="316" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="318,332"/>
<line number="318" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="316,319"/>
<line number="319" hits="0"/>
<line number="332" hits="0"/>
<line number="333" hits="0"/>
<line number="334" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="335,341"/>
<line number="335" hits="0"/>
<line number="336" hits="0"/>
<line number="337" hits="0"/>
<line number="338" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="339,341"/>
<line number="339" hits="0"/>
<line number="341" hits="0"/>
<line number="346" hits="0"/>
<line number="347" hits="0"/>
<line number="348" hits="0"/>
<line number="350" hits="0"/>
<line number="352" hits="0"/>
<line number="354" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="355,358"/>
<line number="355" hits="0"/>
<line number="358" hits="0"/>
<line number="360" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="361,364"/>
<line number="361" hits="0"/>
<line number="364" hits="0"/>
<line number="365" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="366,368"/>
<line number="366" hits="0"/>
<line number="368" hits="0"/>
<line number="371" hits="0"/>
<line number="378" hits="0"/>
<line number="379" hits="0"/>
<line number="381" hits="0"/>
<line number="397" hits="0"/>
<line number="398" hits="0"/>
<line number="399" hits="0"/>
<line number="401" hits="0"/>
<line number="403" hits="0"/>
<line number="405" hits="0"/>
<line number="406" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="407,409"/>
<line number="407" hits="0"/>
<line number="409" hits="0"/>
<line number="411" hits="0"/>
<line number="413" hits="0"/>
<line number="414" hits="0"/>
<line number="416" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="417,429"/>
<line number="417" hits="0"/>
<line number="429" hits="0"/>
<line number="431" hits="0"/>
<line number="432" hits="0"/>
<line number="433" hits="0"/>
<line number="435" hits="0"/>
<line number="437" hits="0"/>
<line number="438" hits="0"/>
<line number="439" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="440,442"/>
<line number="440" hits="0"/>
<line number="442" hits="0"/>
<line number="444" hits="0"/>
<line number="445" hits="0"/>
<line number="447" hits="0"/>
<line number="448" hits="0"/>
<line number="449" hits="0"/>
<line number="450" hits="0"/>
<line number="452" hits="0"/>
<line number="453" hits="0"/>
<line number="454" hits="0"/>
<line number="456" hits="0"/>
<line number="458" hits="0"/>
<line number="459" hits="0"/>
<line number="460" hits="0"/>
<line number="461" hits="0"/>
<line number="462" hits="0"/>
<line number="463" hits="0"/>
<line number="464" hits="0"/>
<line number="465" hits="0"/>
<line number="467" hits="0"/>
<line number="469" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="470,472"/>
<line number="470" hits="0"/>
<line number="472" hits="0"/>
<line number="473" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="474,476"/>
<line number="474" hits="0"/>
<line number="476" hits="0"/>
<line number="477" hits="0"/>
<line number="478" hits="0"/>
<line number="480" hits="0"/>
<line number="483" hits="0"/>
<line number="484" hits="0"/>
<line number="489" hits="0"/>
<line number="490" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="491,492"/>
<line number="491" hits="0"/>
<line number="492" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="493,494"/>
<line number="493" hits="0"/>
<line number="494" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="495,497"/>
<line number="495" hits="0"/>
<line number="497" hits="0"/>
<line number="499" hits="0"/>
<line number="500" hits="0"/>
<line number="502" hits="0"/>
<line number="504" hits="0"/>
<line number="505" hits="0"/>
<line number="506" hits="0"/>
<line number="509" hits="0"/>
<line number="512" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="513,514"/>
<line number="513" hits="0"/>
<line number="514" hits="0"/>
<line number="516" hits="0"/>
<line number="519" hits="0"/>
<line number="520" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="521,522"/>
<line number="521" hits="0"/>
<line number="522" hits="0"/>
<line number="524" hits="0"/>
<line number="526" hits="0"/>
<line number="529" hits="0"/>
<line number="530" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="531,536"/>
<line number="531" hits="0"/>
<line number="532" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="530,533"/>
<line number="533" hits="0"/>
<line number="534" hits="0"/>
<line number="536" hits="0"/>
<line number="538" hits="0"/>
<line number="540" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="541,544"/>
<line number="541" hits="0"/>
<line number="542" hits="0"/>
<line number="544" hits="0"/>
<line number="546" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="547,550"/>
<line number="547" hits="0"/>
<line number="548" hits="0"/>
<line number="550" hits="0"/>
<line number="551" hits="0"/>
<line number="553" hits="0"/>
<line number="555" hits="0"/>
<line number="556" hits="0"/>
<line number="558" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="559,562"/>
<line number="559" hits="0"/>
<line number="560" hits="0"/>
<line number="562" hits="0"/>
<line number="563" hits="0"/>
<line number="565" hits="0"/>
<line number="566" hits="0"/>
<line number="567" hits="0"/>
</lines>
</class>
<class name="oauth.py" filename="connectors/sharepoint/oauth.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="9" hits="0"/>
<line number="12" hits="0"/>
<line number="16" hits="0"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0"/>
<line number="51" hits="0"/>
<line number="52" hits="0"/>
<line number="53" hits="0"/>
<line number="54" hits="0"/>
<line number="55" hits="0"/>
<line number="58" hits="0"/>
<line number="65" hits="0"/>
<line number="67" hits="0"/>
<line number="68" hits="0"/>
<line number="69" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="70,120"/>
<line number="70" hits="0"/>
<line number="73" hits="0"/>
<line number="74" hits="0"/>
<line number="75" hits="0"/>
<line number="77" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="79,118"/>
<line number="79" hits="0"/>
<line number="80" hits="0"/>
<line number="81" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="82,97"/>
<line number="82" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="83,88"/>
<line number="83" hits="0"/>
<line number="86" hits="0"/>
<line number="88" hits="0"/>
<line number="92" hits="0"/>
<line number="93" hits="0"/>
<line number="94" hits="0"/>
<line number="97" hits="0"/>
<line number="98" hits="0"/>
<line number="101" hits="0"/>
<line number="102" hits="0"/>
<line number="103" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="104,122"/>
<line number="104" hits="0"/>
<line number="105" hits="0"/>
<line number="108" hits="0"/>
<line number="109" hits="0"/>
<line number="110" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="111,115"/>
<line number="111" hits="0"/>
<line number="112" hits="0"/>
<line number="113" hits="0"/>
<line number="115" hits="0"/>
<line number="116" hits="0"/>
<line number="118" hits="0"/>
<line number="120" hits="0"/>
<line number="122" hits="0"/>
<line number="124" hits="0"/>
<line number="125" hits="0"/>
<line number="126" hits="0"/>
<line number="127" hits="0"/>
<line number="128" hits="0"/>
<line number="130" hits="0"/>
<line number="138" hits="0"/>
<line number="139" hits="0"/>
<line number="140" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="141,146"/>
<line number="141" hits="0"/>
<line number="142" hits="0"/>
<line number="143" hits="0"/>
<line number="146" hits="0"/>
<line number="147" hits="0"/>
<line number="149" hits="0"/>
<line number="154" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="155,166"/>
<line number="155" hits="0"/>
<line number="156" hits="0"/>
<line number="158" hits="0"/>
<line number="159" hits="0"/>
<line number="160" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="161,163"/>
<line number="161" hits="0"/>
<line number="162" hits="0"/>
<line number="163" hits="0"/>
<line number="166" hits="0"/>
<line number="167" hits="0"/>
<line number="169" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="170,175"/>
<line number="170" hits="0"/>
<line number="175" hits="0"/>
<line number="177" hits="0"/>
<line number="178" hits="0"/>
<line number="179" hits="0"/>
<line number="180" hits="0"/>
<line number="181" hits="0"/>
<line number="183" hits="0"/>
<line number="185" hits="0"/>
<line number="187" hits="0"/>
<line number="188" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="189,191"/>
<line number="189" hits="0"/>
<line number="191" hits="0"/>
<line number="192" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,193"/>
<line number="193" hits="0"/>
<line number="194" hits="0"/>
<line number="195" hits="0"/>
<line number="196" hits="0"/>
<line number="197" hits="0"/>
<line number="199" hits="0"/>
<line number="202" hits="0"/>
<line number="204" hits="0"/>
<line number="210" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="211,213"/>
<line number="211" hits="0"/>
<line number="213" hits="0"/>
<line number="215" hits="0"/>
<line number="216" hits="0"/>
<line number="218" hits="0"/>
<line number="220" hits="0"/>
<line number="224" hits="0"/>
<line number="226" hits="0"/>
<line number="232" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="234,242"/>
<line number="234" hits="0"/>
<line number="235" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="236,238"/>
<line number="236" hits="0"/>
<line number="238" hits="0"/>
<line number="239" hits="0"/>
<line number="240" hits="0"/>
<line number="242" hits="0"/>
<line number="243" hits="0"/>
<line number="244" hits="0"/>
<line number="246" hits="0"/>
<line number="247" hits="0"/>
<line number="248" hits="0"/>
<line number="250" hits="0"/>
<line number="252" hits="0"/>
<line number="254" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="255,258"/>
<line number="255" hits="0"/>
<line number="258" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="260,268"/>
<line number="260" hits="0"/>
<line number="261" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="262,264"/>
<line number="262" hits="0"/>
<line number="264" hits="0"/>
<line number="265" hits="0"/>
<line number="268" hits="0"/>
<line number="269" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="271,276"/>
<line number="271" hits="0"/>
<line number="272" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="273,274"/>
<line number="273" hits="0"/>
<line number="274" hits="0"/>
<line number="276" hits="0"/>
<line number="278" hits="0"/>
<line number="279" hits="0"/>
<line number="280" hits="0"/>
<line number="282" hits="0"/>
<line number="284" hits="0"/>
<line number="286" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="287,292"/>
<line number="287" hits="0"/>
<line number="288" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="289,292"/>
<line number="289" hits="0"/>
<line number="292" hits="0"/>
<line number="293" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="294,297"/>
<line number="294" hits="0"/>
<line number="297" hits="0"/>
<line number="298" hits="0"/>
<line number="300" hits="0"/>
<line number="301" hits="0"/>
<line number="302" hits="0"/>
<line number="304" hits="0"/>
<line number="306" hits="0"/>
<line number="308" hits="0"/>
<line number="309" hits="0"/>
<line number="312" hits="0"/>
<line number="320" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,321"/>
<line number="321" hits="0"/>
<line number="322" hits="0"/>
<line number="324" hits="0"/>
<line number="325" hits="0"/>
<line number="327" hits="0"/>
<line number="329" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="models" line-rate="0" branch-rate="0" complexity="0">
<classes>
<class name="__init__.py" filename="models/__init__.py" complexity="0" line-rate="1" branch-rate="1">
<methods/>
<lines/>
</class>
<class name="processors.py" filename="models/processors.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="5" hits="0"/>
<line number="8" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="14" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,30"/>
<line number="30" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="35,48"/>
<line number="35" hits="0"/>
<line number="42" hits="0"/>
<line number="46" hits="0"/>
<line number="48" hits="0"/>
<line number="55" hits="0"/>
<line number="56" hits="0"/>
<line number="58" hits="0"/>
<line number="67" hits="0"/>
<line number="68" hits="0"/>
<line number="69" hits="0"/>
<line number="71" hits="0"/>
<line number="72" hits="0"/>
<line number="74" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,75"/>
<line number="75" hits="0"/>
<line number="77" hits="0"/>
<line number="79" hits="0"/>
<line number="85" hits="0"/>
<line number="86" hits="0"/>
<line number="88" hits="0"/>
<line number="89" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="90,103"/>
<line number="90" hits="0"/>
<line number="97" hits="0"/>
<line number="101" hits="0"/>
<line number="103" hits="0"/>
<line number="110" hits="0"/>
<line number="111" hits="0"/>
<line number="113" hits="0"/>
<line number="121" hits="0"/>
<line number="122" hits="0"/>
<line number="124" hits="0"/>
<line number="126" hits="0"/>
<line number="128" hits="0"/>
<line number="133" hits="0"/>
<line number="134" hits="0"/>
<line number="140" hits="0"/>
<line number="141" hits="0"/>
<line number="146" hits="0"/>
<line number="148" hits="0"/>
<line number="164" hits="0"/>
<line number="165" hits="0"/>
<line number="166" hits="0"/>
<line number="167" hits="0"/>
<line number="170" hits="0"/>
<line number="175" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="176,179"/>
<line number="176" hits="0"/>
<line number="179" hits="0"/>
<line number="180" hits="0"/>
<line number="181" hits="0"/>
<line number="183" hits="0"/>
<line number="186" hits="0"/>
<line number="187" hits="0"/>
<line number="189" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="190,196"/>
<line number="190" hits="0"/>
<line number="193" hits="0"/>
<line number="196" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="197,231"/>
<line number="197" hits="0"/>
<line number="212" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="213,214"/>
<line number="213" hits="0"/>
<line number="214" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="215,216"/>
<line number="215" hits="0"/>
<line number="216" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="217,218"/>
<line number="217" hits="0"/>
<line number="218" hits="0"/>
<line number="219" hits="0"/>
<line number="220" hits="0"/>
<line number="223" hits="0"/>
<line number="224" hits="0"/>
<line number="229" hits="0"/>
<line number="230" hits="0"/>
<line number="231" hits="0"/>
<line number="233" hits="0"/>
<line number="249" hits="0"/>
<line number="254" hits="0"/>
<line number="257" hits="0"/>
<line number="265" hits="0"/>
<line number="266" hits="0"/>
<line number="267" hits="0"/>
<line number="268" hits="0"/>
<line number="269" hits="0"/>
<line number="271" hits="0"/>
<line number="275" hits="0"/>
<line number="276" hits="0"/>
<line number="277" hits="0"/>
<line number="278" hits="0"/>
<line number="280" hits="0"/>
<line number="281" hits="0"/>
<line number="283" hits="0"/>
<line number="285" hits="0"/>
<line number="288" hits="0"/>
<line number="289" hits="0"/>
<line number="290" hits="0"/>
<line number="291" hits="0"/>
<line number="294" hits="0"/>
<line number="306" hits="0"/>
<line number="307" hits="0"/>
<line number="308" hits="0"/>
<line number="309" hits="0"/>
<line number="311" hits="0"/>
<line number="312" hits="0"/>
<line number="313" hits="0"/>
<line number="314" hits="0"/>
<line number="315" hits="0"/>
<line number="316" hits="0"/>
<line number="318" hits="0"/>
<line number="319" hits="0"/>
<line number="322" hits="0"/>
<line number="325" hits="0"/>
<line number="335" hits="0"/>
<line number="336" hits="0"/>
<line number="337" hits="0"/>
<line number="338" hits="0"/>
<line number="339" hits="0"/>
<line number="340" hits="0"/>
<line number="341" hits="0"/>
<line number="342" hits="0"/>
<line number="344" hits="0"/>
<line number="348" hits="0"/>
<line number="349" hits="0"/>
<line number="350" hits="0"/>
<line number="351" hits="0"/>
<line number="352" hits="0"/>
<line number="354" hits="0"/>
<line number="355" hits="0"/>
<line number="357" hits="0"/>
<line number="358" hits="0"/>
<line number="361" hits="0"/>
<line number="362" hits="0"/>
<line number="365" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="366,369"/>
<line number="366" hits="0"/>
<line number="369" hits="0"/>
<line number="371" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="372,375"/>
<line number="372" hits="0"/>
<line number="375" hits="0"/>
<line number="377" hits="0"/>
<line number="378" hits="0"/>
<line number="380" hits="0"/>
<line number="381" hits="0"/>
<line number="384" hits="0"/>
<line number="387" hits="0"/>
<line number="400" hits="0"/>
<line number="405" hits="0"/>
<line number="406" hits="0"/>
<line number="407" hits="0"/>
<line number="408" hits="0"/>
<line number="410" hits="0"/>
<line number="411" hits="0"/>
<line number="412" hits="0"/>
<line number="413" hits="0"/>
<line number="414" hits="0"/>
<line number="415" hits="0"/>
<line number="418" hits="0"/>
<line number="421" hits="0"/>
<line number="431" hits="0"/>
<line number="432" hits="0"/>
<line number="433" hits="0"/>
<line number="434" hits="0"/>
<line number="435" hits="0"/>
<line number="436" hits="0"/>
<line number="437" hits="0"/>
<line number="438" hits="0"/>
<line number="440" hits="0"/>
<line number="444" hits="0"/>
<line number="445" hits="0"/>
<line number="446" hits="0"/>
<line number="447" hits="0"/>
<line number="448" hits="0"/>
<line number="450" hits="0"/>
<line number="451" hits="0"/>
<line number="453" hits="0"/>
<line number="454" hits="0"/>
<line number="457" hits="0"/>
<line number="460" hits="0"/>
<line number="465" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="466,469"/>
<line number="466" hits="0"/>
<line number="469" hits="0"/>
<line number="471" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="472,475"/>
<line number="472" hits="0"/>
<line number="475" hits="0"/>
<line number="477" hits="0"/>
<line number="478" hits="0"/>
<line number="480" hits="0"/>
<line number="481" hits="0"/>
<line number="484" hits="0"/>
<line number="487" hits="0"/>
<line number="490" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="491,498"/>
<line number="491" hits="0"/>
<line number="492" hits="0"/>
<line number="493" hits="0"/>
<line number="494" hits="0"/>
<line number="495" hits="0"/>
<line number="498" hits="0"/>
<line number="507" hits="0"/>
<line number="508" hits="0"/>
<line number="509" hits="0"/>
<line number="510" hits="0"/>
<line number="512" hits="0"/>
<line number="513" hits="0"/>
<line number="514" hits="0"/>
<line number="515" hits="0"/>
<line number="516" hits="0"/>
<line number="517" hits="0"/>
<line number="520" hits="0"/>
<line number="523" hits="0"/>
<line number="533" hits="0"/>
<line number="535" hits="0"/>
<line number="536" hits="0"/>
<line number="537" hits="0"/>
<line number="538" hits="0"/>
<line number="539" hits="0"/>
<line number="540" hits="0"/>
<line number="541" hits="0"/>
<line number="543" hits="0"/>
<line number="547" hits="0"/>
<line number="548" hits="0"/>
<line number="549" hits="0"/>
<line number="550" hits="0"/>
<line number="551" hits="0"/>
<line number="552" hits="0"/>
<line number="553" hits="0"/>
<line number="554" hits="0"/>
<line number="555" hits="0"/>
<line number="557" hits="0"/>
<line number="558" hits="0"/>
<line number="560" hits="0"/>
<line number="561" hits="0"/>
<line number="563" hits="0"/>
<line number="564" hits="0"/>
<line number="566" hits="0"/>
<line number="567" hits="0"/>
<line number="570" hits="0"/>
<line number="573" hits="0"/>
<line number="574" hits="0"/>
<line number="575" hits="0"/>
<line number="576" hits="0"/>
<line number="577" hits="0"/>
<line number="580" hits="0"/>
<line number="592" hits="0"/>
<line number="593" hits="0"/>
<line number="594" hits="0"/>
<line number="595" hits="0"/>
<line number="597" hits="0"/>
<line number="598" hits="0"/>
<line number="599" hits="0"/>
<line number="600" hits="0"/>
<line number="602" hits="0"/>
<line number="605" hits="0"/>
<line number="608" hits="0"/>
<line number="622" hits="0"/>
<line number="623" hits="0"/>
<line number="624" hits="0"/>
<line number="625" hits="0"/>
<line number="626" hits="0"/>
<line number="627" hits="0"/>
<line number="628" hits="0"/>
<line number="629" hits="0"/>
<line number="630" hits="0"/>
<line number="631" hits="0"/>
<line number="632" hits="0"/>
<line number="633" hits="0"/>
<line number="635" hits="0"/>
<line number="639" hits="0"/>
<line number="640" hits="0"/>
<line number="641" hits="0"/>
<line number="642" hits="0"/>
<line number="645" hits="0"/>
<line number="646" hits="0"/>
<line number="648" hits="0"/>
<line number="651" hits="0"/>
<line number="654" hits="0"/>
<line number="658" hits="0"/>
<line number="660" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="662,667"/>
<line number="662" hits="0"/>
<line number="663" hits="0"/>
<line number="664" hits="0"/>
<line number="665" hits="0"/>
<line number="666" hits="0"/>
<line number="667" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="669,673"/>
<line number="669" hits="0"/>
<line number="670" hits="0"/>
<line number="673" hits="0"/>
<line number="674" hits="0"/>
<line number="678" hits="0"/>
<line number="679" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="680,682"/>
<line number="680" hits="0"/>
<line number="682" hits="0"/>
<line number="686" hits="0"/>
<line number="687" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="689,698"/>
<line number="689" hits="0"/>
<line number="694" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="695,698"/>
<line number="695" hits="0"/>
<line number="698" hits="0"/>
<line number="700" hits="0"/>
<line number="701" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="702,703"/>
<line number="702" hits="0"/>
<line number="703" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="704,705"/>
<line number="704" hits="0"/>
<line number="705" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="706,708"/>
<line number="706" hits="0"/>
<line number="708" hits="0"/>
<line number="710" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="712,717"/>
<line number="712" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="713,714"/>
<line number="713" hits="0"/>
<line number="714" hits="0"/>
<line number="717" hits="0"/>
<line number="732" hits="0"/>
<line number="733" hits="0"/>
<line number="734" hits="0"/>
<line number="735" hits="0"/>
<line number="737" hits="0"/>
<line number="739" hits="0"/>
<line number="740" hits="0"/>
<line number="741" hits="0"/>
<line number="742" hits="0"/>
<line number="743" hits="0"/>
</lines>
</class>
<class name="tasks.py" filename="models/tasks.py" complexity="0" line-rate="0" branch-rate="1">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="28" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="43" hits="0"/>
<line number="44" hits="0"/>
<line number="46" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="services" line-rate="0.01953" branch-rate="0" complexity="0">
<classes>
<class name="__init__.py" filename="services/__init__.py" complexity="0" line-rate="1" branch-rate="1">
<methods/>
<lines/>
</class>
<class name="auth_service.py" filename="services/auth_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="18" hits="0"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0"/>
<line number="39" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="40,50"/>
<line number="40" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="41,45"/>
<line number="41" hits="0"/>
<line number="45" hits="0"/>
<line number="50" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="51,52"/>
<line number="51" hits="0"/>
<line number="52" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="57,58"/>
<line number="57" hits="0"/>
<line number="58" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="59,61"/>
<line number="59" hits="0"/>
<line number="61" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="62,67"/>
<line number="62" hits="0"/>
<line number="67" hits="0"/>
<line number="68" hits="0"/>
<line number="76" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="77,82"/>
<line number="77" hits="0"/>
<line number="82" hits="0"/>
<line number="92" hits="0"/>
<line number="95" hits="0"/>
<line number="101" hits="0"/>
<line number="104" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="105,108"/>
<line number="105" hits="0"/>
<line number="108" hits="0"/>
<line number="111" hits="0"/>
<line number="112" hits="0"/>
<line number="115" hits="0"/>
<line number="116" hits="0"/>
<line number="118" hits="0"/>
<line number="119" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,120"/>
<line number="120" hits="0"/>
<line number="125" hits="0"/>
<line number="126" hits="0"/>
<line number="128" hits="0"/>
<line number="129" hits="0"/>
<line number="131" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="132,137"/>
<line number="132" hits="0"/>
<line number="137" hits="0"/>
<line number="145" hits="0"/>
<line number="147" hits="0"/>
<line number="155" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="156,161"/>
<line number="156" hits="0"/>
<line number="161" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="162,165"/>
<line number="162" hits="0"/>
<line number="165" hits="0"/>
<line number="167" hits="0"/>
<line number="169" hits="0"/>
<line number="174" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="175,178"/>
<line number="175" hits="0"/>
<line number="178" hits="0"/>
<line number="179" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="180,183"/>
<line number="180" hits="0"/>
<line number="183" hits="0"/>
<line number="188" hits="0"/>
<line number="189" hits="0"/>
<line number="195" hits="0"/>
<line number="198" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="199,203"/>
<line number="199" hits="0"/>
<line number="203" hits="0"/>
<line number="205" hits="0"/>
<line number="213" hits="0"/>
<line number="214" hits="0"/>
<line number="216" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="217,219"/>
<line number="217" hits="0"/>
<line number="219" hits="0"/>
<line number="223" hits="0"/>
<line number="224" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="225,230"/>
<line number="225" hits="0"/>
<line number="230" hits="0"/>
<line number="236" hits="0"/>
<line number="243" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="244,250"/>
<line number="244" hits="0"/>
<line number="247" hits="0"/>
<line number="250" hits="0"/>
<line number="251" hits="0"/>
<line number="252" hits="0"/>
<line number="255" hits="0"/>
<line number="257" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="258,262"/>
<line number="258" hits="0"/>
<line number="262" hits="0"/>
<line number="266" hits="0"/>
<line number="268" hits="0"/>
<line number="269" hits="0"/>
<line number="271" hits="0"/>
<line number="276" hits="0"/>
<line number="277" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="278,280"/>
<line number="278" hits="0"/>
<line number="280" hits="0"/>
<line number="282" hits="0"/>
<line number="283" hits="0"/>
<line number="285" hits="0"/>
<line number="289" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="291,360"/>
<line number="291" hits="0"/>
<line number="296" hits="0"/>
<line number="297" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="298,323"/>
<line number="298" hits="0"/>
<line number="299" hits="0"/>
<line number="300" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="301,313"/>
<line number="301" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="302,303"/>
<line number="302" hits="0"/>
<line number="303" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="306,309"/>
<line number="306" hits="0"/>
<line number="307" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="308,309"/>
<line number="308" hits="0"/>
<line number="309" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="310,313"/>
<line number="310" hits="0"/>
<line number="313" hits="0"/>
<line number="317" hits="0"/>
<line number="318" hits="0"/>
<line number="319" hits="0"/>
<line number="321" hits="0"/>
<line number="323" hits="0"/>
<line number="330" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="332,353"/>
<line number="332" hits="0"/>
<line number="350" hits="0"/>
<line number="353" hits="0"/>
<line number="357" hits="0"/>
<line number="360" hits="0"/>
<line number="363" hits="0"/>
<line number="365" hits="0"/>
<line number="369" hits="0"/>
<line number="376" hits="0"/>
<line number="379" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="380,382"/>
<line number="380" hits="0"/>
<line number="382" hits="0"/>
<line number="384" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="385,401"/>
<line number="385" hits="0"/>
<line number="399" hits="0"/>
<line number="401" hits="0"/>
</lines>
</class>
<class name="chat_service.py" filename="services/chat_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="7" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="20" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="21,24"/>
<line number="21" hits="0"/>
<line number="24" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="25,27"/>
<line number="25" hits="0"/>
<line number="27" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="28,35"/>
<line number="28" hits="0"/>
<line number="35" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="43,44"/>
<line number="43" hits="0"/>
<line number="44" hits="0"/>
<line number="46" hits="0"/>
<line number="55" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="56,58"/>
<line number="56" hits="0"/>
<line number="58" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="59,64"/>
<line number="59" hits="0"/>
<line number="64" hits="0"/>
<line number="65" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="66,69"/>
<line number="66" hits="0"/>
<line number="69" hits="0"/>
<line number="75" hits="0"/>
<line number="76" hits="0"/>
<line number="77" hits="0"/>
<line number="80" hits="0"/>
<line number="81" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="82,106"/>
<line number="82" hits="0"/>
<line number="84" hits="0"/>
<line number="90" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="91,102"/>
<line number="91" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="90,93"/>
<line number="93" hits="0"/>
<line number="95" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="97,100"/>
<line number="97" hits="0"/>
<line number="100" hits="0"/>
<line number="102" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="103,106"/>
<line number="103" hits="0"/>
<line number="106" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="107,109"/>
<line number="107" hits="0"/>
<line number="109" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="110,113"/>
<line number="110" hits="0"/>
<line number="113" hits="0"/>
<line number="117" hits="0"/>
<line number="120" hits="0"/>
<line number="122" hits="0"/>
<line number="123" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="124,129"/>
<line number="124" hits="0"/>
<line number="129" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="130,141"/>
<line number="130" hits="0"/>
<line number="132" hits="0"/>
<line number="141" hits="0"/>
<line number="143" hits="0"/>
<line number="151" hits="0"/>
<line number="152" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="153,154"/>
<line number="153" hits="0"/>
<line number="154" hits="0"/>
<line number="156" hits="0"/>
<line number="164" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="165,170"/>
<line number="165" hits="0"/>
<line number="170" hits="0"/>
<line number="171" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="172,175"/>
<line number="172" hits="0"/>
<line number="175" hits="0"/>
<line number="176" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="177,180"/>
<line number="177" hits="0"/>
<line number="180" hits="0"/>
<line number="181" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="182,197"/>
<line number="182" hits="0"/>
<line number="184" hits="0"/>
<line number="187" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="188,197"/>
<line number="188" hits="0"/>
<line number="195" hits="0"/>
<line number="197" hits="0"/>
<line number="200" hits="0"/>
<line number="208" hits="0"/>
<line number="209" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="210,211"/>
<line number="210" hits="0"/>
<line number="211" hits="0"/>
<line number="213" hits="0"/>
<line number="223" hits="0"/>
<line number="225" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="227,246"/>
<line number="227" hits="0"/>
<line number="228" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="229,231"/>
<line number="229" hits="0"/>
<line number="231" hits="0"/>
<line number="232" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="233,237"/>
<line number="233" hits="0"/>
<line number="237" hits="0"/>
<line number="246" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="247,248"/>
<line number="247" hits="0"/>
<line number="248" hits="0"/>
<line number="255" hits="0"/>
<line number="257" hits="0"/>
<line number="259" hits="0"/>
<line number="261" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="262,265"/>
<line number="262" hits="0"/>
<line number="265" hits="0"/>
<line number="268" hits="0"/>
<line number="270" hits="0"/>
<line number="278" hits="0"/>
<line number="281" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="283,340"/>
<line number="283" hits="0"/>
<line number="284" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="285,304"/>
<line number="285" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="284,286"/>
<line number="286" hits="0"/>
<line number="293" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="294,297"/>
<line number="294" hits="0"/>
<line number="297" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="298,299"/>
<line number="298" hits="0"/>
<line number="299" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="300,302"/>
<line number="300" hits="0"/>
<line number="302" hits="0"/>
<line number="304" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="281,306"/>
<line number="306" hits="0"/>
<line number="309" hits="0"/>
<line number="317" hits="0"/>
<line number="340" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="341,358"/>
<line number="341" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="340,343"/>
<line number="343" hits="0"/>
<line number="358" hits="0"/>
<line number="360" hits="0"/>
<line number="367" hits="0"/>
<line number="369" hits="0"/>
<line number="370" hits="0"/>
<line number="372" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="373,375"/>
<line number="373" hits="0"/>
<line number="375" hits="0"/>
<line number="377" hits="0"/>
<line number="379" hits="0"/>
<line number="380" hits="0"/>
<line number="382" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="384,387"/>
<line number="384" hits="0"/>
<line number="387" hits="0"/>
<line number="388" hits="0"/>
<line number="394" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="395,457"/>
<line number="395" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="396,457"/>
<line number="396" hits="0"/>
<line number="399" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="400,403"/>
<line number="400" hits="0"/>
<line number="403" hits="0"/>
<line number="404" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="405,421"/>
<line number="405" hits="0"/>
<line number="414" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="415,416"/>
<line number="415" hits="0"/>
<line number="416" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="417,419"/>
<line number="417" hits="0"/>
<line number="419" hits="0"/>
<line number="421" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="395,423"/>
<line number="423" hits="0"/>
<line number="425" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="426,438"/>
<line number="426" hits="0"/>
<line number="429" hits="0"/>
<line number="438" hits="0"/>
<line number="440" hits="0"/>
<line number="457" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="458,461"/>
<line number="458" hits="0"/>
<line number="461" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="462,466"/>
<line number="462" hits="0"/>
<line number="466" hits="0"/>
<line number="468" hits="0"/>
<line number="469" hits="0"/>
<line number="473" hits="0"/>
<line number="475" hits="0"/>
<line number="479" hits="0"/>
<line number="486" hits="0"/>
<line number="488" hits="0"/>
<line number="490" hits="0"/>
<line number="491" hits="0"/>
<line number="494" hits="0"/>
<line number="496" hits="0"/>
<line number="497" hits="0"/>
<line number="499" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="500,502"/>
<line number="500" hits="0"/>
<line number="502" hits="0"/>
<line number="509" hits="0"/>
<line number="510" hits="0"/>
<line number="511" hits="0"/>
<line number="516" hits="0"/>
<line number="518" hits="0"/>
<line number="519" hits="0"/>
<line number="524" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="525,528"/>
<line number="525" hits="0"/>
<line number="526" hits="0"/>
<line number="528" hits="0"/>
<line number="532" hits="0"/>
<line number="534" hits="0"/>
<line number="535" hits="0"/>
<line number="536" hits="0"/>
</lines>
</class>
<class name="conversation_persistence_service.py" filename="services/conversation_persistence_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0"/>
<line number="15" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0"/>
<line number="23" hits="0"/>
<line number="25" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="26,34"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="28" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="36" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
<line number="43" hits="0"/>
<line number="44" hits="0"/>
<line number="46" hits="0"/>
<line number="48" hits="0"/>
<line number="49" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="50,52"/>
<line number="50" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="49,51"/>
<line number="51" hits="0"/>
<line number="52" hits="0"/>
<line number="54" hits="0"/>
<line number="56" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="57,58"/>
<line number="57" hits="0"/>
<line number="58" hits="0"/>
<line number="60" hits="0"/>
<line number="62" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="63,64"/>
<line number="63" hits="0"/>
<line number="64" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="65,66"/>
<line number="65" hits="0"/>
<line number="66" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="67,69"/>
<line number="67" hits="0"/>
<line number="69" hits="0"/>
<line number="71" hits="0"/>
<line number="73" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="74,77"/>
<line number="74" hits="0"/>
<line number="77" hits="0"/>
<line number="79" hits="0"/>
<line number="82" hits="0"/>
<line number="84" hits="0"/>
<line number="86" hits="0"/>
<line number="87" hits="0"/>
<line number="89" hits="0"/>
<line number="91" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="92,96"/>
<line number="92" hits="0"/>
<line number="93" hits="0"/>
<line number="94" hits="0"/>
<line number="95" hits="0"/>
<line number="96" hits="0"/>
<line number="98" hits="0"/>
<line number="100" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,101"/>
<line number="101" hits="0"/>
<line number="102" hits="0"/>
<line number="103" hits="0"/>
<line number="105" hits="0"/>
<line number="107" hits="0"/>
<line number="108" hits="0"/>
<line number="110" hits="0"/>
<line number="111" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="112,120"/>
<line number="112" hits="0"/>
<line number="120" hits="0"/>
<line number="130" hits="0"/>
</lines>
</class>
<class name="document_service.py" filename="services/document_service.py" complexity="0" line-rate="0.2083" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="3" hits="1"/>
<line number="4" hits="1"/>
<line number="5" hits="1"/>
<line number="6" hits="1"/>
<line number="7" hits="1"/>
<line number="8" hits="1"/>
<line number="9" hits="1"/>
<line number="10" hits="1"/>
<line number="11" hits="1"/>
<line number="13" hits="1"/>
<line number="15" hits="1"/>
<line number="16" hits="1"/>
<line number="19" hits="1"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="30" hits="1"/>
<line number="37" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="38,40"/>
<line number="38" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
<line number="44" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="45,81"/>
<line number="45" hits="0"/>
<line number="48" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="50,69"/>
<line number="50" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="51,56"/>
<line number="51" hits="0"/>
<line number="52" hits="0"/>
<line number="53" hits="0"/>
<line number="56" hits="0"/>
<line number="57" hits="0"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="61" hits="0"/>
<line number="63" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="44,64"/>
<line number="64" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="69" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="70,77"/>
<line number="70" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="71,72"/>
<line number="71" hits="0"/>
<line number="72" hits="0"/>
<line number="73" hits="0"/>
<line number="77" hits="0"/>
<line number="78" hits="0"/>
<line number="81" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="82,84"/>
<line number="82" hits="0"/>
<line number="84" hits="0"/>
<line number="87" hits="1"/>
<line number="88" hits="1"/>
<line number="89" hits="1"/>
<line number="90" hits="1"/>
<line number="91" hits="1"/>
<line number="92" hits="1"/>
<line number="94" hits="1"/>
<line number="96" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="97,113"/>
<line number="97" hits="0"/>
<line number="98" hits="0"/>
<line number="100" hits="0"/>
<line number="103" hits="0"/>
<line number="104" hits="0"/>
<line number="106" hits="0"/>
<line number="107" hits="0"/>
<line number="108" hits="0"/>
<line number="109" hits="0"/>
<line number="110" hits="0"/>
<line number="111" hits="0"/>
<line number="112" hits="0"/>
<line number="113" hits="0"/>
<line number="116" hits="1"/>
<line number="125" hits="0"/>
<line number="126" hits="0"/>
<line number="127" hits="0"/>
<line number="129" hits="0"/>
<line number="131" hits="0"/>
<line number="132" hits="0"/>
<line number="133" hits="0"/>
<line number="134" hits="0"/>
<line number="135" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="136,137"/>
<line number="136" hits="0"/>
<line number="137" hits="0"/>
<line number="138" hits="0"/>
<line number="140" hits="0"/>
<line number="142" hits="0"/>
<line number="146" hits="0"/>
<line number="147" hits="0"/>
<line number="148" hits="0"/>
<line number="149" hits="0"/>
<line number="152" hits="0"/>
<line number="153" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="154,157"/>
<line number="154" hits="0"/>
<line number="157" hits="0"/>
<line number="158" hits="0"/>
<line number="159" hits="0"/>
<line number="170" hits="0"/>
<line number="172" hits="1"/>
<line number="174" hits="0"/>
<line number="176" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="177,180"/>
<line number="177" hits="0"/>
<line number="180" hits="0"/>
<line number="181" hits="0"/>
<line number="182" hits="0"/>
<line number="183" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="184,185"/>
<line number="184" hits="0"/>
<line number="185" hits="0"/>
<line number="186" hits="0"/>
<line number="189" hits="0"/>
<line number="190" hits="0"/>
<line number="191" hits="0"/>
<line number="192" hits="0"/>
<line number="195" hits="0"/>
<line number="196" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="197,199"/>
<line number="197" hits="0"/>
<line number="199" hits="0"/>
<line number="201" hits="0"/>
</lines>
</class>
<class name="flows_service.py" filename="services/flows_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="28" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="34" hits="0"/>
<line number="36" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="43" hits="0"/>
<line number="53" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="54,57"/>
<line number="54" hits="0"/>
<line number="57" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="58,65"/>
<line number="58" hits="0"/>
<line number="59" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="60,63"/>
<line number="60" hits="0"/>
<line number="63" hits="0"/>
<line number="65" hits="0"/>
<line number="67" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="68,72"/>
<line number="68" hits="0"/>
<line number="69" hits="0"/>
<line number="72" hits="0"/>
<line number="73" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="74,98"/>
<line number="74" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="75,77"/>
<line number="75" hits="0"/>
<line number="77" hits="0"/>
<line number="79" hits="0"/>
<line number="80" hits="0"/>
<line number="81" hits="0"/>
<line number="84" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="73,86"/>
<line number="86" hits="0"/>
<line number="87" hits="0"/>
<line number="88" hits="0"/>
<line number="90" hits="0"/>
<line number="91" hits="0"/>
<line number="92" hits="0"/>
<line number="94" hits="0"/>
<line number="95" hits="0"/>
<line number="96" hits="0"/>
<line number="98" hits="0"/>
<line number="99" hits="0"/>
<line number="101" hits="0"/>
<line number="110" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="111,114"/>
<line number="111" hits="0"/>
<line number="114" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="115,116"/>
<line number="115" hits="0"/>
<line number="116" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="117,118"/>
<line number="117" hits="0"/>
<line number="118" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="119,120"/>
<line number="119" hits="0"/>
<line number="120" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="121,123"/>
<line number="121" hits="0"/>
<line number="123" hits="0"/>
<line number="127" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="128,131"/>
<line number="128" hits="0"/>
<line number="131" hits="0"/>
<line number="132" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="133,136"/>
<line number="133" hits="0"/>
<line number="136" hits="0"/>
<line number="137" hits="0"/>
<line number="138" hits="0"/>
<line number="139" hits="0"/>
<line number="142" hits="0"/>
<line number="143" hits="0"/>
<line number="144" hits="0"/>
<line number="145" hits="0"/>
<line number="148" hits="0"/>
<line number="149" hits="0"/>
<line number="153" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="154,232"/>
<line number="154" hits="0"/>
<line number="155" hits="0"/>
<line number="162" hits="0"/>
<line number="163" hits="0"/>
<line number="166" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="167,214"/>
<line number="167" hits="0"/>
<line number="171" hits="0"/>
<line number="174" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="175,187"/>
<line number="175" hits="0"/>
<line number="178" hits="0"/>
<line number="180" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="181,187"/>
<line number="181" hits="0"/>
<line number="187" hits="0"/>
<line number="194" hits="0"/>
<line number="195" hits="0"/>
<line number="205" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="206,210"/>
<line number="206" hits="0"/>
<line number="210" hits="0"/>
<line number="214" hits="0"/>
<line number="218" hits="0"/>
<line number="219" hits="0"/>
<line number="225" hits="0"/>
<line number="232" hits="0"/>
<line number="233" hits="0"/>
<line number="238" hits="0"/>
<line number="242" hits="0"/>
<line number="243" hits="0"/>
<line number="244" hits="0"/>
<line number="246" hits="0"/>
<line number="256" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="257,259"/>
<line number="257" hits="0"/>
<line number="259" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="260,266"/>
<line number="260" hits="0"/>
<line number="261" hits="0"/>
<line number="266" hits="0"/>
<line number="268" hits="0"/>
<line number="272" hits="0"/>
<line number="275" hits="0"/>
<line number="306" hits="0"/>
<line number="309" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="310,325"/>
<line number="310" hits="0"/>
<line number="311" hits="0"/>
<line number="314" hits="0"/>
<line number="315" hits="0"/>
<line number="316" hits="0"/>
<line number="317" hits="0"/>
<line number="318" hits="0"/>
<line number="319" hits="0"/>
<line number="325" hits="0"/>
<line number="327" hits="0"/>
<line number="334" hits="0"/>
<line number="335" hits="0"/>
<line number="336" hits="0"/>
<line number="341" hits="0"/>
<line number="343" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="344,347"/>
<line number="344" hits="0"/>
<line number="345" hits="0"/>
<line number="346" hits="0"/>
<line number="347" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="348,352"/>
<line number="348" hits="0"/>
<line number="349" hits="0"/>
<line number="350" hits="0"/>
<line number="352" hits="0"/>
<line number="355" hits="0"/>
<line number="356" hits="0"/>
<line number="357" hits="0"/>
<line number="360" hits="0"/>
<line number="361" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="362,366"/>
<line number="362" hits="0"/>
<line number="366" hits="0"/>
<line number="367" hits="0"/>
<line number="370" hits="0"/>
<line number="371" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="372,376"/>
<line number="372" hits="0"/>
<line number="376" hits="0"/>
<line number="377" hits="0"/>
<line number="380" hits="0"/>
<line number="381" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="382,386"/>
<line number="382" hits="0"/>
<line number="386" hits="0"/>
<line number="387" hits="0"/>
<line number="389" hits="0"/>
<line number="390" hits="0"/>
<line number="392" hits="0"/>
<line number="396" hits="0"/>
<line number="397" hits="0"/>
<line number="398" hits="0"/>
<line number="399" hits="0"/>
<line number="400" hits="0"/>
<line number="402" hits="0"/>
<line number="403" hits="0"/>
<line number="404" hits="0"/>
<line number="407" hits="0"/>
<line number="408" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="409,412"/>
<line number="409" hits="0"/>
<line number="412" hits="0"/>
<line number="413" hits="0"/>
<line number="416" hits="0"/>
<line number="419" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="420,436"/>
<line number="420" hits="0"/>
<line number="421" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="423,436"/>
<line number="423" hits="0"/>
<line number="426" hits="0"/>
<line number="427" hits="0"/>
<line number="430" hits="0"/>
<line number="431" hits="0"/>
<line number="436" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="437,451"/>
<line number="437" hits="0"/>
<line number="438" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="440,451"/>
<line number="440" hits="0"/>
<line number="443" hits="0"/>
<line number="444" hits="0"/>
<line number="447" hits="0"/>
<line number="448" hits="0"/>
<line number="451" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="452,465"/>
<line number="452" hits="0"/>
<line number="453" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="455,465"/>
<line number="455" hits="0"/>
<line number="458" hits="0"/>
<line number="459" hits="0"/>
<line number="462" hits="0"/>
<line number="463" hits="0"/>
<line number="465" hits="0"/>
<line number="466" hits="0"/>
<line number="467" hits="0"/>
<line number="468" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="469,470"/>
<line number="469" hits="0"/>
<line number="470" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="471,472"/>
<line number="471" hits="0"/>
<line number="472" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="473,476"/>
<line number="473" hits="0"/>
<line number="476" hits="0"/>
<line number="479" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="480,490"/>
<line number="480" hits="0"/>
<line number="483" hits="0"/>
<line number="490" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="491,502"/>
<line number="491" hits="0"/>
<line number="495" hits="0"/>
<line number="502" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="503,514"/>
<line number="503" hits="0"/>
<line number="507" hits="0"/>
<line number="514" hits="0"/>
<line number="517" hits="0"/>
<line number="521" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="522,526"/>
<line number="522" hits="0"/>
<line number="526" hits="0"/>
<line number="533" hits="0"/>
<line number="538" hits="0"/>
<line number="540" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="541,552"/>
<line number="541" hits="0"/>
<line number="542" hits="0"/>
<line number="545" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="546,549"/>
<line number="546" hits="0"/>
<line number="549" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="540,550"/>
<line number="550" hits="0"/>
<line number="552" hits="0"/>
<line number="554" hits="0"/>
<line number="565" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="566,569"/>
<line number="566" hits="0"/>
<line number="569" hits="0"/>
<line number="571" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="572,576"/>
<line number="572" hits="0"/>
<line number="576" hits="0"/>
<line number="579" hits="0"/>
<line number="580" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="581,585"/>
<line number="581" hits="0"/>
<line number="585" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="586,590"/>
<line number="586" hits="0"/>
<line number="587" hits="0"/>
<line number="590" hits="0"/>
<line number="591" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="592,596"/>
<line number="592" hits="0"/>
<line number="593" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="594,600"/>
<line number="594" hits="0"/>
<line number="596" hits="0"/>
<line number="597" hits="0"/>
<line number="600" hits="0"/>
<line number="604" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,605"/>
<line number="605" hits="0"/>
<line number="609" hits="0"/>
<line number="611" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="612,615"/>
<line number="612" hits="0"/>
<line number="615" hits="0"/>
<line number="617" hits="0"/>
<line number="620" hits="0"/>
<line number="622" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="623,626"/>
<line number="623" hits="0"/>
<line number="626" hits="0"/>
<line number="628" hits="0"/>
<line number="631" hits="0"/>
<line number="633" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="634,636"/>
<line number="634" hits="0"/>
<line number="636" hits="0"/>
<line number="637" hits="0"/>
<line number="640" hits="0"/>
<line number="642" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="643,644"/>
<line number="643" hits="0"/>
<line number="644" hits="0"/>
<line number="651" hits="0"/>
<line number="653" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="654,655"/>
<line number="654" hits="0"/>
<line number="655" hits="0"/>
<line number="662" hits="0"/>
<line number="664" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="665,668"/>
<line number="665" hits="0"/>
<line number="668" hits="0"/>
<line number="670" hits="0"/>
<line number="673" hits="0"/>
<line number="675" hits="0"/>
<line number="676" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="677,680"/>
<line number="677" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="676,678"/>
<line number="678" hits="0"/>
<line number="679" hits="0"/>
<line number="680" hits="0"/>
<line number="682" hits="0"/>
<line number="703" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="704,706"/>
<line number="704" hits="0"/>
<line number="706" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="707,709"/>
<line number="707" hits="0"/>
<line number="709" hits="0"/>
<line number="710" hits="0"/>
<line number="715" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="716,736"/>
<line number="716" hits="0"/>
<line number="736" hits="0"/>
<line number="740" hits="0"/>
<line number="743" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="744,767"/>
<line number="744" hits="0"/>
<line number="745" hits="0"/>
<line number="754" hits="0"/>
<line number="755" hits="0"/>
<line number="758" hits="0"/>
<line number="759" hits="0"/>
<line number="760" hits="0"/>
<line number="761" hits="0"/>
<line number="767" hits="0"/>
<line number="769" hits="0"/>
<line number="779" hits="0"/>
<line number="780" hits="0"/>
<line number="784" hits="0"/>
<line number="789" hits="0"/>
<line number="791" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="792,793"/>
<line number="792" hits="0"/>
<line number="793" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="794,795"/>
<line number="794" hits="0"/>
<line number="795" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="797,799"/>
<line number="797" hits="0"/>
<line number="799" hits="0"/>
<line number="801" hits="0"/>
<line number="812" hits="0"/>
<line number="813" hits="0"/>
<line number="816" hits="0"/>
<line number="818" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="819,823"/>
<line number="819" hits="0"/>
<line number="823" hits="0"/>
<line number="825" hits="0"/>
<line number="828" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="829,837"/>
<line number="829" hits="0"/>
<line number="830" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="831,837"/>
<line number="831" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="834,837"/>
<line number="834" hits="0"/>
<line number="837" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="838,846"/>
<line number="838" hits="0"/>
<line number="839" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="840,846"/>
<line number="840" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="843,846"/>
<line number="843" hits="0"/>
<line number="846" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="847,854"/>
<line number="847" hits="0"/>
<line number="854" hits="0"/>
<line number="857" hits="0"/>
<line number="861" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="862,866"/>
<line number="862" hits="0"/>
<line number="866" hits="0"/>
<line number="873" hits="0"/>
<line number="881" hits="0"/>
<line number="883" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="884,886"/>
<line number="884" hits="0"/>
<line number="886" hits="0"/>
<line number="889" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="890,893"/>
<line number="890" hits="0"/>
<line number="891" hits="0"/>
<line number="892" hits="0"/>
<line number="893" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="894,899"/>
<line number="894" hits="0"/>
<line number="895" hits="0"/>
<line number="896" hits="0"/>
<line number="899" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="900,906"/>
<line number="900" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="902,906"/>
<line number="902" hits="0"/>
<line number="903" hits="0"/>
<line number="904" hits="0"/>
<line number="906" hits="0"/>
</lines>
</class>
<class name="knowledge_filter_service.py" filename="services/knowledge_filter_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="3" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="14" hits="0"/>
<line number="16" hits="0"/>
<line number="21" hits="0"/>
<line number="28" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="30,36"/>
<line number="30" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="36" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="41" hits="0"/>
<line number="45" hits="0"/>
<line number="47" hits="0"/>
<line number="51" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="53,79"/>
<line number="53" hits="0"/>
<line number="79" hits="0"/>
<line number="94" hits="0"/>
<line number="99" hits="0"/>
<line number="100" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="101,105"/>
<line number="101" hits="0"/>
<line number="102" hits="0"/>
<line number="103" hits="0"/>
<line number="105" hits="0"/>
<line number="107" hits="0"/>
<line number="108" hits="0"/>
<line number="110" hits="0"/>
<line number="114" hits="0"/>
<line number="116" hits="0"/>
<line number="120" hits="0"/>
<line number="124" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="125,128"/>
<line number="125" hits="0"/>
<line number="126" hits="0"/>
<line number="128" hits="0"/>
<line number="130" hits="0"/>
<line number="131" hits="0"/>
<line number="133" hits="0"/>
<line number="141" hits="0"/>
<line number="143" hits="0"/>
<line number="148" hits="0"/>
<line number="155" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="158,167"/>
<line number="158" hits="0"/>
<line number="159" hits="0"/>
<line number="160" hits="0"/>
<line number="161" hits="0"/>
<line number="162" hits="0"/>
<line number="165" hits="0"/>
<line number="167" hits="0"/>
<line number="169" hits="0"/>
<line number="170" hits="0"/>
<line number="172" hits="0"/>
<line number="176" hits="0"/>
<line number="178" hits="0"/>
<line number="182" hits="0"/>
<line number="188" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="190,199"/>
<line number="190" hits="0"/>
<line number="191" hits="0"/>
<line number="192" hits="0"/>
<line number="193" hits="0"/>
<line number="194" hits="0"/>
<line number="199" hits="0"/>
<line number="201" hits="0"/>
<line number="202" hits="0"/>
<line number="203" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="204,208"/>
<line number="204" hits="0"/>
<line number="208" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="209,214"/>
<line number="209" hits="0"/>
<line number="214" hits="0"/>
<line number="219" hits="0"/>
<line number="227" hits="0"/>
<line number="228" hits="0"/>
<line number="233" hits="0"/>
<line number="236" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="237,239"/>
<line number="237" hits="0"/>
<line number="239" hits="0"/>
<line number="242" hits="0"/>
<line number="243" hits="0"/>
<line number="246" hits="0"/>
<line number="255" hits="0"/>
<line number="262" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="263,265"/>
<line number="263" hits="0"/>
<line number="265" hits="0"/>
<line number="267" hits="0"/>
<line number="268" hits="0"/>
<line number="270" hits="0"/>
<line number="278" hits="0"/>
<line number="279" hits="0"/>
<line number="284" hits="0"/>
<line number="287" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="288,290"/>
<line number="288" hits="0"/>
<line number="290" hits="0"/>
<line number="293" hits="0"/>
<line number="294" hits="0"/>
<line number="300" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="301,304"/>
<line number="301" hits="0"/>
<line number="304" hits="0"/>
<line number="306" hits="0"/>
<line number="313" hits="0"/>
<line number="317" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="318,320"/>
<line number="318" hits="0"/>
<line number="320" hits="0"/>
<line number="322" hits="0"/>
<line number="323" hits="0"/>
<line number="325" hits="0"/>
<line number="329" hits="0"/>
<line number="330" hits="0"/>
<line number="333" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="334,336"/>
<line number="334" hits="0"/>
<line number="336" hits="0"/>
<line number="337" hits="0"/>
<line number="339" hits="0"/>
<line number="346" hits="0"/>
<line number="347" hits="0"/>
</lines>
</class>
<class name="langflow_file_service.py" filename="services/langflow_file_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="6" hits="0"/>
<line number="9" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="26" hits="0"/>
<line number="31" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="32,38"/>
<line number="32" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="41" hits="0"/>
<line number="44" hits="0"/>
<line number="45" hits="0"/>
<line number="46" hits="0"/>
<line number="51" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="52,58"/>
<line number="52" hits="0"/>
<line number="58" hits="0"/>
<line number="60" hits="0"/>
<line number="76" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="77,80"/>
<line number="77" hits="0"/>
<line number="78" hits="0"/>
<line number="80" hits="0"/>
<line number="85" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="86,89"/>
<line number="86" hits="0"/>
<line number="89" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="90,95"/>
<line number="90" hits="0"/>
<line number="95" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="97,100"/>
<line number="97" hits="0"/>
<line number="98" hits="0"/>
<line number="100" hits="0"/>
<line number="103" hits="0"/>
<line number="104" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="105,106"/>
<line number="105" hits="0"/>
<line number="106" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="107,108"/>
<line number="107" hits="0"/>
<line number="108" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="109,110"/>
<line number="109" hits="0"/>
<line number="110" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="111,112"/>
<line number="111" hits="0"/>
<line number="112" hits="0"/>
<line number="121" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="122,124"/>
<line number="122" hits="0"/>
<line number="123" hits="0"/>
<line number="124" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="125,127"/>
<line number="125" hits="0"/>
<line number="127" hits="0"/>
<line number="136" hits="0"/>
<line number="140" hits="0"/>
<line number="141" hits="0"/>
<line number="143" hits="0"/>
<line number="153" hits="0"/>
<line number="154" hits="0"/>
<line number="155" hits="0"/>
<line number="161" hits="0"/>
<line number="164" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="165,171"/>
<line number="165" hits="0"/>
<line number="171" hits="0"/>
<line number="172" hits="0"/>
<line number="173" hits="0"/>
<line number="174" hits="0"/>
<line number="175" hits="0"/>
<line number="181" hits="0"/>
<line number="182" hits="0"/>
<line number="184" hits="0"/>
<line number="212" hits="0"/>
<line number="215" hits="0"/>
<line number="216" hits="0"/>
<line number="217" hits="0"/>
<line number="224" hits="0"/>
<line number="225" hits="0"/>
<line number="228" hits="0"/>
<line number="231" hits="0"/>
<line number="232" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="233,236"/>
<line number="233" hits="0"/>
<line number="236" hits="0"/>
<line number="238" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="239,276"/>
<line number="239" hits="0"/>
<line number="244" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="249,263"/>
<line number="249" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="250,251"/>
<line number="250" hits="0"/>
<line number="251" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="252,255"/>
<line number="252" hits="0"/>
<line number="255" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="256,259"/>
<line number="256" hits="0"/>
<line number="259" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="260,263"/>
<line number="260" hits="0"/>
<line number="263" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="264,270"/>
<line number="264" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="265,266"/>
<line number="265" hits="0"/>
<line number="266" hits="0"/>
<line number="270" hits="0"/>
<line number="276" hits="0"/>
<line number="277" hits="0"/>
<line number="288" hits="0"/>
<line number="289" hits="0"/>
<line number="290" hits="0"/>
<line number="295" hits="0"/>
<line number="298" hits="0"/>
<line number="299" hits="0"/>
<line number="300" hits="0"/>
<line number="302" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="303,324"/>
<line number="303" hits="0"/>
<line number="304" hits="0"/>
<line number="308" hits="0"/>
<line number="309" hits="0"/>
<line number="310" hits="0"/>
<line number="311" hits="0"/>
<line number="312" hits="0"/>
<line number="313" hits="0"/>
<line number="317" hits="0"/>
<line number="324" hits="0"/>
<line number="331" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="332,338"/>
<line number="332" hits="0"/>
<line number="333" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="334,335"/>
<line number="334" hits="0"/>
<line number="335" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="336,338"/>
<line number="336" hits="0"/>
<line number="338" hits="0"/>
</lines>
</class>
<class name="langflow_history_service.py" filename="services/langflow_history_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="6" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="19" hits="0"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="24,26"/>
<line number="24" hits="0"/>
<line number="26" hits="0"/>
<line number="32" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="33,37"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
<line number="44" hits="0"/>
<line number="46" hits="0"/>
<line number="47" hits="0"/>
<line number="56" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="57,61"/>
<line number="57" hits="0"/>
<line number="59" hits="0"/>
<line number="61" hits="0"/>
<line number="62" hits="0"/>
<line number="64" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="68" hits="0"/>
<line number="70" hits="0"/>
<line number="72" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="73,122"/>
<line number="73" hits="0"/>
<line number="75" hits="0"/>
<line number="91" hits="0"/>
<line number="92" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="93,116"/>
<line number="93" hits="0"/>
<line number="94" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="95,112"/>
<line number="95" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="94,96"/>
<line number="96" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="94,97"/>
<line number="97" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="96,99"/>
<line number="99" hits="0"/>
<line number="110" hits="0"/>
<line number="112" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="113,116"/>
<line number="113" hits="0"/>
<line number="114" hits="0"/>
<line number="116" hits="0"/>
<line number="118" hits="0"/>
<line number="119" hits="0"/>
<line number="120" hits="0"/>
<line number="122" hits="0"/>
<line number="124" hits="0"/>
<line number="129" hits="0"/>
<line number="131" hits="0"/>
<line number="133" hits="0"/>
<line number="134" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="135,155"/>
<line number="135" hits="0"/>
<line number="136" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="134,138"/>
<line number="138" hits="0"/>
<line number="139" hits="0"/>
<line number="141" hits="0"/>
<line number="152" hits="0"/>
<line number="155" hits="0"/>
<line number="157" hits="0"/>
<line number="163" hits="0"/>
<line number="164" hits="0"/>
<line number="165" hits="0"/>
<line number="172" hits="0"/>
</lines>
</class>
<class name="langflow_mcp_service.py" filename="services/langflow_mcp_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="7" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="22,23"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0"/>
<line number="31" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="38" hits="0"/>
<line number="44" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="45,52"/>
<line number="45" hits="0"/>
<line number="52" hits="0"/>
<line number="53" hits="0"/>
<line number="54" hits="0"/>
<line number="55" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="56,66"/>
<line number="56" hits="0"/>
<line number="57" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="58,64"/>
<line number="58" hits="0"/>
<line number="59" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="60,62"/>
<line number="60" hits="0"/>
<line number="61" hits="0"/>
<line number="62" hits="0"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="66" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="68,74"/>
<line number="68" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="69,72"/>
<line number="69" hits="0"/>
<line number="72" hits="0"/>
<line number="74" hits="0"/>
<line number="80" hits="0"/>
<line number="82" hits="0"/>
<line number="88" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="89,91"/>
<line number="89" hits="0"/>
<line number="91" hits="0"/>
<line number="93" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="94,123"/>
<line number="94" hits="0"/>
<line number="96" hits="0"/>
<line number="97" hits="0"/>
<line number="98" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="99,109"/>
<line number="99" hits="0"/>
<line number="100" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="101,107"/>
<line number="101" hits="0"/>
<line number="102" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="103,105"/>
<line number="103" hits="0"/>
<line number="104" hits="0"/>
<line number="105" hits="0"/>
<line number="106" hits="0"/>
<line number="107" hits="0"/>
<line number="109" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="111,117"/>
<line number="111" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="112,115"/>
<line number="112" hits="0"/>
<line number="115" hits="0"/>
<line number="117" hits="0"/>
<line number="123" hits="0"/>
<line number="125" hits="0"/>
<line number="130" hits="0"/>
<line number="131" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="132,135"/>
<line number="132" hits="0"/>
<line number="135" hits="0"/>
<line number="136" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="137,144"/>
<line number="137" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="138,139"/>
<line number="138" hits="0"/>
<line number="139" hits="0"/>
<line number="140" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="141,142"/>
<line number="141" hits="0"/>
<line number="142" hits="0"/>
<line number="144" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="145,147"/>
<line number="145" hits="0"/>
<line number="147" hits="0"/>
<line number="148" hits="0"/>
<line number="149" hits="0"/>
<line number="150" hits="0"/>
<line number="152" hits="0"/>
<line number="153" hits="0"/>
<line number="158" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="159,167"/>
<line number="159" hits="0"/>
<line number="165" hits="0"/>
<line number="167" hits="0"/>
<line number="173" hits="0"/>
<line number="174" hits="0"/>
<line number="175" hits="0"/>
<line number="180" hits="0"/>
<line number="182" hits="0"/>
<line number="187" hits="0"/>
<line number="188" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="189,191"/>
<line number="189" hits="0"/>
<line number="191" hits="0"/>
<line number="192" hits="0"/>
<line number="193" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="194,203"/>
<line number="194" hits="0"/>
<line number="195" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="196,197"/>
<line number="196" hits="0"/>
<line number="197" hits="0"/>
<line number="198" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="199,201"/>
<line number="199" hits="0"/>
<line number="201" hits="0"/>
<line number="203" hits="0"/>
<line number="204" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="205,207"/>
<line number="205" hits="0"/>
<line number="207" hits="0"/>
<line number="208" hits="0"/>
<line number="210" hits="0"/>
<line number="212" hits="0"/>
<line number="213" hits="0"/>
<line number="214" hits="0"/>
<line number="215" hits="0"/>
<line number="216" hits="0"/>
<line number="218" hits="0"/>
<line number="219" hits="0"/>
<line number="224" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="225,232"/>
<line number="225" hits="0"/>
<line number="230" hits="0"/>
<line number="232" hits="0"/>
<line number="238" hits="0"/>
<line number="239" hits="0"/>
<line number="240" hits="0"/>
<line number="245" hits="0"/>
<line number="247" hits="0"/>
<line number="252" hits="0"/>
<line number="253" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="254,256"/>
<line number="254" hits="0"/>
<line number="256" hits="0"/>
<line number="257" hits="0"/>
<line number="258" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="259,268"/>
<line number="259" hits="0"/>
<line number="260" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="261,262"/>
<line number="261" hits="0"/>
<line number="262" hits="0"/>
<line number="263" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="264,266"/>
<line number="264" hits="0"/>
<line number="266" hits="0"/>
<line number="268" hits="0"/>
<line number="269" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="270,272"/>
<line number="270" hits="0"/>
<line number="272" hits="0"/>
<line number="273" hits="0"/>
</lines>
</class>
<class name="models_service.py" filename="services/models_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="6" hits="0"/>
<line number="9" hits="0"/>
<line number="12" hits="0"/>
<line number="24" hits="0"/>
<line number="45" hits="0"/>
<line number="46" hits="0"/>
<line number="48" hits="0"/>
<line number="50" hits="0"/>
<line number="51" hits="0"/>
<line number="56" hits="0"/>
<line number="57" hits="0"/>
<line number="61" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="62,105"/>
<line number="62" hits="0"/>
<line number="63" hits="0"/>
<line number="66" hits="0"/>
<line number="67" hits="0"/>
<line number="69" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="70,93"/>
<line number="70" hits="0"/>
<line number="73" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="74,83"/>
<line number="74" hits="0"/>
<line number="83" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="69,84"/>
<line number="84" hits="0"/>
<line number="93" hits="0"/>
<line number="96" hits="0"/>
<line number="100" hits="0"/>
<line number="105" hits="0"/>
<line number="106" hits="0"/>
<line number="110" hits="0"/>
<line number="111" hits="0"/>
<line number="112" hits="0"/>
<line number="114" hits="0"/>
<line number="118" hits="0"/>
<line number="120" hits="0"/>
<line number="123" hits="0"/>
<line number="124" hits="0"/>
<line number="127" hits="0"/>
<line number="128" hits="0"/>
<line number="129" hits="0"/>
<line number="130" hits="0"/>
<line number="131" hits="0"/>
<line number="133" hits="0"/>
<line number="135" hits="0"/>
<line number="136" hits="0"/>
<line number="137" hits="0"/>
<line number="139" hits="0"/>
<line number="142" hits="0"/>
<line number="143" hits="0"/>
<line number="145" hits="0"/>
<line number="147" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="148,204"/>
<line number="148" hits="0"/>
<line number="150" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="151,153"/>
<line number="151" hits="0"/>
<line number="153" hits="0"/>
<line number="156" hits="0"/>
<line number="157" hits="0"/>
<line number="158" hits="0"/>
<line number="161" hits="0"/>
<line number="162" hits="0"/>
<line number="164" hits="0"/>
<line number="165" hits="0"/>
<line number="170" hits="0"/>
<line number="171" hits="0"/>
<line number="174" hits="0"/>
<line number="179" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="181,188"/>
<line number="181" hits="0"/>
<line number="188" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="147,190"/>
<line number="190" hits="0"/>
<line number="197" hits="0"/>
<line number="198" hits="0"/>
<line number="201" hits="0"/>
<line number="204" hits="0"/>
<line number="207" hits="0"/>
<line number="211" hits="0"/>
<line number="214" hits="0"/>
<line number="216" hits="0"/>
<line number="220" hits="0"/>
<line number="225" hits="0"/>
<line number="226" hits="0"/>
<line number="227" hits="0"/>
<line number="229" hits="0"/>
<line number="233" hits="0"/>
<line number="235" hits="0"/>
<line number="238" hits="0"/>
<line number="241" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="242,243"/>
<line number="242" hits="0"/>
<line number="243" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="244,246"/>
<line number="244" hits="0"/>
<line number="246" hits="0"/>
<line number="248" hits="0"/>
<line number="249" hits="0"/>
<line number="251" hits="0"/>
<line number="253" hits="0"/>
<line number="257" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="258,260"/>
<line number="258" hits="0"/>
<line number="260" hits="0"/>
<line number="264" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="265,281"/>
<line number="265" hits="0"/>
<line number="266" hits="0"/>
<line number="268" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="269,281"/>
<line number="269" hits="0"/>
<line number="270" hits="0"/>
<line number="272" hits="0"/>
<line number="281" hits="0"/>
<line number="285" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="286,288"/>
<line number="286" hits="0"/>
<line number="288" hits="0"/>
<line number="292" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="293,308"/>
<line number="293" hits="0"/>
<line number="294" hits="0"/>
<line number="296" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="297,308"/>
<line number="297" hits="0"/>
<line number="298" hits="0"/>
<line number="300" hits="0"/>
<line number="308" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="309,311"/>
<line number="309" hits="0"/>
<line number="311" hits="0"/>
<line number="316" hits="0"/>
<line number="317" hits="0"/>
<line number="318" hits="0"/>
</lines>
</class>
<class name="monitor_service.py" filename="services/monitor_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="8" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="16" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="35" hits="0"/>
<line number="43" hits="0"/>
<line number="107" hits="0"/>
<line number="111" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="112,120"/>
<line number="112" hits="0"/>
<line number="120" hits="0"/>
<line number="122" hits="0"/>
<line number="123" hits="0"/>
<line number="125" hits="0"/>
<line number="129" hits="0"/>
<line number="130" hits="0"/>
<line number="134" hits="0"/>
<line number="138" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="139,141"/>
<line number="139" hits="0"/>
<line number="141" hits="0"/>
<line number="143" hits="0"/>
<line number="144" hits="0"/>
<line number="146" hits="0"/>
<line number="150" hits="0"/>
<line number="151" hits="0"/>
<line number="155" hits="0"/>
<line number="159" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="160,162"/>
<line number="160" hits="0"/>
<line number="162" hits="0"/>
<line number="164" hits="0"/>
<line number="165" hits="0"/>
<line number="167" hits="0"/>
<line number="171" hits="0"/>
<line number="172" hits="0"/>
<line number="177" hits="0"/>
<line number="185" hits="0"/>
<line number="189" hits="0"/>
<line number="190" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="191,195"/>
<line number="191" hits="0"/>
<line number="192" hits="0"/>
<line number="193" hits="0"/>
<line number="195" hits="0"/>
<line number="197" hits="0"/>
<line number="198" hits="0"/>
<line number="201" hits="0"/>
<line number="203" hits="0"/>
<line number="207" hits="0"/>
<line number="208" hits="0"/>
<line number="213" hits="0"/>
<line number="228" hits="0"/>
<line number="232" hits="0"/>
<line number="233" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="234,238"/>
<line number="234" hits="0"/>
<line number="235" hits="0"/>
<line number="236" hits="0"/>
<line number="238" hits="0"/>
<line number="240" hits="0"/>
<line number="241" hits="0"/>
<line number="244" hits="0"/>
<line number="246" hits="0"/>
<line number="250" hits="0"/>
<line number="252" hits="0"/>
<line number="259" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="260,267"/>
<line number="260" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="259,264"/>
<line number="264" hits="0"/>
<line number="267" hits="0"/>
<line number="281" hits="0"/>
<line number="285" hits="0"/>
<line number="287" hits="0"/>
<line number="288" hits="0"/>
<line number="290" hits="0"/>
<line number="297" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="299,300"/>
<line number="299" hits="0"/>
<line number="300" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="302,305"/>
<line number="302" hits="0"/>
<line number="305" hits="0"/>
</lines>
</class>
<class name="search_service.py" filename="services/search_service.py" complexity="0" line-rate="0.1846" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="3" hits="1"/>
<line number="4" hits="1"/>
<line number="5" hits="1"/>
<line number="7" hits="1"/>
<line number="10" hits="1"/>
<line number="11" hits="1"/>
<line number="12" hits="1"/>
<line number="14" hits="1"/>
<line number="15" hits="1"/>
<line number="26" hits="0"/>
<line number="28" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="38" hits="0"/>
<line number="41" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="42,48"/>
<line number="42" hits="0"/>
<line number="45" hits="0"/>
<line number="48" hits="0"/>
<line number="49" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="51,76"/>
<line number="51" hits="0"/>
<line number="58" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="59,76"/>
<line number="59" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="58,61"/>
<line number="61" hits="0"/>
<line number="63" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="65,68"/>
<line number="65" hits="0"/>
<line number="68" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="70,73"/>
<line number="70" hits="0"/>
<line number="73" hits="0"/>
<line number="76" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="78,84"/>
<line number="78" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="79,81"/>
<line number="79" hits="0"/>
<line number="81" hits="0"/>
<line number="84" hits="0"/>
<line number="111" hits="0"/>
<line number="137" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="138,141"/>
<line number="138" hits="0"/>
<line number="141" hits="0"/>
<line number="146" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="147,151"/>
<line number="147" hits="0"/>
<line number="148" hits="0"/>
<line number="151" hits="0"/>
<line number="155" hits="0"/>
<line number="156" hits="0"/>
<line number="157" hits="0"/>
<line number="158" hits="0"/>
<line number="162" hits="0"/>
<line number="165" hits="0"/>
<line number="166" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="167,184"/>
<line number="167" hits="0"/>
<line number="184" hits="0"/>
<line number="194" hits="1"/>
<line number="205" hits="0"/>
<line number="207" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="208,213"/>
<line number="208" hits="0"/>
<line number="210" hits="0"/>
<line number="213" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="214,218"/>
<line number="214" hits="0"/>
<line number="216" hits="0"/>
<line number="218" hits="0"/>
<line number="220" hits="0"/>
<line number="221" hits="0"/>
<line number="223" hits="0"/>
</lines>
</class>
<class name="session_ownership_service.py" filename="services/session_ownership_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="10" hits="0"/>
<line number="12" hits="0"/>
<line number="14" hits="0"/>
<line number="17" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="21" hits="0"/>
<line number="23" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="24,30"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="28" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0"/>
<line number="32" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="41" hits="0"/>
<line number="43" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="44,53"/>
<line number="44" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0"/>
<line number="53" hits="0"/>
<line number="54" hits="0"/>
<line number="56" hits="0"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="61" hits="0"/>
<line number="63" hits="0"/>
<line number="69" hits="0"/>
<line number="71" hits="0"/>
<line number="73" hits="0"/>
<line number="75" hits="0"/>
<line number="76" hits="0"/>
<line number="78" hits="0"/>
<line number="80" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="82,90"/>
<line number="82" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="83,88"/>
<line number="83" hits="0"/>
<line number="84" hits="0"/>
<line number="85" hits="0"/>
<line number="86" hits="0"/>
<line number="88" hits="0"/>
<line number="89" hits="0"/>
<line number="90" hits="0"/>
<line number="92" hits="0"/>
<line number="94" hits="0"/>
<line number="95" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="96,98"/>
<line number="96" hits="0"/>
<line number="98" hits="0"/>
<line number="109" hits="0"/>
</lines>
</class>
<class name="task_service.py" filename="services/task_service.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="12" hits="0"/>
<line number="15" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="22" hits="0"/>
<line number="24" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,25"/>
<line number="25" hits="0"/>
<line number="27" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="34" hits="0"/>
<line number="44" hits="0"/>
<line number="46" hits="0"/>
<line number="53" hits="0"/>
<line number="55" hits="0"/>
<line number="73" hits="0"/>
<line number="75" hits="0"/>
<line number="88" hits="0"/>
<line number="90" hits="0"/>
<line number="92" hits="0"/>
<line number="94" hits="0"/>
<line number="95" hits="0"/>
<line number="98" hits="0"/>
<line number="101" hits="0"/>
<line number="111" hits="0"/>
<line number="118" hits="0"/>
<line number="120" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="121,122"/>
<line number="121" hits="0"/>
<line number="122" hits="0"/>
<line number="125" hits="0"/>
<line number="128" hits="0"/>
<line number="129" hits="0"/>
<line number="132" hits="0"/>
<line number="134" hits="0"/>
<line number="136" hits="0"/>
<line number="138" hits="0"/>
<line number="139" hits="0"/>
<line number="140" hits="0"/>
<line number="141" hits="0"/>
<line number="144" hits="0"/>
<line number="145" hits="0"/>
<line number="149" hits="0"/>
<line number="150" hits="0"/>
<line number="151" hits="0"/>
<line number="152" hits="0"/>
<line number="155" hits="0"/>
<line number="164" hits="0"/>
<line number="166" hits="0"/>
<line number="171" hits="0"/>
<line number="174" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,175"/>
<line number="175" hits="0"/>
<line number="176" hits="0"/>
<line number="178" hits="0"/>
<line number="179" hits="0"/>
<line number="182" hits="0"/>
<line number="184" hits="0"/>
<line number="185" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,186"/>
<line number="186" hits="0"/>
<line number="187" hits="0"/>
<line number="189" hits="0"/>
<line number="193" hits="0"/>
<line number="194" hits="0"/>
<line number="195" hits="0"/>
<line number="196" hits="0"/>
<line number="198" hits="0"/>
<line number="201" hits="0"/>
<line number="202" hits="0"/>
<line number="204" hits="0"/>
<line number="205" hits="0"/>
<line number="206" hits="0"/>
<line number="207" hits="0"/>
<line number="208" hits="0"/>
<line number="210" hits="0"/>
<line number="211" hits="0"/>
<line number="212" hits="0"/>
<line number="213" hits="0"/>
<line number="216" hits="0"/>
<line number="218" hits="0"/>
<line number="219" hits="0"/>
<line number="220" hits="0"/>
<line number="221" hits="0"/>
<line number="223" hits="0"/>
<line number="224" hits="0"/>
<line number="225" hits="0"/>
<line number="227" hits="0"/>
<line number="229" hits="0"/>
<line number="232" hits="0"/>
<line number="233" hits="0"/>
<line number="235" hits="0"/>
<line number="236" hits="0"/>
<line number="237" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="239,240"/>
<line number="239" hits="0"/>
<line number="240" hits="0"/>
<line number="241" hits="0"/>
<line number="242" hits="0"/>
<line number="245" hits="0"/>
<line number="247" hits="0"/>
<line number="248" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,249"/>
<line number="249" hits="0"/>
<line number="250" hits="0"/>
<line number="252" hits="0"/>
<line number="258" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="259,262"/>
<line number="259" hits="0"/>
<line number="262" hits="0"/>
<line number="264" hits="0"/>
<line number="265" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="266,273"/>
<line number="266" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="265,270"/>
<line number="270" hits="0"/>
<line number="271" hits="0"/>
<line number="273" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="274,276"/>
<line number="274" hits="0"/>
<line number="276" hits="0"/>
<line number="277" hits="0"/>
<line number="278" hits="0"/>
<line number="280" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="281,298"/>
<line number="281" hits="0"/>
<line number="293" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="294,295"/>
<line number="294" hits="0"/>
<line number="295" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="280,296"/>
<line number="296" hits="0"/>
<line number="298" hits="0"/>
<line number="313" hits="0"/>
<line number="320" hits="0"/>
<line number="322" hits="0"/>
<line number="323" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="324,325"/>
<line number="324" hits="0"/>
<line number="325" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,326"/>
<line number="326" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="327,330"/>
<line number="327" hits="0"/>
<line number="330" hits="0"/>
<line number="331" hits="0"/>
<line number="332" hits="0"/>
<line number="334" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="335,352"/>
<line number="335" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="336,347"/>
<line number="336" hits="0"/>
<line number="347" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="348,349"/>
<line number="348" hits="0"/>
<line number="349" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="334,350"/>
<line number="350" hits="0"/>
<line number="352" hits="0"/>
<line number="368" hits="0"/>
<line number="369" hits="0"/>
<line number="371" hits="0"/>
<line number="372" hits="0"/>
<line number="373" hits="0"/>
<line number="375" hits="0"/>
<line number="381" hits="0"/>
<line number="383" hits="0"/>
<line number="384" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="385,392"/>
<line number="385" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="384,389"/>
<line number="389" hits="0"/>
<line number="390" hits="0"/>
<line number="392" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="393,395"/>
<line number="393" hits="0"/>
<line number="395" hits="0"/>
<line number="398" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="399,402"/>
<line number="399" hits="0"/>
<line number="402" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="406,416"/>
<line number="406" hits="0"/>
<line number="408" hits="0"/>
<line number="409" hits="0"/>
<line number="410" hits="0"/>
<line number="411" hits="0"/>
<line number="412" hits="0"/>
<line number="413" hits="0"/>
<line number="416" hits="0"/>
<line number="417" hits="0"/>
<line number="420" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="421,430"/>
<line number="421" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="420,424"/>
<line number="424" hits="0"/>
<line number="426" hits="0"/>
<line number="427" hits="0"/>
<line number="428" hits="0"/>
<line number="430" hits="0"/>
<line number="432" hits="0"/>
<line number="434" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,435"/>
<line number="435" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="tui" line-rate="0" branch-rate="0" complexity="0">
<classes>
<class name="__init__.py" filename="tui/__init__.py" complexity="0" line-rate="1" branch-rate="1">
<methods/>
<lines/>
</class>
<class name="main.py" filename="tui/main.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="10" hits="0"/>
<line number="12" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="26" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0"/>
<line number="32" hits="0"/>
<line number="261" hits="0"/>
<line number="262" hits="0"/>
<line number="263" hits="0"/>
<line number="264" hits="0"/>
<line number="265" hits="0"/>
<line number="266" hits="0"/>
<line number="268" hits="0"/>
<line number="271" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="272,280"/>
<line number="272" hits="0"/>
<line number="280" hits="0"/>
<line number="283" hits="0"/>
<line number="285" hits="0"/>
<line number="288" hits="0"/>
<line number="289" hits="0"/>
<line number="291" hits="0"/>
<line number="293" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="294,297"/>
<line number="294" hits="0"/>
<line number="297" hits="0"/>
<line number="298" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="299,305"/>
<line number="299" hits="0"/>
<line number="302" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="303,305"/>
<line number="303" hits="0"/>
<line number="305" hits="0"/>
<line number="308" hits="0"/>
<line number="310" hits="0"/>
<line number="313" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="314,316"/>
<line number="314" hits="0"/>
<line number="316" hits="0"/>
<line number="318" hits="0"/>
<line number="321" hits="0"/>
<line number="324" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,325"/>
<line number="325" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="324,326"/>
<line number="326" hits="0"/>
<line number="327" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="324,328"/>
<line number="328" hits="0"/>
<line number="329" hits="0"/>
<line number="330" hits="0"/>
<line number="332" hits="0"/>
<line number="333" hits="0"/>
<line number="337" hits="0"/>
<line number="339" hits="0"/>
<line number="340" hits="0"/>
<line number="342" hits="0"/>
<line number="344" hits="0"/>
<line number="345" hits="0"/>
<line number="346" hits="0"/>
<line number="347" hits="0"/>
<line number="348" hits="0"/>
<line number="349" hits="0"/>
<line number="352" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="353,354"/>
<line number="353" hits="0"/>
<line number="354" hits="0"/>
<line number="357" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,358"/>
<line number="358" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="tui.managers" line-rate="0" branch-rate="0" complexity="0">
<classes>
<class name="__init__.py" filename="tui/managers/__init__.py" complexity="0" line-rate="1" branch-rate="1">
<methods/>
<lines/>
</class>
<class name="container_manager.py" filename="tui/managers/container_manager.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="17" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="23" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="28" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
<line number="43" hits="0"/>
<line number="44" hits="0"/>
<line number="45" hits="0"/>
<line number="47" hits="0"/>
<line number="48" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,49"/>
<line number="49" hits="0"/>
<line number="52" hits="0"/>
<line number="55" hits="0"/>
<line number="56" hits="0"/>
<line number="57" hits="0"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="60" hits="0"/>
<line number="61" hits="0"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="67" hits="0"/>
<line number="70" hits="0"/>
<line number="79" hits="0"/>
<line number="87" hits="0"/>
<line number="90" hits="0"/>
<line number="91" hits="0"/>
<line number="92" hits="0"/>
<line number="94" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="95,98"/>
<line number="95" hits="0"/>
<line number="96" hits="0"/>
<line number="98" hits="0"/>
<line number="101" hits="0"/>
<line number="102" hits="0"/>
<line number="103" hits="0"/>
<line number="104" hits="0"/>
<line number="105" hits="0"/>
<line number="107" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="108,114"/>
<line number="108" hits="0"/>
<line number="110" hits="0"/>
<line number="111" hits="0"/>
<line number="112" hits="0"/>
<line number="114" hits="0"/>
<line number="115" hits="0"/>
<line number="116" hits="0"/>
<line number="120" hits="0"/>
<line number="121" hits="0"/>
<line number="123" hits="0"/>
<line number="125" hits="0"/>
<line number="127" hits="0"/>
<line number="129" hits="0"/>
<line number="131" hits="0"/>
<line number="133" hits="0"/>
<line number="135" hits="0"/>
<line number="139" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="140,142"/>
<line number="140" hits="0"/>
<line number="142" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="143,144"/>
<line number="143" hits="0"/>
<line number="144" hits="0"/>
<line number="145" hits="0"/>
<line number="147" hits="0"/>
<line number="148" hits="0"/>
<line number="155" hits="0"/>
<line number="156" hits="0"/>
<line number="157" hits="0"/>
<line number="159" hits="0"/>
<line number="160" hits="0"/>
<line number="162" hits="0"/>
<line number="163" hits="0"/>
<line number="165" hits="0"/>
<line number="169" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="170,173"/>
<line number="170" hits="0"/>
<line number="171" hits="0"/>
<line number="173" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="174,175"/>
<line number="174" hits="0"/>
<line number="175" hits="0"/>
<line number="176" hits="0"/>
<line number="178" hits="0"/>
<line number="179" hits="0"/>
<line number="187" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="188,198"/>
<line number="188" hits="0"/>
<line number="189" hits="0"/>
<line number="190" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="191,193"/>
<line number="191" hits="0"/>
<line number="193" hits="0"/>
<line number="194" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="188,195"/>
<line number="195" hits="0"/>
<line number="198" hits="0"/>
<line number="200" hits="0"/>
<line number="201" hits="0"/>
<line number="203" hits="0"/>
<line number="210" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="211,215"/>
<line number="211" hits="0"/>
<line number="212" hits="0"/>
<line number="213" hits="0"/>
<line number="215" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="216,217"/>
<line number="216" hits="0"/>
<line number="217" hits="0"/>
<line number="218" hits="0"/>
<line number="220" hits="0"/>
<line number="221" hits="0"/>
<line number="227" hits="0"/>
<line number="228" hits="0"/>
<line number="229" hits="0"/>
<line number="230" hits="0"/>
<line number="232" hits="0"/>
<line number="234" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="235,251"/>
<line number="235" hits="0"/>
<line number="236" hits="0"/>
<line number="237" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="238,240"/>
<line number="238" hits="0"/>
<line number="240" hits="0"/>
<line number="242" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="235,243"/>
<line number="243" hits="0"/>
<line number="244" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="245,246"/>
<line number="245" hits="0"/>
<line number="246" hits="0"/>
<line number="247" hits="0"/>
<line number="248" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="242,249"/>
<line number="249" hits="0"/>
<line number="251" hits="0"/>
<line number="252" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,253"/>
<line number="253" hits="0"/>
<line number="254" hits="0"/>
<line number="256" hits="0"/>
<line number="258" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="259,261"/>
<line number="259" hits="0"/>
<line number="261" hits="0"/>
<line number="263" hits="0"/>
<line number="264" hits="0"/>
<line number="268" hits="0"/>
<line number="269" hits="0"/>
<line number="270" hits="0"/>
<line number="272" hits="0"/>
<line number="273" hits="0"/>
<line number="275" hits="0"/>
<line number="276" hits="0"/>
<line number="278" hits="0"/>
<line number="283" hits="0"/>
<line number="285" hits="0"/>
<line number="288" hits="0"/>
<line number="289" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="290,292"/>
<line number="290" hits="0"/>
<line number="292" hits="0"/>
<line number="295" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="296,297"/>
<line number="296" hits="0"/>
<line number="297" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="298,299"/>
<line number="298" hits="0"/>
<line number="299" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="300,302"/>
<line number="300" hits="0"/>
<line number="302" hits="0"/>
<line number="305" hits="0"/>
<line number="308" hits="0"/>
<line number="309" hits="0"/>
<line number="314" hits="0"/>
<line number="316" hits="0"/>
<line number="324" hits="0"/>
<line number="328" hits="0"/>
<line number="331" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="332,334"/>
<line number="332" hits="0"/>
<line number="334" hits="0"/>
<line number="337" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="339,390"/>
<line number="339" hits="0"/>
<line number="340" hits="0"/>
<line number="342" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="343,438"/>
<line number="343" hits="0"/>
<line number="344" hits="0"/>
<line number="345" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="347,438"/>
<line number="347" hits="0"/>
<line number="348" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="349,351"/>
<line number="349" hits="0"/>
<line number="351" hits="0"/>
<line number="352" hits="0"/>
<line number="353" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="354,357"/>
<line number="354" hits="0"/>
<line number="357" hits="0"/>
<line number="358" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="359,360"/>
<line number="359" hits="0"/>
<line number="360" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="361,362"/>
<line number="361" hits="0"/>
<line number="362" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="363,365"/>
<line number="363" hits="0"/>
<line number="365" hits="0"/>
<line number="368" hits="0"/>
<line number="369" hits="0"/>
<line number="371" hits="0"/>
<line number="372" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="373,379"/>
<line number="373" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="374,379"/>
<line number="374" hits="0"/>
<line number="375" hits="0"/>
<line number="376" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="373,377"/>
<line number="377" hits="0"/>
<line number="379" hits="0"/>
<line number="386" hits="0"/>
<line number="387" hits="0"/>
<line number="390" hits="0"/>
<line number="394" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="395,438"/>
<line number="395" hits="0"/>
<line number="397" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="399,404"/>
<line number="399" hits="0"/>
<line number="400" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="401,438"/>
<line number="401" hits="0"/>
<line number="404" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="405,438"/>
<line number="405" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="404,406"/>
<line number="406" hits="0"/>
<line number="407" hits="0"/>
<line number="408" hits="0"/>
<line number="410" hits="0"/>
<line number="411" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="414,438"/>
<line number="414" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="415,438"/>
<line number="415" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="414,416"/>
<line number="416" hits="0"/>
<line number="417" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="414,418"/>
<line number="418" hits="0"/>
<line number="421" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="422,424"/>
<line number="422" hits="0"/>
<line number="424" hits="0"/>
<line number="426" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="427,428"/>
<line number="427" hits="0"/>
<line number="428" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="429,431"/>
<line number="429" hits="0"/>
<line number="431" hits="0"/>
<line number="433" hits="0"/>
<line number="438" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="439,444"/>
<line number="439" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="438,440"/>
<line number="440" hits="0"/>
<line number="444" hits="0"/>
<line number="445" hits="0"/>
<line number="447" hits="0"/>
<line number="449" hits="0"/>
<line number="451" hits="0"/>
<line number="452" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="453,460"/>
<line number="453" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="454,455"/>
<line number="454" hits="0"/>
<line number="455" hits="0"/>
<line number="458" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="452,459"/>
<line number="459" hits="0"/>
<line number="460" hits="0"/>
<line number="462" hits="0"/>
<line number="464" hits="0"/>
<line number="465" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="466,484"/>
<line number="466" hits="0"/>
<line number="467" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="468,469"/>
<line number="468" hits="0"/>
<line number="469" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="465,470"/>
<line number="470" hits="0"/>
<line number="471" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="472,473"/>
<line number="472" hits="0"/>
<line number="473" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="469,475"/>
<line number="475" hits="0"/>
<line number="477" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="480,481"/>
<line number="480" hits="0"/>
<line number="481" hits="0"/>
<line number="482" hits="0"/>
<line number="483" hits="0"/>
<line number="484" hits="0"/>
<line number="486" hits="0"/>
<line number="491" hits="0"/>
<line number="492" hits="0"/>
<line number="493" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="494,501"/>
<line number="494" hits="0"/>
<line number="495" hits="0"/>
<line number="498" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="499,500"/>
<line number="499" hits="0"/>
<line number="500" hits="0"/>
<line number="501" hits="0"/>
<line number="502" hits="0"/>
<line number="504" hits="0"/>
<line number="508" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="509,513"/>
<line number="509" hits="0"/>
<line number="510" hits="0"/>
<line number="513" hits="0"/>
<line number="516" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="517,521"/>
<line number="517" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="518,521"/>
<line number="518" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="517,519"/>
<line number="519" hits="0"/>
<line number="521" hits="0"/>
<line number="522" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="523,526"/>
<line number="523" hits="0"/>
<line number="524" hits="0"/>
<line number="526" hits="0"/>
<line number="528" hits="0"/>
<line number="529" hits="0"/>
<line number="530" hits="0"/>
<line number="531" hits="0"/>
<line number="532" hits="0"/>
<line number="533" hits="0"/>
<line number="535" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="536,546"/>
<line number="536" hits="0"/>
<line number="537" hits="0"/>
<line number="538" hits="0"/>
<line number="539" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="542,543"/>
<line number="542" hits="0"/>
<line number="543" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="544,546"/>
<line number="544" hits="0"/>
<line number="546" hits="0"/>
<line number="547" hits="0"/>
<line number="548" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="549,551"/>
<line number="549" hits="0"/>
<line number="551" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="552,554"/>
<line number="552" hits="0"/>
<line number="554" hits="0"/>
<line number="556" hits="0"/>
<line number="558" hits="0"/>
<line number="560" hits="0"/>
<line number="562" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="563,565"/>
<line number="563" hits="0"/>
<line number="565" hits="0"/>
<line number="567" hits="0"/>
<line number="571" hits="0"/>
<line number="573" hits="0"/>
<line number="575" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="576,578"/>
<line number="576" hits="0"/>
<line number="578" hits="0"/>
<line number="580" hits="0"/>
<line number="584" hits="0"/>
<line number="587" hits="0"/>
<line number="588" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="589,594"/>
<line number="589" hits="0"/>
<line number="591" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="588,592"/>
<line number="592" hits="0"/>
<line number="594" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="595,597"/>
<line number="595" hits="0"/>
<line number="597" hits="0"/>
<line number="600" hits="0"/>
<line number="601" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="604,609"/>
<line number="604" hits="0"/>
<line number="606" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="601,607"/>
<line number="607" hits="0"/>
<line number="609" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="610,612"/>
<line number="610" hits="0"/>
<line number="612" hits="0"/>
<line number="614" hits="0"/>
<line number="616" hits="0"/>
<line number="619" hits="0"/>
<line number="623" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="624,627"/>
<line number="624" hits="0"/>
<line number="625" hits="0"/>
<line number="627" hits="0"/>
<line number="631" hits="0"/>
<line number="633" hits="0"/>
<line number="638" hits="0"/>
<line number="642" hits="0"/>
<line number="646" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="647,649"/>
<line number="647" hits="0"/>
<line number="649" hits="0"/>
<line number="651" hits="0"/>
<line number="653" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="654,657"/>
<line number="654" hits="0"/>
<line number="655" hits="0"/>
<line number="657" hits="0"/>
<line number="660" hits="0"/>
<line number="668" hits="0"/>
<line number="669" hits="0"/>
<line number="676" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="677,684"/>
<line number="677" hits="0"/>
<line number="678" hits="0"/>
<line number="679" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="680,682"/>
<line number="680" hits="0"/>
<line number="682" hits="0"/>
<line number="684" hits="0"/>
<line number="686" hits="0"/>
<line number="687" hits="0"/>
<line number="689" hits="0"/>
<line number="691" hits="0"/>
<line number="694" hits="0"/>
<line number="698" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="699,715"/>
<line number="699" hits="0"/>
<line number="700" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="701,715"/>
<line number="701" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="700,702"/>
<line number="702" hits="0"/>
<line number="703" hits="0"/>
<line number="704" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="700,705"/>
<line number="705" hits="0"/>
<line number="712" hits="0"/>
<line number="713" hits="0"/>
<line number="715" hits="0"/>
<line number="717" hits="0"/>
<line number="719" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="720,723"/>
<line number="720" hits="0"/>
<line number="723" hits="0"/>
<line number="724" hits="0"/>
<line number="725" hits="0"/>
<line number="732" hits="0"/>
<line number="733" hits="0"/>
<line number="734" hits="0"/>
<line number="736" hits="0"/>
<line number="737" hits="0"/>
<line number="738" hits="0"/>
<line number="739" hits="0"/>
<line number="742" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="743,753"/>
<line number="743" hits="0"/>
<line number="744" hits="0"/>
<line number="745" hits="0"/>
<line number="746" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="747,753"/>
<line number="747" hits="0"/>
<line number="748" hits="0"/>
<line number="749" hits="0"/>
<line number="750" hits="0"/>
<line number="751" hits="0"/>
<line number="753" hits="0"/>
<line number="755" hits="0"/>
<line number="756" hits="0"/>
<line number="758" hits="0"/>
<line number="760" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="761,763"/>
<line number="761" hits="0"/>
<line number="763" hits="0"/>
<line number="766" hits="0"/>
</lines>
</class>
<class name="docling_manager.py" filename="tui/managers/docling_manager.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0"/>
<line number="17" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0"/>
<line number="23" hits="0"/>
<line number="24" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="25,26"/>
<line number="25" hits="0"/>
<line number="26" hits="0"/>
<line number="28" hits="0"/>
<line number="30" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="31,33"/>
<line number="31" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="44" hits="0"/>
<line number="45" hits="0"/>
<line number="46" hits="0"/>
<line number="48" hits="0"/>
<line number="51" hits="0"/>
<line number="53" hits="0"/>
<line number="57" hits="0"/>
<line number="60" hits="0"/>
<line number="62" hits="0"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="68" hits="0"/>
<line number="70" hits="0"/>
<line number="71" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="72,77"/>
<line number="72" hits="0"/>
<line number="73" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="74,77"/>
<line number="74" hits="0"/>
<line number="75" hits="0"/>
<line number="76" hits="0"/>
<line number="77" hits="0"/>
<line number="79" hits="0"/>
<line number="81" hits="0"/>
<line number="82" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,83"/>
<line number="83" hits="0"/>
<line number="84" hits="0"/>
<line number="85" hits="0"/>
<line number="86" hits="0"/>
<line number="88" hits="0"/>
<line number="90" hits="0"/>
<line number="92" hits="0"/>
<line number="93" hits="0"/>
<line number="94" hits="0"/>
<line number="95" hits="0"/>
<line number="97" hits="0"/>
<line number="99" hits="0"/>
<line number="100" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,101"/>
<line number="101" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="102,109"/>
<line number="102" hits="0"/>
<line number="104" hits="0"/>
<line number="105" hits="0"/>
<line number="109" hits="0"/>
<line number="110" hits="0"/>
<line number="112" hits="0"/>
<line number="114" hits="0"/>
<line number="115" hits="0"/>
<line number="117" hits="0"/>
<line number="118" hits="0"/>
<line number="120" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,121"/>
<line number="121" hits="0"/>
<line number="123" hits="0"/>
<line number="126" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="127,132"/>
<line number="127" hits="0"/>
<line number="128" hits="0"/>
<line number="129" hits="0"/>
<line number="132" hits="0"/>
<line number="133" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="134,139"/>
<line number="134" hits="0"/>
<line number="135" hits="0"/>
<line number="136" hits="0"/>
<line number="139" hits="0"/>
<line number="140" hits="0"/>
<line number="141" hits="0"/>
<line number="143" hits="0"/>
<line number="145" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="147,163"/>
<line number="147" hits="0"/>
<line number="148" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="149,151"/>
<line number="149" hits="0"/>
<line number="151" hits="0"/>
<line number="153" hits="0"/>
<line number="163" hits="0"/>
<line number="173" hits="0"/>
<line number="175" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="176,178"/>
<line number="176" hits="0"/>
<line number="178" hits="0"/>
<line number="180" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="181,185"/>
<line number="181" hits="0"/>
<line number="185" hits="0"/>
<line number="186" hits="0"/>
<line number="187" hits="0"/>
<line number="188" hits="0"/>
<line number="189" hits="0"/>
<line number="190" hits="0"/>
<line number="191" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="192,197"/>
<line number="192" hits="0"/>
<line number="193" hits="0"/>
<line number="194" hits="0"/>
<line number="197" hits="0"/>
<line number="198" hits="0"/>
<line number="200" hits="0"/>
<line number="203" hits="0"/>
<line number="204" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="205,211"/>
<line number="205" hits="0"/>
<line number="211" hits="0"/>
<line number="217" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="218,220"/>
<line number="218" hits="0"/>
<line number="220" hits="0"/>
<line number="223" hits="0"/>
<line number="231" hits="0"/>
<line number="232" hits="0"/>
<line number="235" hits="0"/>
<line number="238" hits="0"/>
<line number="241" hits="0"/>
<line number="244" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="245,268"/>
<line number="245" hits="0"/>
<line number="248" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="249,252"/>
<line number="249" hits="0"/>
<line number="252" hits="0"/>
<line number="253" hits="0"/>
<line number="254" hits="0"/>
<line number="255" hits="0"/>
<line number="256" hits="0"/>
<line number="257" hits="0"/>
<line number="259" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="260,265"/>
<line number="260" hits="0"/>
<line number="261" hits="0"/>
<line number="262" hits="0"/>
<line number="263" hits="0"/>
<line number="265" hits="0"/>
<line number="268" hits="0"/>
<line number="270" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="272,296"/>
<line number="272" hits="0"/>
<line number="273" hits="0"/>
<line number="275" hits="0"/>
<line number="277" hits="0"/>
<line number="278" hits="0"/>
<line number="280" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="281,282"/>
<line number="281" hits="0"/>
<line number="282" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="283,285"/>
<line number="283" hits="0"/>
<line number="285" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="286,287"/>
<line number="286" hits="0"/>
<line number="287" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="288,293"/>
<line number="288" hits="0"/>
<line number="290" hits="0"/>
<line number="291" hits="0"/>
<line number="293" hits="0"/>
<line number="294" hits="0"/>
<line number="296" hits="0"/>
<line number="298" hits="0"/>
<line number="299" hits="0"/>
<line number="300" hits="0"/>
<line number="301" hits="0"/>
<line number="302" hits="0"/>
<line number="303" hits="0"/>
<line number="305" hits="0"/>
<line number="307" hits="0"/>
<line number="308" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="309,312"/>
<line number="309" hits="0"/>
<line number="310" hits="0"/>
<line number="312" hits="0"/>
<line number="313" hits="0"/>
<line number="314" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="315,324"/>
<line number="315" hits="0"/>
<line number="316" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="317,320"/>
<line number="317" hits="0"/>
<line number="320" hits="0"/>
<line number="321" hits="0"/>
<line number="322" hits="0"/>
<line number="324" hits="0"/>
<line number="326" hits="0"/>
<line number="327" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="328,331"/>
<line number="328" hits="0"/>
<line number="329" hits="0"/>
<line number="331" hits="0"/>
<line number="332" hits="0"/>
<line number="333" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="334,343"/>
<line number="334" hits="0"/>
<line number="335" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="336,339"/>
<line number="336" hits="0"/>
<line number="339" hits="0"/>
<line number="340" hits="0"/>
<line number="341" hits="0"/>
<line number="343" hits="0"/>
<line number="346" hits="0"/>
<line number="347" hits="0"/>
<line number="349" hits="0"/>
<line number="350" hits="0"/>
<line number="352" hits="0"/>
<line number="354" hits="0"/>
<line number="356" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="357,359"/>
<line number="357" hits="0"/>
<line number="359" hits="0"/>
<line number="360" hits="0"/>
<line number="362" hits="0"/>
<line number="364" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="366,381"/>
<line number="366" hits="0"/>
<line number="367" hits="0"/>
<line number="368" hits="0"/>
<line number="371" hits="0"/>
<line number="372" hits="0"/>
<line number="373" hits="0"/>
<line number="374" hits="0"/>
<line number="376" hits="0"/>
<line number="377" hits="0"/>
<line number="378" hits="0"/>
<line number="379" hits="0"/>
<line number="381" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="383,401"/>
<line number="383" hits="0"/>
<line number="384" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="385,398"/>
<line number="385" hits="0"/>
<line number="386" hits="0"/>
<line number="387" hits="0"/>
<line number="389" hits="0"/>
<line number="390" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="392,401"/>
<line number="392" hits="0"/>
<line number="393" hits="0"/>
<line number="394" hits="0"/>
<line number="395" hits="0"/>
<line number="396" hits="0"/>
<line number="398" hits="0"/>
<line number="399" hits="0"/>
<line number="401" hits="0"/>
<line number="402" hits="0"/>
<line number="403" hits="0"/>
<line number="406" hits="0"/>
<line number="408" hits="0"/>
<line number="409" hits="0"/>
<line number="411" hits="0"/>
<line number="412" hits="0"/>
<line number="413" hits="0"/>
<line number="415" hits="0"/>
<line number="418" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="419,420"/>
<line number="419" hits="0"/>
<line number="420" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="421,424"/>
<line number="421" hits="0"/>
<line number="424" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="425,433"/>
<line number="425" hits="0"/>
<line number="426" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="427,430"/>
<line number="427" hits="0"/>
<line number="430" hits="0"/>
<line number="433" hits="0"/>
<line number="435" hits="0"/>
<line number="437" hits="0"/>
<line number="439" hits="0"/>
<line number="441" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="442,452"/>
<line number="442" hits="0"/>
<line number="444" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="445,448"/>
<line number="445" hits="0"/>
<line number="448" hits="0"/>
<line number="449" hits="0"/>
<line number="450" hits="0"/>
<line number="452" hits="0"/>
<line number="454" hits="0"/>
<line number="457" hits="0"/>
<line number="459" hits="0"/>
<line number="460" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="461,464"/>
<line number="461" hits="0"/>
<line number="462" hits="0"/>
<line number="464" hits="0"/>
<line number="465" hits="0"/>
<line number="468" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="469,481"/>
<line number="469" hits="0"/>
<line number="471" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="473,478"/>
<line number="473" hits="0"/>
<line number="474" hits="0"/>
<line number="475" hits="0"/>
<line number="478" hits="0"/>
<line number="481" hits="0"/>
<line number="482" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,483"/>
<line number="483" hits="0"/>
</lines>
</class>
<class name="env_manager.py" filename="tui/managers/env_manager.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="12" hits="0"/>
<line number="14" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
<line number="45" hits="0"/>
<line number="46" hits="0"/>
<line number="47" hits="0"/>
<line number="48" hits="0"/>
<line number="51" hits="0"/>
<line number="52" hits="0"/>
<line number="53" hits="0"/>
<line number="56" hits="0"/>
<line number="57" hits="0"/>
<line number="60" hits="0"/>
<line number="63" hits="0"/>
<line number="66" hits="0"/>
<line number="69" hits="0"/>
<line number="70" hits="0"/>
<line number="71" hits="0"/>
<line number="73" hits="0"/>
<line number="76" hits="0"/>
<line number="77" hits="0"/>
<line number="79" hits="0"/>
<line number="81" hits="0"/>
<line number="83" hits="0"/>
<line number="85" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="86,89"/>
<line number="86" hits="0"/>
<line number="89" hits="0"/>
<line number="90" hits="0"/>
<line number="92" hits="0"/>
<line number="94" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="95,97"/>
<line number="95" hits="0"/>
<line number="97" hits="0"/>
<line number="98" hits="0"/>
<line number="99" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="100,138"/>
<line number="100" hits="0"/>
<line number="101" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="102,104"/>
<line number="102" hits="0"/>
<line number="104" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="99,105"/>
<line number="105" hits="0"/>
<line number="106" hits="0"/>
<line number="107" hits="0"/>
<line number="110" hits="0"/>
<line number="135" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="99,136"/>
<line number="136" hits="0"/>
<line number="138" hits="0"/>
<line number="140" hits="0"/>
<line number="141" hits="0"/>
<line number="142" hits="0"/>
<line number="144" hits="0"/>
<line number="146" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="147,149"/>
<line number="147" hits="0"/>
<line number="149" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="150,152"/>
<line number="150" hits="0"/>
<line number="152" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,153"/>
<line number="153" hits="0"/>
<line number="155" hits="0"/>
<line number="162" hits="0"/>
<line number="165" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="166,171"/>
<line number="166" hits="0"/>
<line number="171" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="172,179"/>
<line number="172" hits="0"/>
<line number="175" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="176,179"/>
<line number="176" hits="0"/>
<line number="179" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="180,186"/>
<line number="180" hits="0"/>
<line number="186" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="187,191"/>
<line number="187" hits="0"/>
<line number="191" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="193,232"/>
<line number="193" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="199,203"/>
<line number="199" hits="0"/>
<line number="203" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="206,210"/>
<line number="206" hits="0"/>
<line number="210" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="213,218"/>
<line number="213" hits="0"/>
<line number="218" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="221,225"/>
<line number="221" hits="0"/>
<line number="225" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="228,232"/>
<line number="228" hits="0"/>
<line number="232" hits="0"/>
<line number="234" hits="0"/>
<line number="236" hits="0"/>
<line number="238" hits="0"/>
<line number="240" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="241,245"/>
<line number="241" hits="0"/>
<line number="242" hits="0"/>
<line number="243" hits="0"/>
<line number="245" hits="0"/>
<line number="246" hits="0"/>
<line number="247" hits="0"/>
<line number="250" hits="0"/>
<line number="251" hits="0"/>
<line number="252" hits="0"/>
<line number="253" hits="0"/>
<line number="256" hits="0"/>
<line number="257" hits="0"/>
<line number="260" hits="0"/>
<line number="261" hits="0"/>
<line number="262" hits="0"/>
<line number="263" hits="0"/>
<line number="264" hits="0"/>
<line number="267" hits="0"/>
<line number="270" hits="0"/>
<line number="271" hits="0"/>
<line number="272" hits="0"/>
<line number="275" hits="0"/>
<line number="276" hits="0"/>
<line number="277" hits="0"/>
<line number="280" hits="0"/>
<line number="283" hits="0"/>
<line number="286" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="290,299"/>
<line number="290" hits="0"/>
<line number="291" hits="0"/>
<line number="294" hits="0"/>
<line number="297" hits="0"/>
<line number="299" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="303,313"/>
<line number="303" hits="0"/>
<line number="304" hits="0"/>
<line number="307" hits="0"/>
<line number="310" hits="0"/>
<line number="313" hits="0"/>
<line number="320" hits="0"/>
<line number="321" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="322,328"/>
<line number="322" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="321,323"/>
<line number="323" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="324,326"/>
<line number="324" hits="0"/>
<line number="325" hits="0"/>
<line number="326" hits="0"/>
<line number="328" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="329,331"/>
<line number="329" hits="0"/>
<line number="331" hits="0"/>
<line number="333" hits="0"/>
<line number="334" hits="0"/>
<line number="335" hits="0"/>
<line number="337" hits="0"/>
<line number="339" hits="0"/>
<line number="361" hits="0"/>
<line number="363" hits="0"/>
<line number="365" hits="0"/>
<line number="382" hits="0"/>
<line number="391" hits="0"/>
<line number="414" hits="0"/>
<line number="416" hits="0"/>
<line number="418" hits="0"/>
<line number="422" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="423,425"/>
<line number="423" hits="0"/>
<line number="425" hits="0"/>
<line number="426" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="427,434"/>
<line number="427" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="429,432"/>
<line number="429" hits="0"/>
<line number="432" hits="0"/>
<line number="434" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="tui.screens" line-rate="0" branch-rate="0" complexity="0">
<classes>
<class name="__init__.py" filename="tui/screens/__init__.py" complexity="0" line-rate="1" branch-rate="1">
<methods/>
<lines/>
</class>
<class name="config.py" filename="tui/screens/config.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="18" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="25" hits="0"/>
<line number="28" hits="0"/>
<line number="29" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="30,32"/>
<line number="30" hits="0"/>
<line number="32" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="33,35"/>
<line number="33" hits="0"/>
<line number="35" hits="0"/>
<line number="38" hits="0"/>
<line number="41" hits="0"/>
<line number="43" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="44,46"/>
<line number="44" hits="0"/>
<line number="46" hits="0"/>
<line number="47" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="48,50"/>
<line number="48" hits="0"/>
<line number="50" hits="0"/>
<line number="53" hits="0"/>
<line number="56" hits="0"/>
<line number="62" hits="0"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="69" hits="0"/>
<line number="71" hits="0"/>
<line number="74" hits="0"/>
<line number="75" hits="0"/>
<line number="76" hits="0"/>
<line number="77" hits="0"/>
<line number="78" hits="0"/>
<line number="84" hits="0"/>
<line number="86" hits="0"/>
<line number="88" hits="0"/>
<line number="90" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="91,96"/>
<line number="91" hits="0"/>
<line number="92" hits="0"/>
<line number="96" hits="0"/>
<line number="97" hits="0"/>
<line number="101" hits="0"/>
<line number="102" hits="0"/>
<line number="104" hits="0"/>
<line number="106" hits="0"/>
<line number="110" hits="0"/>
<line number="111" hits="0"/>
<line number="114" hits="0"/>
<line number="115" hits="0"/>
<line number="116" hits="0"/>
<line number="122" hits="0"/>
<line number="123" hits="0"/>
<line number="124" hits="0"/>
<line number="127" hits="0"/>
<line number="128" hits="0"/>
<line number="129" hits="0"/>
<line number="132" hits="0"/>
<line number="133" hits="0"/>
<line number="134" hits="0"/>
<line number="137" hits="0"/>
<line number="138" hits="0"/>
<line number="141" hits="0"/>
<line number="147" hits="0"/>
<line number="148" hits="0"/>
<line number="149" hits="0"/>
<line number="150" hits="0"/>
<line number="153" hits="0"/>
<line number="154" hits="0"/>
<line number="157" hits="0"/>
<line number="159" hits="0"/>
<line number="163" hits="0"/>
<line number="164" hits="0"/>
<line number="171" hits="0"/>
<line number="172" hits="0"/>
<line number="173" hits="0"/>
<line number="176" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="178,306"/>
<line number="178" hits="0"/>
<line number="180" hits="0"/>
<line number="188" hits="0"/>
<line number="198" hits="0"/>
<line number="201" hits="0"/>
<line number="206" hits="0"/>
<line number="207" hits="0"/>
<line number="208" hits="0"/>
<line number="211" hits="0"/>
<line number="212" hits="0"/>
<line number="215" hits="0"/>
<line number="221" hits="0"/>
<line number="222" hits="0"/>
<line number="223" hits="0"/>
<line number="226" hits="0"/>
<line number="228" hits="0"/>
<line number="236" hits="0"/>
<line number="246" hits="0"/>
<line number="249" hits="0"/>
<line number="254" hits="0"/>
<line number="255" hits="0"/>
<line number="256" hits="0"/>
<line number="259" hits="0"/>
<line number="260" hits="0"/>
<line number="263" hits="0"/>
<line number="269" hits="0"/>
<line number="270" hits="0"/>
<line number="271" hits="0"/>
<line number="274" hits="0"/>
<line number="276" hits="0"/>
<line number="283" hits="0"/>
<line number="284" hits="0"/>
<line number="287" hits="0"/>
<line number="288" hits="0"/>
<line number="289" hits="0"/>
<line number="292" hits="0"/>
<line number="293" hits="0"/>
<line number="296" hits="0"/>
<line number="302" hits="0"/>
<line number="303" hits="0"/>
<line number="304" hits="0"/>
<line number="306" hits="0"/>
<line number="309" hits="0"/>
<line number="310" hits="0"/>
<line number="313" hits="0"/>
<line number="314" hits="0"/>
<line number="315" hits="0"/>
<line number="321" hits="0"/>
<line number="323" hits="0"/>
<line number="328" hits="0"/>
<line number="329" hits="0"/>
<line number="332" hits="0"/>
<line number="333" hits="0"/>
<line number="336" hits="0"/>
<line number="337" hits="0"/>
<line number="338" hits="0"/>
<line number="341" hits="0"/>
<line number="342" hits="0"/>
<line number="343" hits="0"/>
<line number="346" hits="0"/>
<line number="347" hits="0"/>
<line number="350" hits="0"/>
<line number="355" hits="0"/>
<line number="356" hits="0"/>
<line number="357" hits="0"/>
<line number="360" hits="0"/>
<line number="361" hits="0"/>
<line number="364" hits="0"/>
<line number="369" hits="0"/>
<line number="370" hits="0"/>
<line number="371" hits="0"/>
<line number="372" hits="0"/>
<line number="377" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,379"/>
<line number="379" hits="0"/>
<line number="380" hits="0"/>
<line number="381" hits="0"/>
<line number="386" hits="0"/>
<line number="387" hits="0"/>
<line number="388" hits="0"/>
<line number="391" hits="0"/>
<line number="392" hits="0"/>
<line number="393" hits="0"/>
<line number="398" hits="0"/>
<line number="399" hits="0"/>
<line number="400" hits="0"/>
<line number="402" hits="0"/>
<line number="412" hits="0"/>
<line number="413" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="414,416"/>
<line number="414" hits="0"/>
<line number="416" hits="0"/>
<line number="419" hits="0"/>
<line number="422" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="423,430"/>
<line number="423" hits="0"/>
<line number="430" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="431,437"/>
<line number="431" hits="0"/>
<line number="437" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="438,445"/>
<line number="438" hits="0"/>
<line number="445" hits="0"/>
<line number="449" hits="0"/>
<line number="450" hits="0"/>
<line number="453" hits="0"/>
<line number="455" hits="0"/>
<line number="458" hits="0"/>
<line number="460" hits="0"/>
<line number="461" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,462"/>
<line number="462" hits="0"/>
<line number="463" hits="0"/>
<line number="464" hits="0"/>
<line number="466" hits="0"/>
<line number="468" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="469,470"/>
<line number="469" hits="0"/>
<line number="470" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="471,472"/>
<line number="471" hits="0"/>
<line number="472" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="473,474"/>
<line number="473" hits="0"/>
<line number="474" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,475"/>
<line number="475" hits="0"/>
<line number="477" hits="0"/>
<line number="479" hits="0"/>
<line number="482" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="483,487"/>
<line number="483" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="482,484"/>
<line number="484" hits="0"/>
<line number="485" hits="0"/>
<line number="487" hits="0"/>
<line number="489" hits="0"/>
<line number="492" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="493,496"/>
<line number="493" hits="0"/>
<line number="496" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="497,508"/>
<line number="497" hits="0"/>
<line number="498" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="499,501"/>
<line number="499" hits="0"/>
<line number="501" hits="0"/>
<line number="505" hits="0"/>
<line number="508" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="509,515"/>
<line number="509" hits="0"/>
<line number="511" hits="0"/>
<line number="513" hits="0"/>
<line number="515" hits="0"/>
<line number="517" hits="0"/>
<line number="519" hits="0"/>
<line number="521" hits="0"/>
<line number="523" hits="0"/>
<line number="524" hits="0"/>
<line number="526" hits="0"/>
<line number="527" hits="0"/>
<line number="528" hits="0"/>
<line number="529" hits="0"/>
<line number="532" hits="0"/>
<line number="533" hits="0"/>
<line number="534" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="535,540"/>
<line number="535" hits="0"/>
<line number="536" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="537,540"/>
<line number="537" hits="0"/>
<line number="540" hits="0"/>
<line number="543" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="544,548"/>
<line number="544" hits="0"/>
<line number="547" hits="0"/>
<line number="548" hits="0"/>
<line number="549" hits="0"/>
<line number="550" hits="0"/>
<line number="551" hits="0"/>
<line number="552" hits="0"/>
<line number="553" hits="0"/>
<line number="554" hits="0"/>
<line number="555" hits="0"/>
<line number="557" hits="0"/>
<line number="558" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="559,560"/>
<line number="559" hits="0"/>
<line number="560" hits="0"/>
<line number="561" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="562,563"/>
<line number="562" hits="0"/>
<line number="563" hits="0"/>
<line number="564" hits="0"/>
<line number="565" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="566,567"/>
<line number="566" hits="0"/>
<line number="567" hits="0"/>
<line number="570" hits="0"/>
<line number="571" hits="0"/>
<line number="572" hits="0"/>
<line number="573" hits="0"/>
<line number="574" hits="0"/>
<line number="576" hits="0"/>
<line number="577" hits="0"/>
<line number="579" hits="0"/>
<line number="580" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,581"/>
<line number="581" hits="0"/>
<line number="582" hits="0"/>
<line number="583" hits="0"/>
<line number="584" hits="0"/>
<line number="585" hits="0"/>
<line number="586" hits="0"/>
<line number="587" hits="0"/>
<line number="589" hits="0"/>
<line number="592" hits="0"/>
</lines>
</class>
<class name="diagnostics.py" filename="tui/screens/diagnostics.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="20" hits="0"/>
<line number="23" hits="0"/>
<line number="45" hits="0"/>
<line number="52" hits="0"/>
<line number="53" hits="0"/>
<line number="54" hits="0"/>
<line number="55" hits="0"/>
<line number="56" hits="0"/>
<line number="58" hits="0"/>
<line number="60" hits="0"/>
<line number="61" hits="0"/>
<line number="62" hits="0"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="67" hits="0"/>
<line number="68" hits="0"/>
<line number="69" hits="0"/>
<line number="70" hits="0"/>
<line number="73" hits="0"/>
<line number="75" hits="0"/>
<line number="76" hits="0"/>
<line number="77" hits="0"/>
<line number="79" hits="0"/>
<line number="81" hits="0"/>
<line number="84" hits="0"/>
<line number="85" hits="0"/>
<line number="86" hits="0"/>
<line number="87" hits="0"/>
<line number="89" hits="0"/>
<line number="91" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="92,93"/>
<line number="92" hits="0"/>
<line number="93" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="94,95"/>
<line number="94" hits="0"/>
<line number="95" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="96,97"/>
<line number="96" hits="0"/>
<line number="97" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="98,99"/>
<line number="98" hits="0"/>
<line number="99" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="100,101"/>
<line number="100" hits="0"/>
<line number="101" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="102,103"/>
<line number="102" hits="0"/>
<line number="103" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,104"/>
<line number="104" hits="0"/>
<line number="106" hits="0"/>
<line number="108" hits="0"/>
<line number="110" hits="0"/>
<line number="112" hits="0"/>
<line number="114" hits="0"/>
<line number="116" hits="0"/>
<line number="117" hits="0"/>
<line number="118" hits="0"/>
<line number="119" hits="0"/>
<line number="121" hits="0"/>
<line number="122" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="123,126"/>
<line number="123" hits="0"/>
<line number="124" hits="0"/>
<line number="126" hits="0"/>
<line number="127" hits="0"/>
<line number="129" hits="0"/>
<line number="130" hits="0"/>
<line number="131" hits="0"/>
<line number="132" hits="0"/>
<line number="133" hits="0"/>
<line number="134" hits="0"/>
<line number="136" hits="0"/>
<line number="141" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="142,145"/>
<line number="142" hits="0"/>
<line number="145" hits="0"/>
<line number="149" hits="0"/>
<line number="153" hits="0"/>
<line number="154" hits="0"/>
<line number="156" hits="0"/>
<line number="158" hits="0"/>
<line number="160" hits="0"/>
<line number="162" hits="0"/>
<line number="163" hits="0"/>
<line number="164" hits="0"/>
<line number="165" hits="0"/>
<line number="168" hits="0"/>
<line number="169" hits="0"/>
<line number="172" hits="0"/>
<line number="173" hits="0"/>
<line number="176" hits="0"/>
<line number="177" hits="0"/>
<line number="179" hits="0"/>
<line number="180" hits="0"/>
<line number="183" hits="0"/>
<line number="184" hits="0"/>
<line number="185" hits="0"/>
<line number="186" hits="0"/>
<line number="187" hits="0"/>
<line number="188" hits="0"/>
<line number="190" hits="0"/>
<line number="191" hits="0"/>
<line number="192" hits="0"/>
<line number="194" hits="0"/>
<line number="196" hits="0"/>
<line number="198" hits="0"/>
<line number="200" hits="0"/>
<line number="202" hits="0"/>
<line number="204" hits="0"/>
<line number="205" hits="0"/>
<line number="206" hits="0"/>
<line number="207" hits="0"/>
<line number="208" hits="0"/>
<line number="210" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="211,213"/>
<line number="211" hits="0"/>
<line number="213" hits="0"/>
<line number="215" hits="0"/>
<line number="217" hits="0"/>
<line number="218" hits="0"/>
<line number="221" hits="0"/>
<line number="222" hits="0"/>
<line number="223" hits="0"/>
<line number="226" hits="0"/>
<line number="228" hits="0"/>
<line number="230" hits="0"/>
<line number="233" hits="0"/>
<line number="234" hits="0"/>
<line number="235" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="236,246"/>
<line number="236" hits="0"/>
<line number="237" hits="0"/>
<line number="240" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="241,242"/>
<line number="241" hits="0"/>
<line number="242" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="243,244"/>
<line number="243" hits="0"/>
<line number="244" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="235,245"/>
<line number="245" hits="0"/>
<line number="246" hits="0"/>
<line number="249" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,250"/>
<line number="250" hits="0"/>
<line number="252" hits="0"/>
<line number="254" hits="0"/>
<line number="255" hits="0"/>
<line number="258" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="259,263"/>
<line number="259" hits="0"/>
<line number="260" hits="0"/>
<line number="263" hits="0"/>
<line number="264" hits="0"/>
<line number="267" hits="0"/>
<line number="268" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="269,271"/>
<line number="269" hits="0"/>
<line number="271" hits="0"/>
<line number="276" hits="0"/>
<line number="277" hits="0"/>
<line number="280" hits="0"/>
<line number="281" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="282,286"/>
<line number="282" hits="0"/>
<line number="283" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="284,291"/>
<line number="284" hits="0"/>
<line number="286" hits="0"/>
<line number="291" hits="0"/>
<line number="292" hits="0"/>
<line number="298" hits="0"/>
<line number="299" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="300,304"/>
<line number="300" hits="0"/>
<line number="301" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="302,308"/>
<line number="302" hits="0"/>
<line number="304" hits="0"/>
<line number="308" hits="0"/>
<line number="310" hits="0"/>
<line number="312" hits="0"/>
<line number="313" hits="0"/>
<line number="316" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="317,321"/>
<line number="317" hits="0"/>
<line number="318" hits="0"/>
<line number="321" hits="0"/>
<line number="322" hits="0"/>
<line number="325" hits="0"/>
<line number="326" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="327,329"/>
<line number="327" hits="0"/>
<line number="329" hits="0"/>
<line number="334" hits="0"/>
<line number="335" hits="0"/>
<line number="338" hits="0"/>
<line number="339" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="340,344"/>
<line number="340" hits="0"/>
<line number="341" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="342,349"/>
<line number="342" hits="0"/>
<line number="344" hits="0"/>
<line number="349" hits="0"/>
<line number="350" hits="0"/>
<line number="356" hits="0"/>
<line number="357" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="358,362"/>
<line number="358" hits="0"/>
<line number="359" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="360,366"/>
<line number="360" hits="0"/>
<line number="362" hits="0"/>
<line number="366" hits="0"/>
<line number="368" hits="0"/>
<line number="370" hits="0"/>
<line number="371" hits="0"/>
<line number="374" hits="0"/>
<line number="375" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="376,382"/>
<line number="376" hits="0"/>
<line number="377" hits="0"/>
<line number="378" hits="0"/>
<line number="379" hits="0"/>
<line number="382" hits="0"/>
<line number="383" hits="0"/>
<line number="388" hits="0"/>
<line number="391" hits="0"/>
<line number="393" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="394,413"/>
<line number="394" hits="0"/>
<line number="396" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="397,411"/>
<line number="397" hits="0"/>
<line number="398" hits="0"/>
<line number="399" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="400,409"/>
<line number="400" hits="0"/>
<line number="401" hits="0"/>
<line number="402" hits="0"/>
<line number="403" hits="0"/>
<line number="404" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="405,416"/>
<line number="405" hits="0"/>
<line number="406" hits="0"/>
<line number="407" hits="0"/>
<line number="409" hits="0"/>
<line number="411" hits="0"/>
<line number="413" hits="0"/>
<line number="416" hits="0"/>
<line number="417" hits="0"/>
<line number="422" hits="0"/>
<line number="425" hits="0"/>
<line number="427" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="428,449"/>
<line number="428" hits="0"/>
<line number="429" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="430,452"/>
<line number="430" hits="0"/>
<line number="431" hits="0"/>
<line number="432" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="433,447"/>
<line number="433" hits="0"/>
<line number="434" hits="0"/>
<line number="435" hits="0"/>
<line number="436" hits="0"/>
<line number="437" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="438,439"/>
<line number="438" hits="0"/>
<line number="439" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="440,441"/>
<line number="440" hits="0"/>
<line number="441" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="442,452"/>
<line number="442" hits="0"/>
<line number="443" hits="0"/>
<line number="444" hits="0"/>
<line number="445" hits="0"/>
<line number="447" hits="0"/>
<line number="449" hits="0"/>
<line number="452" hits="0"/>
<line number="453" hits="0"/>
<line number="458" hits="0"/>
<line number="461" hits="0"/>
<line number="463" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="464,483"/>
<line number="464" hits="0"/>
<line number="465" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="466,486"/>
<line number="466" hits="0"/>
<line number="467" hits="0"/>
<line number="468" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="469,481"/>
<line number="469" hits="0"/>
<line number="470" hits="0"/>
<line number="471" hits="0"/>
<line number="472" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="473,477"/>
<line number="473" hits="0"/>
<line number="474" hits="0"/>
<line number="475" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="476,477"/>
<line number="476" hits="0"/>
<line number="477" hits="0"/>
<line number="478" hits="0"/>
<line number="479" hits="0"/>
<line number="481" hits="0"/>
<line number="483" hits="0"/>
<line number="486" hits="0"/>
<line number="487" hits="0"/>
<line number="492" hits="0"/>
<line number="495" hits="0"/>
<line number="497" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="498,531"/>
<line number="498" hits="0"/>
<line number="499" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="500,534"/>
<line number="500" hits="0"/>
<line number="501" hits="0"/>
<line number="502" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="503,529"/>
<line number="503" hits="0"/>
<line number="504" hits="0"/>
<line number="505" hits="0"/>
<line number="506" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="507,524"/>
<line number="507" hits="0"/>
<line number="508" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="509,515"/>
<line number="509" hits="0"/>
<line number="510" hits="0"/>
<line number="511" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="512,513"/>
<line number="512" hits="0"/>
<line number="513" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="514,515"/>
<line number="514" hits="0"/>
<line number="515" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="516,519"/>
<line number="516" hits="0"/>
<line number="519" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="520,534"/>
<line number="520" hits="0"/>
<line number="521" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="522,534"/>
<line number="522" hits="0"/>
<line number="524" hits="0"/>
<line number="525" hits="0"/>
<line number="526" hits="0"/>
<line number="527" hits="0"/>
<line number="529" hits="0"/>
<line number="531" hits="0"/>
<line number="534" hits="0"/>
<line number="535" hits="0"/>
<line number="540" hits="0"/>
<line number="543" hits="0"/>
<line number="545" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="546,567"/>
<line number="546" hits="0"/>
<line number="547" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="548,569"/>
<line number="548" hits="0"/>
<line number="549" hits="0"/>
<line number="550" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="551,565"/>
<line number="551" hits="0"/>
<line number="552" hits="0"/>
<line number="553" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="554,569"/>
<line number="554" hits="0"/>
<line number="555" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="556,562"/>
<line number="556" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="557,558"/>
<line number="557" hits="0"/>
<line number="558" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="559,560"/>
<line number="559" hits="0"/>
<line number="560" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="555,561"/>
<line number="561" hits="0"/>
<line number="562" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="563,569"/>
<line number="563" hits="0"/>
<line number="565" hits="0"/>
<line number="567" hits="0"/>
<line number="569" hits="0"/>
</lines>
</class>
<class name="logs.py" filename="tui/screens/logs.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="16" hits="0"/>
<line number="19" hits="0"/>
<line number="39" hits="0"/>
<line number="54" hits="0"/>
<line number="55" hits="0"/>
<line number="56" hits="0"/>
<line number="57" hits="0"/>
<line number="60" hits="0"/>
<line number="68" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="69,71"/>
<line number="69" hits="0"/>
<line number="71" hits="0"/>
<line number="72" hits="0"/>
<line number="73" hits="0"/>
<line number="74" hits="0"/>
<line number="75" hits="0"/>
<line number="76" hits="0"/>
<line number="78" hits="0"/>
<line number="80" hits="0"/>
<line number="81" hits="0"/>
<line number="82" hits="0"/>
<line number="83" hits="0"/>
<line number="84" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="85,87"/>
<line number="85" hits="0"/>
<line number="86" hits="0"/>
<line number="87" hits="0"/>
<line number="89" hits="0"/>
<line number="91" hits="0"/>
<line number="97" hits="0"/>
<line number="99" hits="0"/>
<line number="102" hits="0"/>
<line number="103" hits="0"/>
<line number="105" hits="0"/>
<line number="106" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="113,118"/>
<line number="113" hits="0"/>
<line number="114" hits="0"/>
<line number="116" hits="0"/>
<line number="118" hits="0"/>
<line number="121" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="122,125"/>
<line number="122" hits="0"/>
<line number="125" hits="0"/>
<line number="126" hits="0"/>
<line number="127" hits="0"/>
<line number="128" hits="0"/>
<line number="130" hits="0"/>
<line number="132" hits="0"/>
<line number="133" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,134"/>
<line number="134" hits="0"/>
<line number="135" hits="0"/>
<line number="137" hits="0"/>
<line number="140" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="141,152"/>
<line number="141" hits="0"/>
<line number="142" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="143,148"/>
<line number="143" hits="0"/>
<line number="145" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="146,149"/>
<line number="146" hits="0"/>
<line number="148" hits="0"/>
<line number="149" hits="0"/>
<line number="152" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="153,156"/>
<line number="153" hits="0"/>
<line number="154" hits="0"/>
<line number="156" hits="0"/>
<line number="160" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="161,166"/>
<line number="161" hits="0"/>
<line number="163" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,164"/>
<line number="164" hits="0"/>
<line number="166" hits="0"/>
<line number="168" hits="0"/>
<line number="170" hits="0"/>
<line number="171" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,172"/>
<line number="172" hits="0"/>
<line number="176" hits="0"/>
<line number="179" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="180,209"/>
<line number="180" hits="0"/>
<line number="181" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="182,205"/>
<line number="182" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="183,186"/>
<line number="183" hits="0"/>
<line number="186" hits="0"/>
<line number="187" hits="0"/>
<line number="190" hits="0"/>
<line number="191" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="192,195"/>
<line number="192" hits="0"/>
<line number="193" hits="0"/>
<line number="195" hits="0"/>
<line number="197" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="181,198"/>
<line number="198" hits="0"/>
<line number="199" hits="0"/>
<line number="200" hits="0"/>
<line number="201" hits="0"/>
<line number="202" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="203,205"/>
<line number="203" hits="0"/>
<line number="205" hits="0"/>
<line number="206" hits="0"/>
<line number="209" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="210,212"/>
<line number="210" hits="0"/>
<line number="212" hits="0"/>
<line number="213" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="216,242"/>
<line number="216" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="217,220"/>
<line number="217" hits="0"/>
<line number="220" hits="0"/>
<line number="221" hits="0"/>
<line number="224" hits="0"/>
<line number="225" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="226,229"/>
<line number="226" hits="0"/>
<line number="227" hits="0"/>
<line number="229" hits="0"/>
<line number="231" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="213,232"/>
<line number="232" hits="0"/>
<line number="234" hits="0"/>
<line number="235" hits="0"/>
<line number="236" hits="0"/>
<line number="237" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="240,242"/>
<line number="240" hits="0"/>
<line number="242" hits="0"/>
<line number="244" hits="0"/>
<line number="246" hits="0"/>
<line number="247" hits="0"/>
<line number="249" hits="0"/>
<line number="251" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="252,254"/>
<line number="252" hits="0"/>
<line number="254" hits="0"/>
<line number="257" hits="0"/>
<line number="259" hits="0"/>
<line number="261" hits="0"/>
<line number="263" hits="0"/>
<line number="265" hits="0"/>
<line number="267" hits="0"/>
<line number="269" hits="0"/>
<line number="270" hits="0"/>
<line number="271" hits="0"/>
<line number="273" hits="0"/>
<line number="275" hits="0"/>
<line number="277" hits="0"/>
<line number="279" hits="0"/>
<line number="281" hits="0"/>
<line number="283" hits="0"/>
<line number="285" hits="0"/>
<line number="287" hits="0"/>
<line number="289" hits="0"/>
<line number="291" hits="0"/>
<line number="293" hits="0"/>
<line number="295" hits="0"/>
<line number="297" hits="0"/>
<line number="299" hits="0"/>
<line number="302" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="303,305"/>
<line number="303" hits="0"/>
<line number="304" hits="0"/>
<line number="305" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="306,308"/>
<line number="306" hits="0"/>
<line number="307" hits="0"/>
<line number="308" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,309"/>
<line number="309" hits="0"/>
<line number="310" hits="0"/>
<line number="312" hits="0"/>
<line number="314" hits="0"/>
<line number="315" hits="0"/>
<line number="317" hits="0"/>
<line number="319" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="320,322"/>
<line number="320" hits="0"/>
<line number="322" hits="0"/>
<line number="323" hits="0"/>
<line number="325" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="326,332"/>
<line number="326" hits="0"/>
<line number="327" hits="0"/>
<line number="328" hits="0"/>
<line number="329" hits="0"/>
<line number="330" hits="0"/>
<line number="332" hits="0"/>
<line number="333" hits="0"/>
<line number="334" hits="0"/>
<line number="335" hits="0"/>
<line number="336" hits="0"/>
<line number="337" hits="0"/>
<line number="339" hits="0"/>
<line number="341" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,342"/>
<line number="342" hits="0"/>
<line number="344" hits="0"/>
<line number="346" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="347,349"/>
<line number="347" hits="0"/>
<line number="349" hits="0"/>
<line number="350" hits="0"/>
<line number="351" hits="0"/>
<line number="352" hits="0"/>
<line number="353" hits="0"/>
<line number="354" hits="0"/>
<line number="356" hits="0"/>
</lines>
</class>
<class name="monitor.py" filename="tui/screens/monitor.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="8" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="16" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="25" hits="0"/>
<line number="28" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
<line number="43" hits="0"/>
<line number="44" hits="0"/>
<line number="45" hits="0"/>
<line number="46" hits="0"/>
<line number="47" hits="0"/>
<line number="48" hits="0"/>
<line number="49" hits="0"/>
<line number="50" hits="0"/>
<line number="53" hits="0"/>
<line number="55" hits="0"/>
<line number="57" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="58,59"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="60" hits="0"/>
<line number="61" hits="0"/>
<line number="63" hits="0"/>
<line number="66" hits="0"/>
<line number="68" hits="0"/>
<line number="70" hits="0"/>
<line number="73" hits="0"/>
<line number="81" hits="0"/>
<line number="82" hits="0"/>
<line number="83" hits="0"/>
<line number="84" hits="0"/>
<line number="85" hits="0"/>
<line number="86" hits="0"/>
<line number="89" hits="0"/>
<line number="91" hits="0"/>
<line number="93" hits="0"/>
<line number="94" hits="0"/>
<line number="97" hits="0"/>
<line number="98" hits="0"/>
<line number="101" hits="0"/>
<line number="103" hits="0"/>
<line number="105" hits="0"/>
<line number="106" hits="0"/>
<line number="107" hits="0"/>
<line number="109" hits="0"/>
<line number="111" hits="0"/>
<line number="113" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="114,122"/>
<line number="114" hits="0"/>
<line number="117" hits="0"/>
<line number="120" hits="0"/>
<line number="122" hits="0"/>
<line number="124" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="125,126"/>
<line number="125" hits="0"/>
<line number="126" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="127,129"/>
<line number="127" hits="0"/>
<line number="129" hits="0"/>
<line number="131" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="132,135"/>
<line number="132" hits="0"/>
<line number="135" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="136,140"/>
<line number="136" hits="0"/>
<line number="137" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="138,140"/>
<line number="138" hits="0"/>
<line number="140" hits="0"/>
<line number="142" hits="0"/>
<line number="144" hits="0"/>
<line number="146" hits="0"/>
<line number="148" hits="0"/>
<line number="150" hits="0"/>
<line number="152" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="153,155"/>
<line number="153" hits="0"/>
<line number="155" hits="0"/>
<line number="157" hits="0"/>
<line number="160" hits="0"/>
<line number="162" hits="0"/>
<line number="164" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="165,167"/>
<line number="165" hits="0"/>
<line number="167" hits="0"/>
<line number="169" hits="0"/>
<line number="170" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="171,175"/>
<line number="171" hits="0"/>
<line number="172" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="170,173"/>
<line number="173" hits="0"/>
<line number="175" hits="0"/>
<line number="176" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="179,183"/>
<line number="179" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="176,180"/>
<line number="180" hits="0"/>
<line number="181" hits="0"/>
<line number="182" hits="0"/>
<line number="183" hits="0"/>
<line number="185" hits="0"/>
<line number="188" hits="0"/>
<line number="189" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="190,191"/>
<line number="190" hits="0"/>
<line number="191" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="192,195"/>
<line number="192" hits="0"/>
<line number="195" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="196,208"/>
<line number="196" hits="0"/>
<line number="198" hits="0"/>
<line number="208" hits="0"/>
<line number="209" hits="0"/>
<line number="210" hits="0"/>
<line number="211" hits="0"/>
<line number="212" hits="0"/>
<line number="213" hits="0"/>
<line number="215" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="216,227"/>
<line number="216" hits="0"/>
<line number="224" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="225,227"/>
<line number="225" hits="0"/>
<line number="227" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="228,231"/>
<line number="228" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="229,231"/>
<line number="229" hits="0"/>
<line number="231" hits="0"/>
<line number="233" hits="0"/>
<line number="235" hits="0"/>
<line number="237" hits="0"/>
<line number="246" hits="0"/>
<line number="248" hits="0"/>
<line number="250" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,251"/>
<line number="251" hits="0"/>
<line number="253" hits="0"/>
<line number="255" hits="0"/>
<line number="256" hits="0"/>
<line number="259" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="260,261"/>
<line number="260" hits="0"/>
<line number="261" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="262,263"/>
<line number="262" hits="0"/>
<line number="263" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="264,265"/>
<line number="264" hits="0"/>
<line number="265" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="266,267"/>
<line number="266" hits="0"/>
<line number="267" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="268,269"/>
<line number="268" hits="0"/>
<line number="269" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="270,271"/>
<line number="270" hits="0"/>
<line number="271" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="272,273"/>
<line number="272" hits="0"/>
<line number="273" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="274,275"/>
<line number="274" hits="0"/>
<line number="275" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="276,277"/>
<line number="276" hits="0"/>
<line number="277" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="278,279"/>
<line number="278" hits="0"/>
<line number="279" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="280,281"/>
<line number="280" hits="0"/>
<line number="281" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,283"/>
<line number="283" hits="0"/>
<line number="291" hits="0"/>
<line number="293" hits="0"/>
<line number="294" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,296"/>
<line number="296" hits="0"/>
<line number="297" hits="0"/>
<line number="299" hits="0"/>
<line number="301" hits="0"/>
<line number="302" hits="0"/>
<line number="304" hits="0"/>
<line number="305" hits="0"/>
<line number="310" hits="0"/>
<line number="312" hits="0"/>
<line number="314" hits="0"/>
<line number="316" hits="0"/>
<line number="317" hits="0"/>
<line number="319" hits="0"/>
<line number="320" hits="0"/>
<line number="325" hits="0"/>
<line number="327" hits="0"/>
<line number="329" hits="0"/>
<line number="331" hits="0"/>
<line number="332" hits="0"/>
<line number="334" hits="0"/>
<line number="335" hits="0"/>
<line number="340" hits="0"/>
<line number="342" hits="0"/>
<line number="344" hits="0"/>
<line number="346" hits="0"/>
<line number="347" hits="0"/>
<line number="349" hits="0"/>
<line number="350" hits="0"/>
<line number="355" hits="0"/>
<line number="357" hits="0"/>
<line number="359" hits="0"/>
<line number="361" hits="0"/>
<line number="362" hits="0"/>
<line number="364" hits="0"/>
<line number="365" hits="0"/>
<line number="370" hits="0"/>
<line number="372" hits="0"/>
<line number="374" hits="0"/>
<line number="376" hits="0"/>
<line number="377" hits="0"/>
<line number="378" hits="0"/>
<line number="379" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="380,382"/>
<line number="380" hits="0"/>
<line number="382" hits="0"/>
<line number="384" hits="0"/>
<line number="385" hits="0"/>
<line number="386" hits="0"/>
<line number="388" hits="0"/>
<line number="390" hits="0"/>
<line number="392" hits="0"/>
<line number="393" hits="0"/>
<line number="394" hits="0"/>
<line number="395" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="396,398"/>
<line number="396" hits="0"/>
<line number="398" hits="0"/>
<line number="400" hits="0"/>
<line number="401" hits="0"/>
<line number="402" hits="0"/>
<line number="404" hits="0"/>
<line number="406" hits="0"/>
<line number="408" hits="0"/>
<line number="409" hits="0"/>
<line number="410" hits="0"/>
<line number="411" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="412,414"/>
<line number="412" hits="0"/>
<line number="414" hits="0"/>
<line number="416" hits="0"/>
<line number="417" hits="0"/>
<line number="418" hits="0"/>
<line number="420" hits="0"/>
<line number="422" hits="0"/>
<line number="424" hits="0"/>
<line number="425" hits="0"/>
<line number="427" hits="0"/>
<line number="429" hits="0"/>
<line number="430" hits="0"/>
<line number="432" hits="0"/>
<line number="434" hits="0"/>
<line number="436" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="438,455"/>
<line number="438" hits="0"/>
<line number="440" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="441,443"/>
<line number="441" hits="0"/>
<line number="443" hits="0"/>
<line number="444" hits="0"/>
<line number="446" hits="0"/>
<line number="448" hits="0"/>
<line number="449" hits="0"/>
<line number="451" hits="0"/>
<line number="452" hits="0"/>
<line number="453" hits="0"/>
<line number="455" hits="0"/>
<line number="461" hits="0"/>
<line number="462" hits="0"/>
<line number="463" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="464,468"/>
<line number="464" hits="0"/>
<line number="465" hits="0"/>
<line number="466" hits="0"/>
<line number="467" hits="0"/>
<line number="468" hits="0"/>
<line number="469" hits="0"/>
<line number="471" hits="0"/>
<line number="473" hits="0"/>
<line number="474" hits="0"/>
<line number="475" hits="0"/>
<line number="477" hits="0"/>
<line number="479" hits="0"/>
<line number="480" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="481,482"/>
<line number="481" hits="0"/>
<line number="482" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="483,484"/>
<line number="483" hits="0"/>
<line number="484" hits="0"/>
<line number="485" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,486"/>
<line number="486" hits="0"/>
<line number="487" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="488,489"/>
<line number="488" hits="0"/>
<line number="489" hits="0"/>
<line number="491" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="492,493"/>
<line number="492" hits="0"/>
<line number="493" hits="0"/>
<line number="494" hits="0"/>
<line number="495" hits="0"/>
<line number="496" hits="0"/>
<line number="498" hits="0"/>
<line number="499" hits="0"/>
<line number="500" hits="0"/>
<line number="501" hits="0"/>
<line number="502" hits="0"/>
<line number="506" hits="0"/>
<line number="508" hits="0"/>
<line number="510" hits="0"/>
<line number="512" hits="0"/>
<line number="514" hits="0"/>
<line number="515" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="516,518"/>
<line number="516" hits="0"/>
<line number="518" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="519,521"/>
<line number="519" hits="0"/>
<line number="521" hits="0"/>
<line number="522" hits="0"/>
<line number="523" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="524,526"/>
<line number="524" hits="0"/>
<line number="526" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="527,529"/>
<line number="527" hits="0"/>
<line number="528" hits="0"/>
<line number="529" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,530"/>
<line number="530" hits="0"/>
<line number="531" hits="0"/>
<line number="532" hits="0"/>
<line number="534" hits="0"/>
<line number="536" hits="0"/>
<line number="538" hits="0"/>
<line number="539" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="540,543"/>
<line number="540" hits="0"/>
<line number="541" hits="0"/>
<line number="543" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="544,546"/>
<line number="544" hits="0"/>
<line number="546" hits="0"/>
<line number="547" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="548,550"/>
<line number="548" hits="0"/>
<line number="550" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="551,554"/>
<line number="551" hits="0"/>
<line number="554" hits="0"/>
<line number="556" hits="0"/>
<line number="557" hits="0"/>
<line number="558" hits="0"/>
<line number="560" hits="0"/>
<line number="562" hits="0"/>
<line number="563" hits="0"/>
<line number="564" hits="0"/>
<line number="565" hits="0"/>
<line number="566" hits="0"/>
<line number="567" hits="0"/>
<line number="568" hits="0"/>
<line number="569" hits="0"/>
<line number="570" hits="0"/>
<line number="572" hits="0"/>
<line number="574" hits="0"/>
<line number="575" hits="0"/>
<line number="576" hits="0"/>
<line number="577" hits="0"/>
<line number="581" hits="0"/>
<line number="582" hits="0"/>
<line number="583" hits="0"/>
<line number="584" hits="0"/>
<line number="588" hits="0"/>
<line number="590" hits="0"/>
<line number="592" hits="0"/>
<line number="595" hits="0"/>
<line number="598" hits="0"/>
<line number="602" hits="0"/>
<line number="604" hits="0"/>
<line number="607" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="609,617"/>
<line number="609" hits="0"/>
<line number="612" hits="0"/>
<line number="617" hits="0"/>
<line number="622" hits="0"/>
<line number="625" hits="0"/>
<line number="627" hits="0"/>
<line number="628" hits="0"/>
<line number="633" hits="0"/>
<line number="635" hits="0"/>
<line number="637" hits="0"/>
<line number="639" hits="0"/>
<line number="642" hits="0"/>
<line number="645" hits="0"/>
<line number="646" hits="0"/>
<line number="649" hits="0"/>
<line number="650" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="651,658"/>
<line number="651" hits="0"/>
<line number="654" hits="0"/>
<line number="658" hits="0"/>
<line number="662" hits="0"/>
<line number="663" hits="0"/>
<line number="667" hits="0"/>
<line number="669" hits="0"/>
<line number="671" hits="0"/>
<line number="673" hits="0"/>
<line number="675" hits="0"/>
<line number="677" hits="0"/>
<line number="679" hits="0"/>
<line number="681" hits="0"/>
<line number="683" hits="0"/>
<line number="685" hits="0"/>
<line number="687" hits="0"/>
<line number="689" hits="0"/>
<line number="690" hits="0"/>
<line number="691" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="693,697"/>
<line number="693" hits="0"/>
<line number="694" hits="0"/>
<line number="695" hits="0"/>
<line number="697" hits="0"/>
<line number="698" hits="0"/>
<line number="699" hits="0"/>
<line number="701" hits="0"/>
<line number="703" hits="0"/>
<line number="704" hits="0"/>
<line number="706" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="707,711"/>
<line number="707" hits="0"/>
<line number="708" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="709,711"/>
<line number="709" hits="0"/>
<line number="711" hits="0"/>
<line number="712" hits="0"/>
<line number="713" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="714,716"/>
<line number="714" hits="0"/>
<line number="716" hits="0"/>
<line number="717" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="718,720"/>
<line number="718" hits="0"/>
<line number="720" hits="0"/>
<line number="721" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="722,724"/>
<line number="722" hits="0"/>
<line number="724" hits="0"/>
<line number="725" hits="0"/>
<line number="732" hits="0"/>
<line number="733" hits="0"/>
<line number="734" hits="0"/>
<line number="735" hits="0"/>
<line number="737" hits="0"/>
<line number="739" hits="0"/>
<line number="741" hits="0"/>
<line number="743" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="744,745"/>
<line number="744" hits="0"/>
<line number="745" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,746"/>
<line number="746" hits="0"/>
<line number="747" hits="0"/>
<line number="749" hits="0"/>
<line number="751" hits="0"/>
<line number="753" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="754,755"/>
<line number="754" hits="0"/>
<line number="755" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="756,757"/>
<line number="756" hits="0"/>
<line number="757" hits="0"/>
<line number="759" hits="0"/>
<line number="761" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="762,764"/>
<line number="762" hits="0"/>
<line number="764" hits="0"/>
<line number="765" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="766,771"/>
<line number="766" hits="0"/>
<line number="767" hits="0"/>
<line number="768" hits="0"/>
<line number="769" hits="0"/>
<line number="771" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="772,774"/>
<line number="772" hits="0"/>
<line number="774" hits="0"/>
<line number="775" hits="0"/>
<line number="776" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="777,781"/>
<line number="777" hits="0"/>
<line number="778" hits="0"/>
<line number="779" hits="0"/>
<line number="781" hits="0"/>
<line number="783" hits="0"/>
<line number="785" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="786,788"/>
<line number="786" hits="0"/>
<line number="788" hits="0"/>
<line number="789" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="790,792"/>
<line number="790" hits="0"/>
<line number="792" hits="0"/>
<line number="793" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="794,796"/>
<line number="794" hits="0"/>
<line number="796" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="797,799"/>
<line number="797" hits="0"/>
<line number="799" hits="0"/>
<line number="801" hits="0"/>
<line number="803" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="804,806"/>
<line number="804" hits="0"/>
<line number="806" hits="0"/>
<line number="807" hits="0"/>
<line number="808" hits="0"/>
<line number="809" hits="0"/>
<line number="810" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,811"/>
<line number="811" hits="0"/>
<line number="812" hits="0"/>
<line number="813" hits="0"/>
<line number="814" hits="0"/>
<line number="816" hits="0"/>
<line number="818" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="819,821"/>
<line number="819" hits="0"/>
<line number="821" hits="0"/>
<line number="822" hits="0"/>
<line number="823" hits="0"/>
<line number="825" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="826,838"/>
<line number="826" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="827,828"/>
<line number="827" hits="0"/>
<line number="828" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="830,834"/>
<line number="830" hits="0"/>
<line number="831" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="832,838"/>
<line number="832" hits="0"/>
<line number="834" hits="0"/>
<line number="835" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="836,838"/>
<line number="836" hits="0"/>
<line number="838" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,839"/>
<line number="839" hits="0"/>
<line number="840" hits="0"/>
<line number="841" hits="0"/>
<line number="843" hits="0"/>
<line number="845" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="846,848"/>
<line number="846" hits="0"/>
<line number="848" hits="0"/>
<line number="849" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="850,852"/>
<line number="850" hits="0"/>
<line number="852" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="853,855"/>
<line number="853" hits="0"/>
<line number="855" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,856"/>
<line number="856" hits="0"/>
<line number="857" hits="0"/>
<line number="858" hits="0"/>
</lines>
</class>
<class name="welcome.py" filename="tui/screens/welcome.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="16" hits="0"/>
<line number="19" hits="0"/>
<line number="22" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0"/>
<line number="39" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
<line number="45" hits="0"/>
<line number="48" hits="0"/>
<line number="52" hits="0"/>
<line number="55" hits="0"/>
<line number="57" hits="0"/>
<line number="65" hits="0"/>
<line number="67" hits="0"/>
<line number="69" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="70,74"/>
<line number="70" hits="0"/>
<line number="71" hits="0"/>
<line number="72" hits="0"/>
<line number="74" hits="0"/>
<line number="76" hits="0"/>
<line number="77" hits="0"/>
<line number="84" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="85,99"/>
<line number="85" hits="0"/>
<line number="86" hits="0"/>
<line number="87" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="88,96"/>
<line number="88" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="87,89"/>
<line number="89" hits="0"/>
<line number="90" hits="0"/>
<line number="91" hits="0"/>
<line number="92" hits="0"/>
<line number="93" hits="0"/>
<line number="96" hits="0"/>
<line number="97" hits="0"/>
<line number="99" hits="0"/>
<line number="100" hits="0"/>
<line number="102" hits="0"/>
<line number="105" hits="0"/>
<line number="107" hits="0"/>
<line number="109" hits="0"/>
<line number="110" hits="0"/>
<line number="118" hits="0"/>
<line number="119" hits="0"/>
<line number="122" hits="0"/>
<line number="124" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="125,128"/>
<line number="125" hits="0"/>
<line number="128" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="129,132"/>
<line number="129" hits="0"/>
<line number="132" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="133,138"/>
<line number="133" hits="0"/>
<line number="138" hits="0"/>
<line number="139" hits="0"/>
<line number="141" hits="0"/>
<line number="144" hits="0"/>
<line number="148" hits="0"/>
<line number="151" hits="0"/>
<line number="153" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="155,163"/>
<line number="155" hits="0"/>
<line number="158" hits="0"/>
<line number="163" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="165,170"/>
<line number="165" hits="0"/>
<line number="170" hits="0"/>
<line number="173" hits="0"/>
<line number="177" hits="0"/>
<line number="182" hits="0"/>
<line number="186" hits="0"/>
<line number="188" hits="0"/>
<line number="191" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="192,199"/>
<line number="192" hits="0"/>
<line number="193" hits="0"/>
<line number="196" hits="0"/>
<line number="199" hits="0"/>
<line number="203" hits="0"/>
<line number="208" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="209,210"/>
<line number="209" hits="0"/>
<line number="210" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="211,213"/>
<line number="211" hits="0"/>
<line number="213" hits="0"/>
<line number="216" hits="0"/>
<line number="217" hits="0"/>
<line number="218" hits="0"/>
<line number="219" hits="0"/>
<line number="220" hits="0"/>
<line number="224" hits="0"/>
<line number="226" hits="0"/>
<line number="228" hits="0"/>
<line number="229" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="230,231"/>
<line number="230" hits="0"/>
<line number="231" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="232,234"/>
<line number="232" hits="0"/>
<line number="234" hits="0"/>
<line number="235" hits="0"/>
<line number="236" hits="0"/>
<line number="238" hits="0"/>
<line number="240" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="241,242"/>
<line number="241" hits="0"/>
<line number="242" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="243,244"/>
<line number="243" hits="0"/>
<line number="244" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="245,246"/>
<line number="245" hits="0"/>
<line number="246" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="247,248"/>
<line number="247" hits="0"/>
<line number="248" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="249,250"/>
<line number="249" hits="0"/>
<line number="250" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="251,252"/>
<line number="251" hits="0"/>
<line number="252" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,253"/>
<line number="253" hits="0"/>
<line number="255" hits="0"/>
<line number="257" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="258,259"/>
<line number="258" hits="0"/>
<line number="259" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="260,262"/>
<line number="260" hits="0"/>
<line number="262" hits="0"/>
<line number="264" hits="0"/>
<line number="266" hits="0"/>
<line number="268" hits="0"/>
<line number="270" hits="0"/>
<line number="272" hits="0"/>
<line number="274" hits="0"/>
<line number="276" hits="0"/>
<line number="278" hits="0"/>
<line number="280" hits="0"/>
<line number="282" hits="0"/>
<line number="284" hits="0"/>
<line number="286" hits="0"/>
<line number="288" hits="0"/>
<line number="290" hits="0"/>
<line number="292" hits="0"/>
<line number="294" hits="0"/>
<line number="296" hits="0"/>
<line number="299" hits="0"/>
<line number="302" hits="0"/>
<line number="306" hits="0"/>
<line number="308" hits="0"/>
<line number="310" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="311,312"/>
<line number="311" hits="0"/>
<line number="312" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="313,315"/>
<line number="313" hits="0"/>
<line number="315" hits="0"/>
<line number="317" hits="0"/>
<line number="319" hits="0"/>
<line number="321" hits="0"/>
<line number="322" hits="0"/>
<line number="323" hits="0"/>
<line number="325" hits="0"/>
<line number="328" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="329,331"/>
<line number="329" hits="0"/>
<line number="331" hits="0"/>
<line number="332" hits="0"/>
<line number="334" hits="0"/>
<line number="336" hits="0"/>
<line number="338" hits="0"/>
<line number="341" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="342,350"/>
<line number="342" hits="0"/>
<line number="343" hits="0"/>
<line number="348" hits="0"/>
<line number="350" hits="0"/>
<line number="352" hits="0"/>
<line number="354" hits="0"/>
<line number="357" hits="0"/>
<line number="360" hits="0"/>
<line number="362" hits="0"/>
<line number="364" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="365,372"/>
<line number="365" hits="0"/>
<line number="366" hits="0"/>
<line number="367" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="368,370"/>
<line number="368" hits="0"/>
<line number="370" hits="0"/>
<line number="372" hits="0"/>
<line number="375" hits="0"/>
<line number="376" hits="0"/>
<line number="378" hits="0"/>
<line number="381" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="382,391"/>
<line number="382" hits="0"/>
<line number="383" hits="0"/>
<line number="388" hits="0"/>
<line number="391" hits="0"/>
<line number="393" hits="0"/>
<line number="396" hits="0"/>
<line number="399" hits="0"/>
<line number="401" hits="0"/>
<line number="403" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="404,411"/>
<line number="404" hits="0"/>
<line number="405" hits="0"/>
<line number="406" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="407,409"/>
<line number="407" hits="0"/>
<line number="409" hits="0"/>
<line number="411" hits="0"/>
<line number="414" hits="0"/>
<line number="415" hits="0"/>
<line number="417" hits="0"/>
<line number="419" hits="0"/>
<line number="420" hits="0"/>
<line number="421" hits="0"/>
<line number="422" hits="0"/>
<line number="423" hits="0"/>
<line number="424" hits="0"/>
<line number="426" hits="0"/>
<line number="428" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="tui.utils" line-rate="0" branch-rate="0" complexity="0">
<classes>
<class name="__init__.py" filename="tui/utils/__init__.py" complexity="0" line-rate="1" branch-rate="1">
<methods/>
<lines/>
</class>
<class name="clipboard.py" filename="tui/utils/clipboard.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="10" hits="0"/>
<line number="16" hits="0"/>
<line number="17" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0"/>
<line number="23" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="31,34"/>
<line number="31" hits="0"/>
<line number="32" hits="0"/>
<line number="33" hits="0"/>
<line number="34" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="35,38"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="39,47"/>
<line number="39" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="40,46"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="42" hits="0"/>
<line number="43" hits="0"/>
<line number="44" hits="0"/>
<line number="45" hits="0"/>
<line number="46" hits="0"/>
<line number="47" hits="0"/>
</lines>
</class>
<class name="platform.py" filename="tui/utils/platform.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="11" hits="0"/>
<line number="12" hits="0"/>
<line number="13" hits="0"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0"/>
<line number="22" hits="0"/>
<line number="23" hits="0"/>
<line number="26" hits="0"/>
<line number="29" hits="0"/>
<line number="30" hits="0"/>
<line number="31" hits="0"/>
<line number="33" hits="0"/>
<line number="36" hits="0"/>
<line number="39" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="40,68"/>
<line number="40" hits="0"/>
<line number="41" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="43,59"/>
<line number="43" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="44,50"/>
<line number="44" hits="0"/>
<line number="50" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="51,59"/>
<line number="51" hits="0"/>
<line number="59" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="60,68"/>
<line number="60" hits="0"/>
<line number="68" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="69,73"/>
<line number="69" hits="0"/>
<line number="70" hits="0"/>
<line number="73" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="74,79"/>
<line number="74" hits="0"/>
<line number="75" hits="0"/>
<line number="79" hits="0"/>
<line number="81" hits="0"/>
<line number="83" hits="0"/>
<line number="84" hits="0"/>
<line number="87" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="90,93"/>
<line number="90" hits="0"/>
<line number="91" hits="0"/>
<line number="92" hits="0"/>
<line number="93" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="97,103"/>
<line number="97" hits="0"/>
<line number="98" hits="0"/>
<line number="99" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="93,100"/>
<line number="100" hits="0"/>
<line number="101" hits="0"/>
<line number="102" hits="0"/>
<line number="103" hits="0"/>
<line number="105" hits="0"/>
<line number="106" hits="0"/>
<line number="107" hits="0"/>
<line number="108" hits="0"/>
<line number="109" hits="0"/>
<line number="110" hits="0"/>
<line number="112" hits="0"/>
<line number="113" hits="0"/>
<line number="114" hits="0"/>
<line number="117" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="118,121"/>
<line number="118" hits="0"/>
<line number="119" hits="0"/>
<line number="120" hits="0"/>
<line number="121" hits="0"/>
<line number="123" hits="0"/>
<line number="124" hits="0"/>
<line number="125" hits="0"/>
<line number="128" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="129,132"/>
<line number="129" hits="0"/>
<line number="130" hits="0"/>
<line number="131" hits="0"/>
<line number="132" hits="0"/>
<line number="134" hits="0"/>
<line number="140" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="141,142"/>
<line number="141" hits="0"/>
<line number="142" hits="0"/>
<line number="143" hits="0"/>
<line number="149" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="150,151"/>
<line number="150" hits="0"/>
<line number="151" hits="0"/>
<line number="152" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="153,154"/>
<line number="153" hits="0"/>
<line number="154" hits="0"/>
<line number="155" hits="0"/>
<line number="156" hits="0"/>
<line number="157" hits="0"/>
<line number="158" hits="0"/>
<line number="159" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="160,161"/>
<line number="160" hits="0"/>
<line number="161" hits="0"/>
<line number="162" hits="0"/>
<line number="167" hits="0"/>
<line number="169" hits="0"/>
<line number="170" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="171,182"/>
<line number="171" hits="0"/>
<line number="182" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="183,194"/>
<line number="183" hits="0"/>
<line number="194" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="195,205"/>
<line number="195" hits="0"/>
<line number="205" hits="0"/>
</lines>
</class>
<class name="validation.py" filename="tui/utils/validation.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="9" hits="0"/>
<line number="12" hits="0"/>
<line number="15" hits="0"/>
<line number="17" hits="0"/>
<line number="20" hits="0"/>
<line number="24" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="25,27"/>
<line number="25" hits="0"/>
<line number="27" hits="0"/>
<line number="28" hits="0"/>
<line number="30" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="31,33"/>
<line number="31" hits="0"/>
<line number="33" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="34,36"/>
<line number="34" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="38" hits="0"/>
<line number="41" hits="0"/>
<line number="43" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="44,46"/>
<line number="44" hits="0"/>
<line number="46" hits="0"/>
<line number="56" hits="0"/>
<line number="59" hits="0"/>
<line number="61" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="62,63"/>
<line number="62" hits="0"/>
<line number="63" hits="0"/>
<line number="66" hits="0"/>
<line number="68" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="69,70"/>
<line number="69" hits="0"/>
<line number="70" hits="0"/>
<line number="73" hits="0"/>
<line number="75" hits="0"/>
<line number="78" hits="0"/>
<line number="81" hits="0"/>
<line number="84" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="85,90"/>
<line number="85" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="88,90"/>
<line number="88" hits="0"/>
<line number="90" hits="0"/>
<line number="93" hits="0"/>
<line number="100" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="101,103"/>
<line number="101" hits="0"/>
<line number="103" hits="0"/>
<line number="105" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="106,108"/>
<line number="106" hits="0"/>
<line number="108" hits="0"/>
<line number="110" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="111,139"/>
<line number="111" hits="0"/>
<line number="112" hits="0"/>
<line number="115" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="117,123"/>
<line number="117" hits="0"/>
<line number="118" hits="0"/>
<line number="119" hits="0"/>
<line number="120" hits="0"/>
<line number="123" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="124,127"/>
<line number="124" hits="0"/>
<line number="127" hits="0"/>
<line number="128" hits="0"/>
<line number="129" hits="0"/>
<line number="130" hits="0"/>
<line number="131" hits="0"/>
<line number="132" hits="0"/>
<line number="134" hits="0"/>
<line number="136" hits="0"/>
<line number="137" hits="0"/>
<line number="139" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="tui.widgets" line-rate="0" branch-rate="0" complexity="0">
<classes>
<class name="__init__.py" filename="tui/widgets/__init__.py" complexity="0" line-rate="1" branch-rate="1">
<methods/>
<lines/>
</class>
<class name="command_modal.py" filename="tui/widgets/command_modal.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="7" hits="0"/>
<line number="8" hits="0"/>
<line number="9" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0"/>
<line number="16" hits="0"/>
<line number="19" hits="0"/>
<line number="77" hits="0"/>
<line number="90" hits="0"/>
<line number="91" hits="0"/>
<line number="92" hits="0"/>
<line number="93" hits="0"/>
<line number="94" hits="0"/>
<line number="95" hits="0"/>
<line number="97" hits="0"/>
<line number="99" hits="0"/>
<line number="100" hits="0"/>
<line number="101" hits="0"/>
<line number="102" hits="0"/>
<line number="108" hits="0"/>
<line number="109" hits="0"/>
<line number="110" hits="0"/>
<line number="113" hits="0"/>
<line number="115" hits="0"/>
<line number="118" hits="0"/>
<line number="120" hits="0"/>
<line number="121" hits="0"/>
<line number="122" hits="0"/>
<line number="123" hits="0"/>
<line number="125" hits="0"/>
<line number="127" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,128"/>
<line number="128" hits="0"/>
<line number="129" hits="0"/>
<line number="131" hits="0"/>
<line number="133" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="134,135"/>
<line number="134" hits="0"/>
<line number="135" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,136"/>
<line number="136" hits="0"/>
<line number="138" hits="0"/>
<line number="140" hits="0"/>
<line number="141" hits="0"/>
<line number="143" hits="0"/>
<line number="144" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="145,170"/>
<line number="145" hits="0"/>
<line number="146" hits="0"/>
<line number="147" hits="0"/>
<line number="150" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="144,151"/>
<line number="151" hits="0"/>
<line number="152" hits="0"/>
<line number="153" hits="0"/>
<line number="155" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="144,156"/>
<line number="156" hits="0"/>
<line number="158" hits="0"/>
<line number="159" hits="0"/>
<line number="160" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,161"/>
<line number="161" hits="0"/>
<line number="163" hits="0"/>
<line number="164" hits="0"/>
<line number="165" hits="0"/>
<line number="166" hits="0"/>
<line number="167" hits="0"/>
<line number="170" hits="0"/>
<line number="171" hits="0"/>
<line number="172" hits="0"/>
<line number="174" hits="0"/>
<line number="176" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="177,178"/>
<line number="177" hits="0"/>
<line number="178" hits="0"/>
<line number="179" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="180,181"/>
<line number="180" hits="0"/>
<line number="181" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="182,184"/>
<line number="182" hits="0"/>
<line number="184" hits="0"/>
<line number="186" hits="0"/>
<line number="188" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="189,196"/>
<line number="189" hits="0"/>
<line number="190" hits="0"/>
<line number="191" hits="0"/>
<line number="192" hits="0"/>
<line number="193" hits="0"/>
<line number="194" hits="0"/>
<line number="196" hits="0"/>
<line number="197" hits="0"/>
<line number="198" hits="0"/>
<line number="199" hits="0"/>
<line number="200" hits="0"/>
<line number="201" hits="0"/>
<line number="203" hits="0"/>
<line number="205" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="206,208"/>
<line number="206" hits="0"/>
<line number="208" hits="0"/>
<line number="209" hits="0"/>
<line number="210" hits="0"/>
<line number="211" hits="0"/>
<line number="212" hits="0"/>
<line number="213" hits="0"/>
<line number="215" hits="0"/>
</lines>
</class>
<class name="diagnostics_notification.py" filename="tui/widgets/diagnostics_notification.py" complexity="0" line-rate="0" branch-rate="1">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="5" hits="0"/>
<line number="8" hits="0"/>
<line number="23" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0"/>
<line number="32" hits="0"/>
</lines>
</class>
<class name="error_notification.py" filename="tui/widgets/error_notification.py" complexity="0" line-rate="0" branch-rate="1">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="5" hits="0"/>
<line number="8" hits="0"/>
<line number="23" hits="0"/>
<line number="26" hits="0"/>
<line number="27" hits="0"/>
<line number="29" hits="0"/>
<line number="32" hits="0"/>
</lines>
</class>
</classes>
</package>
<package name="utils" line-rate="0.1972" branch-rate="0.08861" complexity="0">
<classes>
<class name="__init__.py" filename="utils/__init__.py" complexity="0" line-rate="1" branch-rate="1">
<methods/>
<lines/>
</class>
<class name="container_utils.py" filename="utils/container_utils.py" complexity="0" line-rate="0.1062" branch-rate="0.03488">
<methods/>
<lines>
<line number="3" hits="1"/>
<line number="4" hits="1"/>
<line number="7" hits="1"/>
<line number="14" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="15"/>
<line number="15" hits="0"/>
<line number="18" hits="1"/>
<line number="19" hits="1"/>
<line number="20" hits="0"/>
<line number="21" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="22,23"/>
<line number="22" hits="0"/>
<line number="23" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="24,29"/>
<line number="24" hits="0"/>
<line number="25" hits="1"/>
<line number="26" hits="1"/>
<line number="29" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="30"/>
<line number="30" hits="0"/>
<line number="32" hits="1"/>
<line number="35" hits="1"/>
<line number="45" hits="1"/>
<line number="48" hits="1"/>
<line number="49" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="53"/>
<line number="50" hits="1"/>
<line number="53" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="55,71"/>
<line number="55" hits="0"/>
<line number="56" hits="0"/>
<line number="57" hits="0"/>
<line number="58" hits="0"/>
<line number="60" hits="0"/>
<line number="63" hits="0"/>
<line number="64" hits="0"/>
<line number="65" hits="0"/>
<line number="66" hits="0"/>
<line number="68" hits="0"/>
<line number="71" hits="0"/>
<line number="72" hits="0"/>
<line number="73" hits="0"/>
<line number="74" hits="0"/>
<line number="76" hits="0"/>
<line number="79" hits="0"/>
<line number="80" hits="0"/>
<line number="81" hits="0"/>
<line number="82" hits="0"/>
<line number="84" hits="0"/>
<line number="87" hits="0"/>
<line number="88" hits="0"/>
<line number="89" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="90,102"/>
<line number="90" hits="0"/>
<line number="91" hits="0"/>
<line number="92" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="89,94"/>
<line number="94" hits="0"/>
<line number="97" hits="0"/>
<line number="98" hits="0"/>
<line number="99" hits="0"/>
<line number="100" hits="0"/>
<line number="102" hits="0"/>
<line number="105" hits="1"/>
<line number="126" hits="0"/>
<line number="128" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="129,132"/>
<line number="129" hits="0"/>
<line number="132" hits="0"/>
<line number="134" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="135,138"/>
<line number="135" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="134,136"/>
<line number="136" hits="0"/>
<line number="138" hits="0"/>
<line number="141" hits="1"/>
<line number="156" hits="0"/>
<line number="157" hits="0"/>
<line number="158" hits="0"/>
<line number="159" hits="0"/>
<line number="160" hits="0"/>
<line number="162" hits="0"/>
<line number="164" hits="0"/>
<line number="165" hits="0"/>
<line number="167" hits="0"/>
<line number="168" hits="0"/>
<line number="169" hits="0"/>
<line number="172" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="173,200"/>
<line number="173" hits="0"/>
<line number="174" hits="0"/>
<line number="175" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="176,200"/>
<line number="176" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="177,200"/>
<line number="177" hits="0"/>
<line number="178" hits="0"/>
<line number="179" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="176,180"/>
<line number="180" hits="0"/>
<line number="181" hits="0"/>
<line number="182" hits="0"/>
<line number="183" hits="0"/>
<line number="184" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="176,185"/>
<line number="185" hits="0"/>
<line number="186" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="187,188"/>
<line number="187" hits="0"/>
<line number="188" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="189,190"/>
<line number="189" hits="0"/>
<line number="190" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="191,193"/>
<line number="191" hits="0"/>
<line number="193" hits="0"/>
<line number="194" hits="0"/>
<line number="195" hits="0"/>
<line number="196" hits="0"/>
<line number="197" hits="0"/>
<line number="200" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="201,227"/>
<line number="201" hits="0"/>
<line number="202" hits="0"/>
<line number="203" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="204,227"/>
<line number="204" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="205,227"/>
<line number="205" hits="0"/>
<line number="206" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="207,208"/>
<line number="207" hits="0"/>
<line number="208" hits="0"/>
<line number="209" hits="0"/>
<line number="210" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="204,211"/>
<line number="211" hits="0"/>
<line number="212" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="204,213"/>
<line number="213" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="212,214"/>
<line number="214" hits="0"/>
<line number="215" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="216,217"/>
<line number="216" hits="0"/>
<line number="217" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="218,220"/>
<line number="218" hits="0"/>
<line number="220" hits="0"/>
<line number="221" hits="0"/>
<line number="222" hits="0"/>
<line number="223" hits="0"/>
<line number="224" hits="0"/>
<line number="227" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="228,249"/>
<line number="228" hits="0"/>
<line number="229" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="230,239"/>
<line number="230" hits="0"/>
<line number="231" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="232,249"/>
<line number="232" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="233,249"/>
<line number="233" hits="0"/>
<line number="234" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="235,236"/>
<line number="235" hits="0"/>
<line number="236" hits="0"/>
<line number="237" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="232,238"/>
<line number="238" hits="0"/>
<line number="239" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="240,249"/>
<line number="240" hits="0"/>
<line number="241" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="242,249"/>
<line number="242" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="241,243"/>
<line number="243" hits="0"/>
<line number="244" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="241,245"/>
<line number="245" hits="0"/>
<line number="246" hits="0"/>
<line number="247" hits="0"/>
<line number="249" hits="0"/>
<line number="250" hits="0"/>
<line number="252" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="253,258"/>
<line number="253" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="252,254"/>
<line number="254" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="253,255"/>
<line number="255" hits="0"/>
<line number="256" hits="0"/>
<line number="258" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="259,269"/>
<line number="259" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="260,265"/>
<line number="260" hits="0"/>
<line number="265" hits="0"/>
<line number="267" hits="0"/>
<line number="269" hits="0"/>
<line number="273" hits="0"/>
</lines>
</class>
<class name="document_processing.py" filename="utils/document_processing.py" complexity="0" line-rate="0.07975" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="3" hits="1"/>
<line number="4" hits="1"/>
<line number="5" hits="1"/>
<line number="6" hits="1"/>
<line number="7" hits="1"/>
<line number="9" hits="1"/>
<line number="12" hits="1"/>
<line number="15" hits="1"/>
<line number="17" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="18,20"/>
<line number="18" hits="0"/>
<line number="20" hits="0"/>
<line number="21" hits="0"/>
<line number="26" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="39" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="40,54"/>
<line number="40" hits="0"/>
<line number="41" hits="0"/>
<line number="43" hits="0"/>
<line number="44" hits="0"/>
<line number="45" hits="0"/>
<line number="54" hits="0"/>
<line number="55" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="56,59"/>
<line number="56" hits="0"/>
<line number="59" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="60,64"/>
<line number="60" hits="0"/>
<line number="64" hits="0"/>
<line number="65" hits="0"/>
<line number="75" hits="0"/>
<line number="81" hits="0"/>
<line number="84" hits="1"/>
<line number="87" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="90,119"/>
<line number="90" hits="0"/>
<line number="91" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="93,108"/>
<line number="93" hits="0"/>
<line number="94" hits="0"/>
<line number="95" hits="0"/>
<line number="96" hits="0"/>
<line number="97" hits="0"/>
<line number="100" hits="0"/>
<line number="101" hits="0"/>
<line number="103" hits="0"/>
<line number="104" hits="0"/>
<line number="105" hits="0"/>
<line number="108" hits="0"/>
<line number="109" hits="0"/>
<line number="113" hits="0"/>
<line number="116" hits="0"/>
<line number="117" hits="0"/>
<line number="119" hits="0"/>
<line number="122" hits="1"/>
<line number="131" hits="0"/>
<line number="132" hits="0"/>
<line number="135" hits="0"/>
<line number="136" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="137,142"/>
<line number="137" hits="0"/>
<line number="138" hits="0"/>
<line number="139" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="136,140"/>
<line number="140" hits="0"/>
<line number="142" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="143,148"/>
<line number="143" hits="0"/>
<line number="148" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="149,175"/>
<line number="149" hits="0"/>
<line number="150" hits="0"/>
<line number="153" hits="0"/>
<line number="154" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="155,161"/>
<line number="155" hits="0"/>
<line number="156" hits="0"/>
<line number="157" hits="0"/>
<line number="158" hits="0"/>
<line number="161" hits="0"/>
<line number="162" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="163,166"/>
<line number="163" hits="0"/>
<line number="164" hits="0"/>
<line number="166" hits="0"/>
<line number="175" hits="0"/>
<line number="183" hits="1"/>
<line number="185" hits="0"/>
<line number="186" hits="0"/>
<line number="187" hits="0"/>
<line number="188" hits="0"/>
<line number="190" hits="0"/>
<line number="191" hits="0"/>
<line number="193" hits="0"/>
<line number="194" hits="0"/>
<line number="202" hits="0"/>
<line number="203" hits="0"/>
<line number="204" hits="0"/>
<line number="209" hits="0"/>
<line number="210" hits="0"/>
<line number="211" hits="0"/>
<line number="214" hits="0"/>
<line number="215" hits="0"/>
<line number="216" hits="0"/>
<line number="217" hits="0"/>
<line number="218" hits="0"/>
<line number="223" hits="0"/>
<line number="224" hits="0"/>
<line number="227" hits="0"/>
<line number="228" hits="0"/>
<line number="231" hits="0"/>
<line number="232" hits="0"/>
<line number="233" hits="0"/>
<line number="234" hits="0"/>
<line number="235" hits="0"/>
<line number="240" hits="0"/>
<line number="241" hits="0"/>
<line number="244" hits="0"/>
<line number="245" hits="0"/>
<line number="248" hits="0"/>
<line number="249" hits="0"/>
<line number="250" hits="0"/>
<line number="251" hits="0"/>
<line number="257" hits="0"/>
<line number="259" hits="0"/>
<line number="260" hits="0"/>
<line number="265" hits="0"/>
<line number="267" hits="0"/>
<line number="268" hits="0"/>
<line number="269" hits="0"/>
<line number="275" hits="0"/>
<line number="276" hits="0"/>
<line number="277" hits="0"/>
<line number="283" hits="0"/>
<line number="284" hits="0"/>
<line number="287" hits="0"/>
<line number="288" hits="0"/>
<line number="289" hits="0"/>
<line number="290" hits="0"/>
<line number="291" hits="0"/>
<line number="297" hits="0"/>
<line number="298" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="299,304"/>
<line number="299" hits="0"/>
<line number="300" hits="0"/>
<line number="301" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="298,302"/>
<line number="302" hits="0"/>
<line number="304" hits="0"/>
<line number="305" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="306,309"/>
<line number="306" hits="0"/>
<line number="307" hits="0"/>
<line number="309" hits="0"/>
<line number="316" hits="0"/>
<line number="317" hits="0"/>
<line number="320" hits="0"/>
<line number="321" hits="0"/>
<line number="323" hits="0"/>
<line number="324" hits="0"/>
<line number="325" hits="0"/>
<line number="332" hits="0"/>
<line number="340" hits="0"/>
<line number="341" hits="0"/>
<line number="342" hits="0"/>
<line number="343" hits="0"/>
<line number="353" hits="0"/>
<line number="354" hits="0"/>
<line number="357" hits="0"/>
<line number="358" hits="0"/>
<line number="360" hits="0"/>
<line number="366" hits="0"/>
<line number="367" hits="0"/>
<line number="370" hits="0"/>
</lines>
</class>
<class name="embeddings.py" filename="utils/embeddings.py" complexity="0" line-rate="1" branch-rate="1">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="5" hits="1"/>
<line number="7" hits="1"/>
<line number="11" hits="1"/>
<line number="13" hits="1"/>
<line number="15" hits="1" branch="true" condition-coverage="100% (2/2)"/>
<line number="16" hits="1"/>
<line number="17" hits="1"/>
<line number="18" hits="1"/>
<line number="20" hits="1"/>
<line number="23" hits="1"/>
<line number="26" hits="1"/>
<line number="28" hits="1"/>
<line number="30" hits="1"/>
</lines>
</class>
<class name="file_utils.py" filename="utils/file_utils.py" complexity="0" line-rate="0" branch-rate="0">
<methods/>
<lines>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="5" hits="0"/>
<line number="6" hits="0"/>
<line number="9" hits="0"/>
<line number="10" hits="0"/>
<line number="34" hits="0"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="37" hits="0"/>
<line number="40" hits="0"/>
<line number="41" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,42"/>
<line number="42" hits="0"/>
<line number="43" hits="0"/>
<line number="45" hits="0"/>
<line number="48" hits="0"/>
<line number="55" hits="0"/>
<line number="56" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,57"/>
<line number="57" hits="0"/>
<line number="58" hits="0"/>
<line number="60" hits="0"/>
</lines>
</class>
<class name="gpu_detection.py" filename="utils/gpu_detection.py" complexity="0" line-rate="0.2222" branch-rate="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="3" hits="1"/>
<line number="5" hits="1"/>
<line number="8" hits="1"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="14,18"/>
<line number="14" hits="0"/>
<line number="15" hits="0"/>
<line number="16" hits="0"/>
<line number="18" hits="0"/>
<line number="19" hits="0"/>
<line number="21" hits="0"/>
<line number="22" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="23,27"/>
<line number="23" hits="0"/>
<line number="24" hits="0"/>
<line number="25" hits="0"/>
<line number="27" hits="0"/>
<line number="30" hits="1"/>
<line number="32" hits="0"/>
<line number="34" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="35,42"/>
<line number="35" hits="0"/>
<line number="36" hits="0"/>
<line number="42" hits="0"/>
<line number="43" hits="0"/>
<line number="47" hits="0"/>
</lines>
</class>
<class name="hash_utils.py" filename="utils/hash_utils.py" complexity="0" line-rate="0.9" branch-rate="0.8">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="3" hits="1"/>
<line number="4" hits="1"/>
<line number="5" hits="1"/>
<line number="8" hits="1"/>
<line number="10" hits="1"/>
<line number="13" hits="1"/>
<line number="28" hits="1"/>
<line number="29" hits="1"/>
<line number="30" hits="1"/>
<line number="31" hits="1"/>
<line number="33" hits="1"/>
<line number="34" hits="1" branch="true" condition-coverage="100% (2/2)"/>
<line number="35" hits="1"/>
<line number="36" hits="1" branch="true" condition-coverage="100% (2/2)"/>
<line number="37" hits="1"/>
<line number="39" hits="1" branch="true" condition-coverage="100% (2/2)"/>
<line number="40" hits="1"/>
<line number="41" hits="1"/>
<line number="43" hits="1"/>
<line number="45" hits="1"/>
<line number="46" hits="1"/>
<line number="47" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="52"/>
<line number="48" hits="1"/>
<line number="49" hits="1"/>
<line number="50" hits="0"/>
<line number="51" hits="0"/>
<line number="52" hits="1"/>
<line number="53" hits="1"/>
<line number="55" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="61"/>
<line number="56" hits="1"/>
<line number="57" hits="1"/>
<line number="58" hits="0"/>
<line number="59" hits="0"/>
<line number="61" hits="1"/>
<line number="64" hits="1"/>
<line number="74" hits="1"/>
<line number="75" hits="1"/>
<line number="76" hits="1"/>
</lines>
</class>
<class name="logging_config.py" filename="utils/logging_config.py" complexity="0" line-rate="0.1961" branch-rate="0.05">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="3" hits="1"/>
<line number="4" hits="1"/>
<line number="5" hits="1"/>
<line number="8" hits="1"/>
<line number="17" hits="0"/>
<line number="22" hits="0"/>
<line number="29" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="30,33"/>
<line number="30" hits="0"/>
<line number="33" hits="0"/>
<line number="45" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="47,51"/>
<line number="47" hits="0"/>
<line number="48" hits="0"/>
<line number="51" hits="0"/>
<line number="52" hits="0"/>
<line number="53" hits="0"/>
<line number="54" hits="0"/>
<line number="55" hits="0"/>
<line number="56" hits="0"/>
<line number="59" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="60,61"/>
<line number="60" hits="0"/>
<line number="61" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="62,63"/>
<line number="62" hits="0"/>
<line number="63" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="64,65"/>
<line number="64" hits="0"/>
<line number="65" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="66,68"/>
<line number="66" hits="0"/>
<line number="68" hits="0"/>
<line number="71" hits="0"/>
<line number="72" hits="0"/>
<line number="73" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="74,77"/>
<line number="74" hits="0"/>
<line number="77" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="78,81"/>
<line number="78" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="77,79"/>
<line number="79" hits="0"/>
<line number="81" hits="0"/>
<line number="83" hits="0"/>
<line number="85" hits="0"/>
<line number="88" hits="0"/>
<line number="97" hits="0"/>
<line number="98" hits="0"/>
<line number="101" hits="1"/>
<line number="103" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="105"/>
<line number="104" hits="1"/>
<line number="105" hits="0"/>
<line number="109" hits="1"/>
<line number="111" hits="0"/>
<line number="112" hits="0"/>
<line number="113" hits="0"/>
<line number="115" hits="0"/>
</lines>
</class>
<class name="opensearch_queries.py" filename="utils/opensearch_queries.py" complexity="0" line-rate="0" branch-rate="1">
<methods/>
<lines>
<line number="4" hits="0"/>
<line number="7" hits="0"/>
<line number="17" hits="0"/>
<line number="24" hits="0"/>
<line number="36" hits="0"/>
<line number="43" hits="0"/>
<line number="53" hits="0"/>
</lines>
</class>
<class name="process_pool.py" filename="utils/process_pool.py" complexity="0" line-rate="0" branch-rate="1">
<methods/>
<lines>
<line number="1" hits="0"/>
<line number="2" hits="0"/>
<line number="3" hits="0"/>
<line number="4" hits="0"/>
<line number="6" hits="0"/>
<line number="10" hits="0"/>
<line number="11" hits="0"/>
<line number="13" hits="0"/>
</lines>
</class>
</classes>
</package>
</packages>
</coverage>