Files
cdtestplant_v1/utils/__pycache__/util.cpython-313.pyc

96 lines
17 KiB
Plaintext
Raw Normal View History

2025-04-29 18:09:00 +08:00
<EFBFBD>
1<> ho=<00><00><00>SSKJr SSKJr SSKJr SSKJr SSKJ r SSK
J r \ "SS9r S r S
rS rS rS rSrS\S\\4SjrSrSr"SS\5r"SS\5rSrSrSrSrS\ S\4SjrSrS rS!\4S"jr g#)$<24>)<01>List)<01>DictItem)<01>
TestDemand)<01>
HTMLParser)<01>QuerySet)<01>GenerateLoggeru 字典模块)<01>modelc<00><><00>[RRXS9R5nU(a UR$[
R SSUS3S9 g)N<><02>
dict__code<EFBFBD>key<65>字典数据缺失u 字典数据u0数据缺失请检查相应数据是否存在<E5AD98><02>fragment<6E>message<67>)r<00>objects<74>filter<65>first<73>title<6C>logger<65>write_warning_log<6F><03>a<> dict_code<64>dict_objs <20>/E:\pycharmProjects\cdtestplant_v1\utils\util.py<70> get_str_dictr sa<00><00><17><1F><1F>&<26>&<26>)<29>&<26>C<>I<>I<>K<>H<EFBFBD><0F><17>~<7E>~<7E><1D> <0F> <20> <20>*><3E>,<2C>W`<60>Va<56>bR<02>IS<02> <20> T<02><11>c<00><><00>[RRXS9R5nU(a UR$[
R SSUS3S9 g)Nr r<00>-查询字段数据缩写问题字典数据<E695B0>数据可能缺失rr<00>rrrr<00>
show_titlerrrs r<00> get_str_abbrr%s\<00><00><17><1F><1F>&<26>&<26>)<29>&<26>C<>I<>I<>K<>H<EFBFBD><0F><17>"<22>"<22>"<22><0E> <20> <20>*><3E>+X<>Yb<59>Xc<58>cu<63>)v<> !<21> x<01>rc<00><><00>[RRXS9R5nU(aURUR
4$[ RSSUS3S9 g)Nr <00>字典数据查询错误u字典u未查询到数据请检查r)r<00>)rrrrr<00>sortrrrs r<00>get_str_dict_plusr* se<00><00><17><1F><1F>&<26>&<26>)<29>&<26>C<>I<>I<>K<>H<EFBFBD><0F><17>~<7E>~<7E>x<EFBFBD>}<7D>}<7D>,<2C>,<2C><0E> <20> <20>*D<>PV<50>W`<60>Va<56>a<61>OA<02> <20> B<02>rc<00><><00>[RRXS9R5nU(a UR$[
R SSUS3S9 g)Nr r'r!r"rrr#rs r<00> get_testTyper,)s\<00><00><17><1F><1F>&<26>&<26>)<29>&<26>C<>I<>I<>K<>H<EFBFBD><0F><17>"<22>"<22>"<22><0E> <20> <20>*D<>+X<>Yb<59>Xc<58>cu<63>)v<> !<21> x<01>rc<00>j<00>SRS[URS5UR/5nU$)N<>_<>XQ<58>testType)<04>joinr,r0<00>ident)<02> test_item<65> reveal_idents r<00> get_identr53s4<00><00><17>8<EFBFBD>8<EFBFBD> <0A>|<7C>I<EFBFBD>.<2E>.<2E>
<EFBFBD>;<3B>Y<EFBFBD>_<EFBFBD>_<EFBFBD>M<>O<01>L<EFBFBD> <17>rc<00><><00>[URRS5S5S-n[U5R SS5nSR UR SS5U/5nU$) N<>-<2D><><EFBFBD><EFBFBD><EFBFBD>r(<00><00>0r.r/<00>YL)<07>intr <00>split<69>str<74>rjustr1<00>replace)<05> demand_ident<6E>case<73> key_index<65>
test_indexr4s r<00>get_case_identrE;s_<00><00><13>D<EFBFBD>H<EFBFBD>H<EFBFBD>N<EFBFBD>N<EFBFBD>3<EFBFBD>'<27><02>+<2B>,<2C>q<EFBFBD>0<>I<EFBFBD><14>Y<EFBFBD><1E>%<25>%<25>a<EFBFBD><13>-<2D>J<EFBFBD><16>8<EFBFBD>8<EFBFBD>\<5C>1<>1<>$<24><04>=<3D>z<EFBFBD>J<>K<>L<EFBFBD> <17>rr<00>str_listc<00>(<00>/n[RRUS9nUHln0nUHanXFR:XdMURUS'UR
US'UR US'URUS'URU5 Mc Mn U$)N<>r <00> ident_version<6F>doc_name<6D> publish_date<74>source) rrrr rrJrKrL<00>append<6E>rrF<00>result<6C>qss<73>st<73>res<65>qss r<00> get_list_dictrTBs<><00><00> <0F>F<EFBFBD>
<12>
<1A>
<1A>
!<21>
!<21>Y<EFBFBD>
!<21>
7<EFBFBD>C<EFBFBD><16><02><10><03><15>B<EFBFBD><11>V<EFBFBD>V<EFBFBD>|<7C>')<29>x<EFBFBD>x<EFBFBD><03>O<EFBFBD>$<24>"$<24>+<2B>+<2B><03>J<EFBFBD><0F>&(<28>o<EFBFBD>o<EFBFBD><03>N<EFBFBD>#<23> "<22> <09> <09><03>H<EFBFBD> <0A><16> <0A> <0A>c<EFBFBD>"<22> <16><17> <12>Mrc<00><><00>/n[RRUS9nUHNn0nUHCnXFR:XdMURUS'UR
US'UR U5 ME MP U$)uI传入字典的字符串列表输出每个元素为dict的列表信息rHr<00>index)rrrr rr)rMrNs r<00>get_list_dict_inforWQso<00><00> <0F>F<EFBFBD>
<12>
<1A>
<1A>
!<21>
!<21>Y<EFBFBD>
!<21>
7<EFBFBD>C<EFBFBD><16><02><10><03><15>B<EFBFBD><11>V<EFBFBD>V<EFBFBD>|<7C>!<21>x<EFBFBD>x<EFBFBD><03>G<EFBFBD> <0C>!<21>w<EFBFBD>w<EFBFBD><03>G<EFBFBD> <0C><16> <0A> <0A>c<EFBFBD>"<22> <16><17> <12>Mrc<00><><00>[RRUS9n0nUH2nXR:XdMURUS'UR
US'M4 U$)uH传入字典的字符串单个表示输出dict包含排序index字段rHrrV)rrrr rr))r<00>item_strrPrRrSs r<00> get_dict_inforZ_sU<00><00>
<12>
<1A>
<1A>
!<21>
!<21>Y<EFBFBD>
!<21>
7<EFBFBD>C<EFBFBD>
<0C>C<EFBFBD><11><02> <13>v<EFBFBD>v<EFBFBD> <1D><1D>8<EFBFBD>8<EFBFBD>C<EFBFBD><07>L<EFBFBD><1D>7<EFBFBD>7<EFBFBD>C<EFBFBD><07>L<EFBFBD><12> <0F>Jrc<00>2<00>\rSrSrSrSrSrSrSrSr g) <09> MyHTMLParser<65>jc<00>><00>[R"U5 /Ulg<00>N<>r<00>__init__<5F>
allStrList<EFBFBD><01>selfs rra<00>MyHTMLParser.__init__k<00><00><00><12><1B><1B>D<EFBFBD>!<21><1C><04>rc<00><00>[SU5 g)Nu'HTML解析器出错error信息为)<01>print)rdrs r<00>error<6F>MyHTMLParser.erroros <00><00> <0A>7<><17>Arc<00>X<00>US:Xa$USSnURRU5 gg)N<>imgrr(<00>rbrM)rd<00>tag<61>attrs<72>
img_base64s r<00>handle_starttag<61>MyHTMLParser.handle_starttagrs-<00><00> <0E>%<25><<3C><1E>q<EFBFBD><18>!<21><1B>J<EFBFBD> <10>O<EFBFBD>O<EFBFBD> "<22> "<22>:<3A> .<2E> rc<00><00>gr_<00>)rdrns r<00> handle_endtag<61>MyHTMLParser.handle_endtagws<00><00> rc<00>H<00>US:waURRU5 gg<00>N<>
rm<00>rd<00>datas r<00> handle_data<74>MyHTMLParser.handle_dataz<00> <00><00> <0F>4<EFBFBD><<3C> <10>O<EFBFBD>O<EFBFBD> "<22> "<22>4<EFBFBD> (<28> r<00>rbN)
<EFBFBD>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__firstlineno__rarirqrur|<00>__static_attributes__rtrrr\r\js<00><00><1D>B<01>/<2F>
 <0A>)rr\c<00> <00>\rSrSrSrSrSrg)<06>MyHTMLParser_p<5F>c<00>><00>[R"U5 /Ulgr_r`rcs rra<00>MyHTMLParser_p.__init__<5F>rfrc<00>H<00>US:waURRU5 ggrxrmrzs rr|<00>MyHTMLParser_p.handle_data<74>r~rrN)r<>r<>r<>r<>rar|r<>rtrrr<>r<>s <00><00><1D>)rr<>c<00>6<00>0nUH>n[URS5nX1R5;aX==S- ss'M:SX'M@ /nUR5H-upVUR SR US3US3/55 M/ SR U5$)uS传入问题qs生成到文档的字符串严重问题4个、一般问题10个<30> problemGrader(ru问题<E997AE><>、)r<00>grade<64>keys<79>itemsrMr1)<07>problems<6D>problem_r1_grade_dict<63>problem<65> grade_key<65>problem_r1_grade_listr <00>values r<00>create_problem_grade_strr<72><00>s<><00><00><1E><19><1B><07>%<25>g<EFBFBD>m<EFBFBD>m<EFBFBD>^<5E>D<> <09> <14>2<>2<>4<> 4<> !<21> ,<2C><01> 1<> ,<2C>/0<> !<21> ,<2C> <1C> <1F><19>+<2B>1<>1<>3<>
<EFBFBD><03><1D>$<24>$<24>R<EFBFBD>W<EFBFBD>W<EFBFBD><13><05>V<EFBFBD>n<EFBFBD><15><07>s<EFBFBD>m<EFBFBD>-L<>%M<>N<>4<> <10>:<3A>:<3A>+<2B> ,<2C>,rc<00>2<00>0nUH>n[URS5nX1R5;aX==S- ss'M:SX'M@ /nUR5H+upVUR SR UUS3/55 M- SR U5$)uS传入问题qs生成到文档的字符串文档问题1个程序问题10个<30> problemTyper(rr<>r<>)r<00>typer<65>r<>rMr1)r<><00>problem_r1_type_dictr<74><00>type_key<65>problem_r1_type_listr r<>s r<00>create_problem_type_strr<72><00>s<><00><00><1D><18><1B><07>$<24>W<EFBFBD>\<5C>\<5C>=<3D>A<><08> <13>0<>0<>2<> 2<> <20> *<2A>a<EFBFBD> /<2F> *<2A>-.<2E> <20> *<2A> <1C> <1E><18>*<2A>0<>0<>2<>
<EFBFBD><03><1C>#<23>#<23>B<EFBFBD>G<EFBFBD>G<EFBFBD><03>u<EFBFBD>%<25><17><03>}<7D>,E<>$F<>G<>3<> <10>:<3A>:<3A>*<2A> +<2B>+rc<00><00>[5nUH*nURnURUR5 M, [ S[ U55nUR SS9 [ [SU55nU[U54$)u<>传入用例的qs生成其测试类型的字符串例如包含xxx测试5个xxx测试11个返回的是元组第二个元素表示测试类型个数r0c<00><00>[US5$<00>NrV<00>r<<00><01>xs r<00><lambda><3E>*create_str_testType_list.<locals>.<lambda><3E>s <00><00>c<EFBFBD>!<21>G<EFBFBD>*<2A>or<00>r c<00> <00>US$)Nrrtr<>s rr<>r<><00>s<00><00>a<EFBFBD><07>jr) <09>set<65>test<73>addr0rW<00>listr)<00>map<61>len)<06>cases<65> test_type_setrB<00>demand<6E>test_type_list<73>round1_testType_lists r<00>create_str_testType_listr<74><00>sv<00><00><1C><15>M<EFBFBD><15><04>!<21>Y<EFBFBD>Y<EFBFBD><06><15><19><19>&<26>/<2F>/<2F>*<2A><16>(<28>
<EFBFBD>D<EFBFBD><1D>4G<34>H<>N<EFBFBD><12><17><17>5<><17>6<><1F><03>$8<>.<2E> I<>J<><18> <1F><13>^<5E>!4<> 4<>4rc<00><><00>USSSSSSS.nUSHSnUS==US- ss'US==US- ss'US==US- ss'US==US- ss'US ==US - ss'MU U$)
u]辅助函数将下面函数返回的summary_list改造为以需求类型执行统计列表rr)r<00> total_count<6E> exe_count<6E> not_exe_count<6E>
pass_count<EFBFBD>not_pass_count<6E> demand_listr<74>r<>r<>r<>r<>rt)<03>item<65>transform_item<65>its r<00> util_funcr<63><00>s<><00><00>#<23>G<EFBFBD>}<7D>Q<EFBFBD>Q<EFBFBD>ab<61>rs<72>()<29>+<2B>N<EFBFBD><12>=<3D>!<21><02><16>}<7D>%<25><12>M<EFBFBD>):<3A>:<3A>%<25><16>{<7B>#<23>r<EFBFBD>+<2B><EFBFBD>6<>#<23><16><EFBFBD>'<27>2<EFBFBD>o<EFBFBD>+><3E>><3E>'<27><16>|<7C>$<24><02><<3C>(8<>8<>$<24><16>'<27>(<28>B<EFBFBD>/?<3F>,@<40>@<40>(<28> "<22> <1A>r<00>demands<64> project_identc
<00><><00>0nUGH<>nURn[US5upVUS-[U5-nURSSSSSSSS.n[ 5n UR
R 5GHn
US==S- ss'S n S n U
RR 5H-n U RS
:XaS n S n OU RS :XdM+S n M/ U (aUS ==S- ss'OUS==S- ss'SUS'U (aUS==S- ss'O US==S- ss'U
RR 5H9nSU-S-URRSS5-nU RU5 M; GM [[U 55S:<3A>aSR[U 55US'XrR!5;aX'R#U5 GM<>U/X''GM<> /nUR%5HunnUUS.nUR#U5 M UR'SS9 UHnUSR)S5SUS'M [[+[,U55nUU4$)u<>
[
{
'title':'功能测试_5',
'demand_list':[
{
'name': '测试项1',
'total_count': 1,
'exe_count': 1,
'not_exe_count': 0,
'pass_count': 1,
'not_pass_count': 0,
'conclusion': '通过',
'problems': '/'
}
]
},
]
r0r.ru通过<E9809A>/)<08>namer<65>r<>r<>r<>r<><00>
conclusionr<EFBFBD>r<>r(T<>2F<32>3r<33>r<>u 未通过r<E8BF87>r<>r<><00>PT_r9r:<00>r<>)rr<>c<00>B<00>[USRS5S5$)Nrr.r8)r<r=r<>s rr<><00>'create_demand_summary.<locals>.<lambda> s<00><00>C<EFBFBD><01>'<27>
<EFBFBD>(8<>(8<><13>(=<3D>b<EFBFBD>(A<>$Brr<>r)r0r*r>r<>r<><00>tcField<6C>all<6C>step<65>passed<65> caseFieldr2r?r<>r<>r<>r1r<>rMr<>r)r=r<>r<>)r<>r<><00> summary_dictr<74><00> test_type_num<75> testTypeStr<74> testTypeSort<72> testType_info<66> demand_dict<63>demand_problem_listrB<00>isPassed<65>isExer<65>r<><00> problem_ident<6E> summary_listr r<><00>one_dict<63>one<6E>demandType_exe_lists r<00>create_demand_summaryr<79><00>sj<00><00>(<16>L<EFBFBD><19><06><1E><0F><0F> <0A>$5<>m<EFBFBD>Z<EFBFBD>$P<>!<21> <0B>#<23>c<EFBFBD>)<29>C<EFBFBD> <0C>,=<3D>=<3D> <0A><1A>K<EFBFBD>K<EFBFBD><1C><1A><1E><1B><1F>"<22><1B> 
<EFBFBD> <0B>"<22>e<EFBFBD><1B><1A>N<EFBFBD>N<EFBFBD>&<26>&<26>(<28>D<EFBFBD> <17> <0A> &<26>!<21> +<2B> &<26><1B>H<EFBFBD><18>E<EFBFBD><1C> <09> <09> <0A> <0A><0F><04><17>;<3B>;<3B>#<23>%<25>$<24>H<EFBFBD> <20>E<EFBFBD><19><17>;<3B>;<3B>#<23>%<25>!<21>E<EFBFBD>(<28><18><1B>L<EFBFBD>)<29>Q<EFBFBD>.<2E>)<29><1B>,<2C>-<2D><11>2<>-<2D>,7<> <0B>L<EFBFBD>)<29><14><1B>K<EFBFBD>(<28>A<EFBFBD>-<2D>(<28><1B>O<EFBFBD>,<2C><01>1<>,<2C><1F>><3E>><3E>-<2D>-<2D>/<2F><07> %<25> <0A> 5<><03> ;<3B>g<EFBFBD>m<EFBFBD>m<EFBFBD>>Q<>>Q<>RS<52>UX<55>>Y<> Y<> <0A>#<23>'<27>'<27> <0A>6<>0<>/)<29>4 <0F>t<EFBFBD>'<27>(<28> )<29>A<EFBFBD> -<2D>&*<2A>i<EFBFBD>i<EFBFBD><04>5H<35>0I<30>&J<>K<EFBFBD>
<EFBFBD> #<23> <18>-<2D>-<2D>/<2F> /<2F> <18> '<27> .<2E> .<2E>{<7B> ;<3B>+6<>-<2D>L<EFBFBD> '<27>c<1A>d<16>L<EFBFBD>"<22>(<28>(<28>*<2A>
<EFBFBD><03>U<EFBFBD><18> <20>
<EFBFBD><08> <15><1B><1B>H<EFBFBD>%<25> +<2B><11><15><15>B<><15>C<><1B><03><1A>7<EFBFBD>|<7C>)<29>)<29>#<23>.<2E>q<EFBFBD>1<><03>G<EFBFBD> <0C><1C><1F>s<EFBFBD>9<EFBFBD>l<EFBFBD>;<3B><<3C><17> <17>,<2C> ,<2C>,rc <00><><00>SSSSSSSSSS. SSSSSSSSSS. SSSSSSSSSS. SSSSSSSSSS. /nUGH n[UR5S-
nURS:XaXS ==S- ss'O<>URS
:XaXS ==S- ss'OURS :XaXS ==S- ss'O_URS:XaXS==S- ss'O?URS:XaXS==S- ss'OURS:XaXS==S- ss'URS:XaXS==S- ss'M<>XS==S- ss'GM U$)uG传入问题单qs输出按问题种类分的问题统计表的数据<E695B0> 一般问题r) r<><00>xq_count<6E>sj_count<6E>wd_count<6E>bm_count<6E>
data_count<EFBFBD> other_count<6E> closed_count<6E>non_closed_count<6E> 严重问题<E997AE>建议<E5BBBA> 重大问题r(<00>1r<31>r<>r<>r<>r<><00>4r<34><00>5r<35><00>6r<36>r<>r<>)r<r<>r<><00>status)r<><00>res_listr<74>rVs r<00>create_problem_tabler<65>s<><00><00><1F><15><15><15><15><17><18><19><1D>
<06><1F><15><15><15><15><17><18><19><1D>
<06><19><15><15><15><15><17><18><19><1D>
<06><1F><15><15><15><15><17><18><19><1D>
<06>=(<07>H<EFBFBD>T<1C><07><13>G<EFBFBD>M<EFBFBD>M<EFBFBD>"<22>Q<EFBFBD>&<26><05> <12><<3C><<3C>3<EFBFBD> <1E> <14>O<EFBFBD>M<EFBFBD> *<2A>a<EFBFBD> /<2F> *<2A> <14>\<5C>\<5C>S<EFBFBD> <20> <14>O<EFBFBD>J<EFBFBD> '<27>1<EFBFBD> ,<2C> '<27> <14>\<5C>\<5C>S<EFBFBD> <20> <14>O<EFBFBD>J<EFBFBD> '<27>1<EFBFBD> ,<2C> '<27> <14>\<5C>\<5C>S<EFBFBD> <20> <14>O<EFBFBD>J<EFBFBD> '<27>1<EFBFBD> ,<2C> '<27> <14>\<5C>\<5C>S<EFBFBD> <20> <14>O<EFBFBD>J<EFBFBD> '<27>1<EFBFBD> ,<2C> '<27> <14>\<5C>\<5C>S<EFBFBD> <20> <14>O<EFBFBD>L<EFBFBD> )<29>Q<EFBFBD> .<2E> )<29> <13>><3E>><3E>S<EFBFBD> <20> <14>O<EFBFBD>N<EFBFBD> +<2B>q<EFBFBD> 0<> +<2B> <14>O<EFBFBD>.<2E> /<2F>1<EFBFBD> 4<> /<2F>'<1C>( <14>Orc <00>H<00>SSSSSSSSS.SSSSSSSSS.SSSSSSSSS.SSSSSSSSS./nUH<>n[UR5S-
nURR5SRnUR
S:XaXS ==S- ss'O_UR
S
:XaXS ==S- ss'O?UR
S :XdUR
S :XaXS==S- ss'OXS==S- ss'UR S:XaXS==S- ss'M<>XS==S- ss'M<> U$)uA传入问题qs解析出按测试类型分的问题统计表格r<E6A0BC>r)r<>r<><00>jt_count<6E>dm_count<6E>dt_countr<74>r<>r<>r<>r<>r<>r(<00>8r<38><00>15r<35>r<>r<>r<>r<>r<>r<>r<>)r<r<>rBr<>r<>r0r<>)r<>r<>r<>rV<00> belong_demands r<00>create_problem_type_tabler<65>Us{<00><00><1F><15><15><15><15><17><19><1D> <06><1F><15><15><15><15><17><19><1D> <06><19><15><15><15><15><17><19><1D> <06><1F><15><15><15><15><17><19><1D> <06>7$<07>H<EFBFBD>L<1C><07><13>G<EFBFBD>M<EFBFBD>M<EFBFBD>"<22>Q<EFBFBD>&<26><05>$+<2B>L<EFBFBD>L<EFBFBD>$4<>$4<>$6<>q<EFBFBD>$9<>$><3E>$><3E> <0A> <18> !<21> !<21>S<EFBFBD> (<28> <14>O<EFBFBD>J<EFBFBD> '<27>1<EFBFBD> ,<2C> '<27> <1A> #<23> #<23>t<EFBFBD> +<2B> <14>O<EFBFBD>J<EFBFBD> '<27>1<EFBFBD> ,<2C> '<27> <1A> #<23> #<23>s<EFBFBD> *<2A>m<EFBFBD>.D<>.D<><03>.K<> <14>O<EFBFBD>J<EFBFBD> '<27>1<EFBFBD> ,<2C> '<27> <14>O<EFBFBD>J<EFBFBD> '<27>1<EFBFBD> ,<2C> '<27> <13>><3E>><3E>S<EFBFBD> <20> <14>O<EFBFBD>N<EFBFBD> +<2B>q<EFBFBD> 0<> +<2B> <14>O<EFBFBD>.<2E> /<2F>1<EFBFBD> 4<> /<2F>!<1C>" <14>Or<00>returnc<00>P<00>[URS5R5RS55nUVs/sHo"SPM nn[ SU5nUR SS9 UVs/sHo"SPM nn[ U5S:<3A>aSRU5$S$s snfs snf)u_传入测试项qs返回字符串类似于“静态分析、代码审查、功能测试等”r0c<00><00>[US5$r<>r<>r<>s rr<><00>&get_demand_testTypes.<locals>.<lambda><3E>s <00><00>3<EFBFBD>q<EFBFBD><17>z<EFBFBD>?rr<>rrr<>u测试)r<><00>values<65>distinct<63>order_byrWr)r<>r1)<05> demand_qs<71> testType_listr<74><00> t_code_list<73>t_strs r<00>get_demand_testTypesr <00>s<><00><00><18><19>)<29>)<29>*<2A>5<>><3E>><3E>@<40>I<>I<>*<2A>U<>V<>M<EFBFBD>0=<3D>><3E> <0A><04>
<EFBFBD>#<23> <0A>K<EFBFBD>><3E>$<24>Z<EFBFBD><1B>=<3D>K<EFBFBD><0F><14><14>2<><14>3<>'2<> 3<>{<7B>t<EFBFBD>'<27>]<5D>{<7B>E<EFBFBD> 3<> #<23>E<EFBFBD>
<EFBFBD>Q<EFBFBD><0E>5<EFBFBD>:<3A>:<3A>e<EFBFBD> <1C><<3C>H<EFBFBD><<3C><> ?<3F><> 4s <00>B<04>,B#N)!<21>typingr<00>apps.dict.modelsr<00>apps.project.modelsr<00> html.parserr<00>django.db.modelsr<00>+apps.createSeiTaiDocument.extensions.loggerrrrr%r*r,r5rEr>rTrWrZr\r<>r<>r<>r<>r<>r<>r<>r<>r rtrr<00><module>rs<><00><01><17>%<25>*<2A>"<22>%<25>F<> <17>n<EFBFBD> -<2D><06><12><12><15><12><18><18> <12>S<EFBFBD> <12>D<EFBFBD><13>I<EFBFBD> <12> <12><0F>)<29>:<3A>)<29>*)<29>Z<EFBFBD>)<29> -<2D> ,<2C> 5<>
<1A>V-<2D>8<EFBFBD>V-<2D>C<EFBFBD>V-<2D>p@<14>D9<14>v=<3D>s<EFBFBD>=r