ࡱ> ny YK/s2q m4mPNG  IHDRAfPLTEzr<1%YPBH\tRNSރYbKGDa cmPPJCmp0712OmIDATX˗Hn܊)R5/mTIUVssz)JX_%!ߐo!V]UQ`BQ?ʲYd~ѤjP-˱p-m?b7QheԩA-ߕ@Hu}ͨeDu] C }DM@ @&zw S~vV۶xG-/w|@W^:e!b¥-7 @:CN 2 \Yth8T~XM?^]Vy3HG.^7;!F^y.d ߬ŭlWX?H@'JbgV~I/3K4f_B|p[{4JX$rdݮ50NSË.i'fY΢~%PL3aB#/Bj2+J|'l,1cnjK7$ԻesKaԬMmz;q U09Q^(S/fj@*>!=3>3m⤎m*1U1 f;?4^e+fsLٚZc^<vlm7  {{goxˆɴK主ǂaj;W*WYE^Iȯ+jT'Qv$o嬭A@iP%R򍐕9ҋ_EY>E~I =Nx}P6%$j`J>}ZO! 0>{=60Z UX$\Q3" އv' &v4U;#R"u-SwA`j"a ,!,ܜ=D^\O闐Eʯ!F@eh5;2޶Ą¯0L2*C~= P\h_DDx`"忄<쳰3DRbXN낙Ҫ +1|@Iۿ`&?zduI۷ra'Mw8o{u+z 1|ںU{:9Y-ExDfUء{Ի@ܓP˟ YPGemq:ss괺bͶUpkċ'7LkK wP3Y9 1q=K2B~MD-<􋲪 V-k O*ANӎ nxe%'L(^(3DIpBUGN|RW~>6+(ĉoJ+^<\SKVUƠúÑ}\8MLOˬF--S1HXVIIR*~bL tԍUYQԈ9Kܣ/XY☛8vyvT5g$gޟToo7 @u@T+IENDB`c( -./ 0DAriallacD(0(z[ 0 "DTimes New Roman(0(z[ 0  DWingdingsRoman(0(z[ 0 0DArial Blackman(0(z[ 0 "@DTahomalackman(0(z[ 0 "PDcmsy10lackman(0(z[ 0 "`DSymbollackman(0(z[ 0 @ .  @n?" dd@  @@``_FL2Ldrumroll.wav.WAV 10110KRIFFKWAVEfmt ++dataK||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||ggg`N9@DGK`kdn`gryy||unrdYRNNGKGGGNGGGNUYYkuyyuungkdYG@@@GNRRUR\dgy|nn`rNK@KRGDKGYDR\dgk||||r`y`YdKGD9KK``nnyyu||YUgrukYYRKNUGY`kgkdryggUUu`\RnU`\uu\y|u|y||ugrr|`\uggurunuuykrunuy|y||nnnrgrdrUYdr|r|ykyyy||||ykkuunn|kuugynrnr|||uu|yukukr|u||nd|r|y||yyr||||ynn|||uu|ygdgdRDYRY`ud\Rgy|ryyynykr|gr\RUnRUkdUR\YgY`un|rnddn`\RKKYR\NYYkyyyy||gUkgKUK?@ABCD ` fff33` 3KI3ff` 33ff` /p` 3%*3|` Jy3fff3f` 3ff3̙` 33ff33` DDyq3f` ̙3n` w3ff` }ff>?" dd@,?nKd@ P nA@F`d n?" dd@   @@``PR"   @ ` `2p>>   + * (    6X #" ``   `*   T  6x #" `` `` H@___PPT9"@ r*&     &F X #"X  Td#" `P H"0 C   <¬d#" `U H"0 C   c $\Ƭ"UY B D   s *ʬ"YW B D    s *̬"YU B D    s *xЬ" B D    c $Ӭ#" `SV H"0 C    c $8׬"Y B D    s *ڬ"X B D   <ݬ #" `  `  T Click to edit Master title style! !$  0߬ " `p  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     SN  6 #" `^ `` H@___PPT9"@ l*$    H  0޽h ? }ff80___PPT10. 07  Pixely   0 e(   F  "  Zrd #"   H"0 C   s *v "9)e  H"0 C b e  # "e   c $Xz"ie  H"0 C   c $}"9) H"0 C    c $"0 H"0 C    c $"?e  H"0 C    c $h") H"0 C    c $"?G H"0 C    c $"oG H"0 C   c $p"9G H"0 C   c $Ȕ"iA H"0 C   c $ "A? H"0 C N  6  #" `` `` H@___PPT9"@ l*$      6p #" ``   `*   T  6 #" `` `` H@___PPT9"@ r*&       0 "P    T Click to edit Master title style! !  0 " P   W#Click to edit Master subtitle style$ $H  0޽h ? }ff80___PPT10. 07 0 rj0(    0`      ^*  8  0 Q ` H@___PPT9"@ p*"    d  c $ ?    0  0  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  6t _    ^*  >  6p _Q` H@___PPT9"@ p*"    H  0޽h ? 3380___PPT10.3 X @x(    0\      ^*  8  0 Q ` H@___PPT9"@ p*"      6 _    ^*  >  68 _Q` H@___PPT9"@ p*"    H  0޽h ? 3380___PPT10.3 0L(  Lr L S      r L S p `P   r L C JA2smalltree_text_bluetrans `NH L 0޽h ? }ff___PPT10i.t#+D=' = @B +     x (    H( "`P     0pP`   L=L(R) 2 NPX ( 2cccc  0,iP p [P"( 2c0   0hiPp [V"( 2c0   00 0 w2R(x)R( 2ggg    0x" @ x (x2L)\( 2gccc X   0@ `"   s *"`0 X   0     0, P,$ 0 l9 efficient S s.t. 8 efficient V* 8 x2 L S(V*,x) <P,V*>(x)G( 2cc g33g33gcccc gcgccccc g  g&4   0<` L ,$ 0 _Everything an efficient verifier can learn after a ZK interaction can be learned by applying an efficient algorithm (i.e., simulator) to the public input.( 2g gIg g33g332g   0D 0 ,$ 0 gZero-Knowledge: ( 2c H  0޽h ? }ff|___PPT10\.Ų+i|D' = @B D' = @BA?%,( < +O%,( < +Dh' =%(D' =%(D8' =A@BB BB0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-g6B fade*<3<*D8' =A@BB BB0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-g6B fade*<3<*D8' =A@BB BB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-g6B fade*<3<* Db' =%(D ' =%(D6' =A@BB BB0B%(D' =-g6B fade*<3<*D' =1:Bhidden*o3>+B#style.visibility<*%(D6' =A@BB BB0B%(D' =-g6B fade*<3<*D' =1:Bhidden*o3>+B#style.visibility<*%(D6' =A@BB BB0B%(D' =-g6B fade*<3<* D' =1:Bhidden*o3>+B#style.visibility<* %(+P+0+  ++0+  ++0+ ++0+ ++0+ ++0+ +     [ (    H] "`P     0^P`   L=L(R) 2 NPX ( 2cccc   0i P ,$ 0 &R9 efficient E s.t. 8 efficient P* 8 x Pr[ E(P*,x)2 R(X)] Pr[(x)=1]S( 2cc g33g33gcccc gcgcc ggggg&@    0+B#style.visibility<* %(D' =-g6B fade*<3<* D8' =A@BB BB0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-g6B fade*<3<*D8' =A@BB BB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-g6B fade*<3<* ++0+  ++0+  ++0+ +-   D < P T(  Tr T S 0    T 0Dp MEverything an efficient verifier can learn after a ZK interaction can be learned by applying an efficient algorithm to the public input.( 2g gIg g33g33 g  T 0d    vPopular formal interpretation: ( 2c   T 0 )9    *efficient = probabilistic polynomial-timeJ+( 2 gg!c* M T 0 0 3efficient = probabilistic expected polynomial-time4( 2 g33gcgcc3   T 0L`0 l9 efficient S s.t. 8 efficient V* 8 x2 L S(V*,x) <P,V*>(x)G( 2cc g33g33gcccc gcgccccc g  g&4 RB  T s *D|` ` H T 0޽h ? }ff___PPT10i.[+D=' = @B +   5 - ` X (  Xx X c $    X 0H W  vPopular formal interpretation: ( 2c   X 0@  *efficient = probabilistic polynomial-timeJ+( 2 gg!c* M X 0yP 3efficient = probabilistic expected polynomial-time4( 2 g33gcgcc3  X 00  ~nIf an efficient prover can convince the honest verifier that x2L then there exists an efficient algorithm (knowledge extractor) to extract a witness for x from the prover s strategy.( 2g g/ggg g33g33Xg8   X 0PP0  &R9 efficient E s.t. 8 efficient P* 8 x Pr[ E(P*,x)2 R(X)] Pr[(x)=1]S( 2cc g33g33gcccc gcgcc ggggg&@ RB  X s *D|P P H X 0޽h ? }ff___PPT10i.[+D=' = @B + p#1]j(  \ 0O  .] #""^0O   \ < ?"` O  T ExpectedEfficient Problem w/def [Feige]B+  c!c8  @`H \ <2 ?"`  0 ExpectedEfficient GapB  cc @` \ <> ?"`\TL___PPT9.&@  No Constant-round prot*D ccc*   @` \ <@ ?"`0 rCons  c  @`. \ <Q ?"` O   9 constant-round protocols** @ ccc  @`+ \ <\ ?"`    9 constant-round protocols@ ccc  @` \ <K ?"`  % Strict=Efficient Computation No Gap & &c%  @` \ <`o ?"` 0 rPros  c  @` \ <x ?"` O  vExpected   c  @` \ <́ ?"`  tStrict  c  @` \ <h ?"` uStrict   c  @`* \ <p ?"`0 Efficient Verifier/ Prover6  gc  @` \ < ?"` O  vExpected   c  @` \ <X ?"`  vExpected   c  @` \ < ?"`  tStrict  c  @` }\ <  ?"`0 \TL___PPT9.&@ Efficient Simulator/ ExtractorZ  g33 cc c(    @` p\ < ?"` O  wDef 3$ g  @` n\ < ?"`  wDef 2$ g  @` l\ <h ?"` wDef 1$ g  @` j\ < ?"`0 Xc  @``B .\ 0o ?00ZB 0\ s *1 ?ZB 1\ s *1 ?  `B 2\ 0o ?O O `B 3\ 0o ?0O `B 6\ 0o ?0O `B k\ 0o ?0O ZB \ s *1 ?0O ZB \ s *1 ?0O `B /\ 0o ?`B \ 0o ? 0 O  @\ 03P  Possible Defs for Zero-Knowledge !( 2!c &  ` 1] s *"`p H \ 0޽h ? }ff___PPT10i. pQ+D=' = @B +4  ((|(  | 0O  |# #""^0O   | < ?"` O  T ExpectedEfficient Problem w/def [Feige]B+  c!c8  @`H | < ?"`  0 ExpectedEfficient GapB  cc @` | < ?"`\TL___PPT9.&@  No constant-round prot*D ccc*   @` | <0  ?"`0 rCons  c  @`C | <, ?"` O  ! 9 constant-round prot** No gap@" cc c&   @`+ | <x7 ?"`    9 constant-round protocols@ ccc  @`  | <TA ?"`  % Strict=Efficient Computation No gap & &c%  @`  | <J ?"` 0 rPros  c  @`  | <S ?"` O  vExpected   c  @`  | <\ ?"`  tStrict  c  @`  | <f ?"` uStrict   c  @`* | <h ?"`0 Efficient Verifier/ Prover6  gc  @` | <z ?"` O  vExpected   c  @` | <x ?"`  vExpected   c  @` | < ?"`  tStrict  c  @` | <ȏ ?"`0 \TL___PPT9.&@ Efficient Simulator/ ExtractorZ  g33 cc c(    @` | <x ?"` O  wDef 3$ g  @` | <@ ?"`  wDef 2$ g  @` | < ?"` wDef 1$ g  @` | <Ķ ?"`0 Xc  @``B | 0o ?00ZB | s *1 ?ZB | s *1 ?  `B | 0o ?O O `B | 0o ?0O `B | 0o ?0O `B | 0o ?0O ZB | s *1 ?0O ZB | s *1 ?0O `B  | 0o ?`B !| 0o ? 0 O  "| 0@3P &Possible Defs for Zero-Knowledge / POK '( 2'c &  ` #| s *"`N ` $| s *"`V` %| s *"` 4 ` &| s *"` < ` '| s *"`  ` (| s *"` H | 0޽h ? }ff___PPT10. pQ+Dl' = @B D'' = @BA?%,( < +O%,( < +D ' =%(D' =%(DY' =4@BB BB%()))D' =-g6B fade*<3<*#|D' =1:Bhidden*o3>+B#style.visibility<*#|%(D ' =%(D' =%(DY' =4@BB BB%()))D' =-g6B fade*<3<*$|D' =1:Bhidden*o3>+B#style.visibility<*$|%(D ' =%(D' =%(DY' =4@BB BB%()))D' =-g6B fade*<3<*'|D' =1:Bhidden*o3>+B#style.visibility<*'|%(D ' =%(D' =%(DY' =4@BB BB%()))D' =-g6B fade*<3<*(|D' =1:Bhidden*o3>+B#style.visibility<*(|%(D ' =%(D' =%(DY' =4@BB BB%()))D' =-g6B fade*<3<*%|D' =1:Bhidden*o3>+B#style.visibility<*%|%(D ' =%(D' =%(DY' =4@BB BB%()))D' =-g6B fade*<3<*&|D' =1:Bhidden*o3>+B#style.visibility<*&|%(+- #)Q(   0O  # #""^0O    < ?"` O  T ExpectedEfficient Problem w/def [Feige]B+  c!c8  @`H  < ?"`  0 ExpectedEfficient GapB  cc @`  <l ?"`\TL___PPT9.&@  No constant-round prot*D ccc*   @`  < ?"`0 rCons  c  @`C  <` ?"` O  ! 9 constant-round prot** No gap@" cc c&   @`+  < ?"`    9 constant-round protocols@ ccc  @`   < ?"`  % Strict=Efficient Computation No gap & &c%  @`   <- ?"` 0 rPros  c  @`   <l/ ?"` O  vExpected   c  @`   <? ?"`  tStrict  c  @`   <hI ?"` uStrict   c  @`*  < K ?"`0 Efficient Verifier/ Prover6  gc  @`  <(] ?"` O  vExpected   c  @`  <Tf ?"`  vExpected   c  @`  <o ?"`  tStrict  c  @`  <q ?"`0 \TL___PPT9.&@ Efficient Simulator/ ExtractorZ  g33 cc c(    @`  <P} ?"` O  wDef 3$ g  @`  <T ?"`  wDef 2$ g  @`  <~ ?"` wDef 1$ g  @`  < ?"`0 Xc  @``B  0o ?00ZB  s *1 ?ZB  s *1 ?  `B  0o ?O O `B  0o ?0O `B  0o ?0O `B  0o ?0O ZB  s *1 ?0O ZB  s *1 ?0O `B   0o ?`B ! 0o ? 0 O  " 03P  Possible Defs for Zero-Knowledge !( 2!c &  , ) 0<0 (Summary: Def 1 is best if it can be met.l)( 2gcgcc( H  0޽h ? }ff___PPT10x. pQ+D ' = @B D_ ' = @BA?%,( < +O%,( < +D ' =%(D> ' =%(D0' =4@BBBB%(D' =0l9 HBHBBB*<3<*D' =4@BBBB%()?)?DF' =.7 BBBBBGM 0.0 1.85185E-6 L -0.35 -0.33334 *3>*B ppt_xB ppt_y=0BBAA<*D)' =4@BB BB%(D' =-g6B fade*<3<*D' =1:Bhidden*o3>+B#style.visibility<*%(D' =A@BBBB0B%()?)?DN' =.7 BBBBBOM 0.00416 -0.04445 L 0.27916 -0.54445 *3>*B ppt_xB ppt_y=0BBAA<*)D6' =A@BB BB0B%(D' =-g6B fade*<3<*)D' =1:Bhidden*o3>+B#style.visibility<*)%(D6' =A@BB BB0B%(D' =-g6B fade*<3<*"D' =1:Bhidden*o3>+B#style.visibility<*"%(++0+" ++0+) ++0+) +@  -=(  ,   @ , #"";J   @<$@ 0    < ?"`  @ vExpected   c  @`   < ?"`   tStrict  c  @`   <  ?"`  uStrict   c  @`*  < ?"`  Efficient Verifier/ Prover6  gc  @`  < ?"`   @ vExpected   c  @`  <T ?"`   vExpected   c  @`  < ?"`   tStrict  c  @`  < ?"`  \TL___PPT9.&@ Efficient Simulator/ ExtractorZ  g33 cc c(    @`  < ?"`  @ wDef 3$ g  @`  <  ?"`   wDef 2$ g  @`  <t* ?"`  wDef 1$ g  @`  <|, ?"`  Xc  @``B  0o ?  ZB  s *1 ?  ZB  s *1 ?   `B  0o ? @ @`B  0o ?  @`B  0o ?  @`B  0o ?@ZB  s *1 ?  @`B   0o ?  a # 06 ,$ 0 )Summary: Def 1 is best if it can be met.l*( 2gcgcc)  ) 0> ,$ 0 3q[B,BG]: For Zero-Knowledge Def 1 can be met by a constant-round prot. w/ a non-black-box simulator (assuming CRH)xr( 2!cc'c g cc&@-  * 0 \ `,$ 0 ]Our Results: 1. In both cases Def 1 can not be met in constant-rounds by a black-box simulator/extractor. 2. In case of POK Def 1 can be met by a constant-round prot. w/ a non-black-box extractor (assuming CRH&TDP)&( 2 gcgcg c g)cgcg'c g cc&1 8X - 6Ԕ"``0,$D 0H  0޽h ? }ff''___PPT10'. pQ+%]D&' = @B D%' = @BA?%,( < +O%,( < +D;' =%(%(D' =%(D+' =4@BB BB%(D' =1:Bvisible*o3>+B#style.visibility<*,%(D' =-g6B fade*<3<*,D8' =A@BB BB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#%(D' =-g6B fade*<3<*#D' =%(D' =%(Dh' =A@BB BB0B%()))D' =1:Bvisible*o3>+B#style.visibility<*)%(D' =-g6B fade*<3<*)D' =%(D' =%(Dh' =A@BB BB0B%()))D' =1:Bvisible*o3>+B#style.visibility<** %(D' =-g6B fade*<3<** D' =%(D' =%(Dh' =A@BB BB0B%()))D' =1:Bvisible*o3>+B#style.visibility<** k%(D' =-g6B fade*<3<** kD' =%(D' =%(Dh' =A@BB BB0B%()))D' =1:Bvisible*o3>+B#style.visibility<**k%(D' =-g6B fade*<3<**kD#' =%(D ' =%(D)' =4@BB BB%(D' =-g6B fade*<3<*,D' =1:Bhidden*o3>+B#style.visibility<*,%(D6' =A@BB BB0B%(D' =-g6B fade*<3<*#D' =1:Bhidden*o3>+B#style.visibility<*#%(D6' =A@BB BB0B%(D' =-g6B fade*<3<*)D' =1:Bhidden*o3>+B#style.visibility<*)%(D<' =A@BB@BB0B%()?)?D' =.K7 BBBBB]M -1.66667E-6 -7.40741E-7 L 0.00313 -0.54491 *3>*B ppt_xB ppt_y=@0BBAApBB:B <** D<' =A@BB@BB0B%()?)?D' =.K7 BBBBB]M 5.55556E-7 -2.22222E-6 L -0.00174 -0.52916 *3>*B ppt_xB ppt_y=@0BBAApBB9cBww<** kD>' =A@BB@BB0B%()?)?D' =.M7 BBBBB_M -3.05556E-6 -4.07407E-6 L -0.00607 -0.47338 *3>*B ppt_xB ppt_y=@0BBAApBBLB(}r<**kD' =%(D' =%(Dg' =4@BB7BB%(D' =1:Bvisible*o3>+B#style.visibility<*-%(D' =+4 8?fCB#ppt_w*0.70BCB#ppt_wB*Y3>B ppt_w<*-D' =+4 8?\CB#ppt_hBCB#ppt_hB*Y3>B ppt_h<*-D' =-g6B fade*<3<*-+P+0+# ++0+# ++0+) ++0+) ++0+* ++0+* +    ) ! d (  dr d S 4x `    m d 0y t WMotivation: Look at how known expected poly-time black-box simulators work (e.g. [FS])~X( 2 ccg c gcW   d 0 [P"( 2c0   d 0l [V"( 2c0 z8 P  dP h"  d s *"`P  d 0 - '  ZV1 ( 2c r8 PP `  d P `  d 0PP `  d 0t  ZP1 ( 2c F P  d 0  h" d s *"`P  d 0 - '  ZV2 ( 2c F PP `  d @P P` d 0PP `  d 0$  ZP2 ( 2c H d 0޽h ? }ff___PPT10i.)v +D=' = @B +^=   0%(    0̧@G [S"( 2c0   0$@G \V*"( 2c0 z P   P ,$D 0h"  s *"`P   0į - '  ZV1 ( 2c z PP `      ,$D  0`   0PP `    0D  ZP1 ( 2c z P     ` ,$D 0h"   s *"`P   0ĸ - '  ZV2 ( 2c z PP `    P ,$D   0`  0PP `   0D  ^P2  ( 2c   0`@ ,$  0 ZV2 ( 2c z P    ` ,$D  0h"  s *"`P   0 - '  ^V2  ( 2c z PP `     ,$D   0`  0PP `   0  ^P1  ( 2c   03P,$ 0 XSuppose that V* only sends message v2 w.p. e|-( 2 cc ccc& " 0 P ,$  0 \Using (v1,v2) and (v1,v2 ) can simulate proof!x/( 2cccccl `P %`P,$D 0 # <GYHj "``P :  $ 0, oNo clue how to continue ( 2c H  0޽h ?# }ff))___PPT10).)v +D(' = @B D(' = @BA?%,( < +O%,( < +D' =%(D' =%(D9' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-u6Bwipe(right)*<3<*D' =%(D' =%(D7' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-s6Bwipe(left)*<3<* D' =%(D' =%(D9' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-u6Bwipe(right)*<3<* D' =%(D' =%(Dg' =4@BB7BB%(D' =1:Bvisible*o3>+B#style.visibility<*%%(D' =+4 8?fCB#ppt_w*0.70BCB#ppt_wB*Y3>B ppt_w<*%D' =+4 8?\CB#ppt_hBCB#ppt_hB*Y3>B ppt_h<*%D' =-g6B fade*<3<*%D' =%(D' =%(D)' =4@BB BB%(D' =-g6B fade*<3<*%D' =1:Bhidden*o3>+B#style.visibility<*%%(D' =%(D' =%(D@' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-o6Bwipe(up)*<3<*D ' =%(D' =%(D)' =4@BB BB%(D' =-g6B fade*<3<* D' =1:Bhidden*o3>+B#style.visibility<* %(D)' =4@BB BB%(D' =-g6B fade*<3<* D' =1:Bhidden*o3>+B#style.visibility<* %(D' =%(D' =%(D7' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-s6Bwipe(left)*<3<*D' =%(D' =%(D9' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-u6Bwipe(right)*<3<*D' =%(D' =%(Dh' =A@BB BB0B%()))D' =1:Bvisible*o3>+B#style.visibility<*"%(D' =-g6B fade*<3<*"D' =%(D' =%(D7' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-s6Bwipe(left)*<3<*D' =%(D' =%(Dh' =A@BB BB0B%()))D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-g6B fade*<3<*++0+ ++0+ ++0+" +     P n (    0@G [S"( 2c0   0D@