ELF(4(0!0  0!/0!0  B 0!/L0 R   /  /  /  /0@-P0Z @0  SB0;00;C000 0 S0\ /|3-xs l3M`0 0 ReT0Zß P 0@@S!!Q Q 0S PnP U 00S0Ѝ/V Rp2 RU P0X0Ÿ P 0@@S!!Q ^Q[ 0S P4PU 00S00S PJV 1@P R0 \P\ & YP@ R  P0P11 0!0R!!0!p00S0QP Ue@ i 11!! 0 0Q0S00 0S `( ?! 00> ? > "$?  !/?0 X /?0 X /?0 X /?0 X /?0 X /?0 X /?0 X /?0 X /?0 X /?0 X /?0 X /?0 \ /?0 ` /?0 ` /?0 ` /?0 ` /?0 ` /?0p@-Pd`m@PeU|0 S  0 `Ppp?o:O-MP HsK`@PUP 38[8ß3 :*0 00X'0S *p pWpppp pYp7 C0U@U@U@@ `8Rh0S0( 2 2l 2R{ h R p0Su -`pt1@0x 0~|nP" P l1Q 00 0Q W 00,1 0Q V 000 0D 0W  0V  0 0P@0p`  0d- 0@0@.0 ->Ѝ( ?p@-P@ `U 0E@VB00p O-DM`P0 @l1 :*p`18WK0    8! @  S[ R  R @ 00 00   BR T0WU0 0 R@p 0SP DЍ( 7@-0@ P0$0S   ! >A-A0S0S 10S P0S1!!p  1! t1RY QrQ t R0 00S 0 S3 @dP!  8S ! S }S S S6 S00Pp`( 0`  @ TR < R ЍA08*00Ѝ?@-@@0S d0S 0 0S@?O-M`TB  0 SP ?0딐  PppY( W00Swp(000r  @ !0d]WQX(0 pS    d<@u\YU`U V(00 P7#CS?&B0VCz  02X 02@0 00 0d( 0Ѝ?'Vx@8@-@0S8P x0P P0S 0S S S S000S PPq88?7@-PP @P&P0S" @@0 000SPP 0 000S 00@>?1O-0MSЍOPlA0S `Q`q00`  P0pj h i0gj0hj00 `i@gi 0`0 ЍO?@-@P0qapc80p0`c40o` 1S1p1` S00S P 0@ pc00cWp80< Wp0`c00cV`40V`pa[?0A- !R q`8P@fOp@`fP4 `Pea/  `UP@dUQAaA b@QQ!A?p@-`P0Sp0Sp 0@> 0  000 04#$0 #(#< 0 04#$0 #(#< 0(p@? Q@- A 0,9S  ? ,1S K/?0?##1P0 /A-pP@@``Fb``"hH@@@@DℂPPoo_ooA- MPp@@``Fb``ooo"hH@@@@DB@`@@V`0   0 S@@ T ЍAs@-AP0aS 0S 0Sc Up30 09S \1 0)``PH@ 1R,!( R !$4)R! 8)R!<)R @)R D)R  R  H)R 0S L)0R  0Q } Ѝp@R UdЍp@[Ѝp@XЍp?N@ƪJ/78~RRSp@?@-X00SL0 R0SP P@P?d@-`P0@S 00S(0S0(000  Ѝ@0` 01p00p 01W 0  0dD 0 Ѝ@?@1s@- PR@`Ѝp@ 10S (0S0(000 P P (0S0(000 0S S S tSp  h d 0 00$0008 0Ѝp@?0k$E-(Q`0@S 10S(0S0(000  ЍEp$ 0尀P1@  010Pڴ  00 0q00d@ 09 ЍEh?/O-E,M0SpU 52#( 0 0 !h 0 X(Kp唠X` 5  d  P Q!@P0 S*0 TP(P!( P .44 0Y:0 0  00Z3*(!(@$ $P0PL  Ă Ȍ ̌ $(,,\:$ `  0 $$(, k" "",  k,$ ,(,̠  $( , $(, $  0000| P0 ă0Ȍ0̌ 04 8 <\n* ` 04 8 ,"2 PF 04 8 < $(,SM: 0    $(, b" "",  0$(,0b#$0 #(#< 0 04 8 , 04 8 < 1l ,ЍT0$t) t)x9$0(x9t90x908 80? '98@-@P 04 8 , 04 8 <P~8A-&M plCdRk`> k0 104@04@ C k2" @`,1S K,9S ! kkld @ 40 8 0,  k X 0400 001& 08@@A  0 0,0@URkOLXIF&ލ?<88AHKNU`8@-0@s@P8/0 $88@Bs@-xBP0S h20SP P 0E S00R |)R U0q0 R! R U0r0S P1U U1 ) i00P*1^ 1S8 0ES441011 1000010C1I101D10110C1<1010C10C1101.!0R!R!! 0110`S 0|@> 0000%4P0 %8%\ 0P(|?ZgG- CM9S.0RSЍP 9S90C90RSP p0Sh0S)|R?  0c1 t0S t <2<"011 )  bPz1 P P] > t00C###, 008#(!#| 8! p0 ) ?  0c!Č( 9pP0 1c0BS 0a 0  0t  t00[h 00###,S <<< <0h  h l?LO-pEM0S `50S YU&0S 850S ,0S P2099S 40S P 090S$ 40S  P |40SP0XTS\}hP Hl<$W>,> `(TpP' l#3(#3^`#3p, ` (((P d`P t c?00 dP3`Pp3V<`n< t00 p2V<`n< t00x2P`x0Vd*\2\0SI 0082 d$p2"6# "% 0 0  !0Z 0P !0dax! 0da0SX1X! pi/D10d0S1! 06#i/01`P|:S x0dP$@ `  0d0< 0x @ 0Ѝ?l|`xyzt'^Ih@IdJ.r@VlR0@;@-  P \ XlQP 8 8l  Ѝ  R Ѝp@-`P P @T `  @ 0:p?4O-@Ml d1l)Z$ `4 ( L`P`D 0`! `L40S0!/P `Vt 0Sh 3l  0SG*3d:*3l 0✀! h L$0 ($lP00 @ $ R3,l \\ 2 $ LPl 0 P "S *Z2l ✠! h $0 $(@l⠠00  `!" 0/  p` / $ "!0V ql 0[l :vl 3 000 l0*0,1 5Vq 0(\ 0 l( \0%Vl   0 0@00 K/00 Z 0u  L(00:S 00d0 Ѝ7?tJRIz8>`Ux@- @lp 0l0h0@-:hMS T@l0sH0H 0d40ll$ hЍ?`O-O0M0P099S PUP2 >G__lp`   0$/00.989:S :S }Pd P mp 0 0 0Yɑቒ0YɒPU 808#1<8 80 S:0iS< 5p1)5 P0]199SMd l X] l}880| <l<8 <8)<0R l< <0 0<0800i808<`00 0ld0Z: 0,0,Z:<0 S{k+P  0!a*00":40000@<". dp40 pp'40'8p0'<p0:0c#: S: $0$00#$ #,  { r! P   P˟ 040Xl0( r#,0PS(l 0 S%0 0 b` k|:l: @zd)0hh0Z 0Sxl `0X#  S0 X~R  R (咑!8 l(8080(Xl# XS 00` P `@C 0KYR80 `8 V00 l 0`08*R  )2 7,x(P``0 8PtPhPZY>\P?PAPBPCPEPFPGPHPIPJPKPLPMPNPOP 450 860!490!848 :0!0@0D07;VPWP 4Q0 8R00T00U00P0 D7Sh`t p  l g cRc / dD&w0|:,SA0$&l:<P<0S PdU6|j.V+0x0#dVk 0pdl 0d0  dh4 dhh`VhP0x0:S' d䥟0000%0d㑨%[ e d0㛣# 0 P`Xx0 V\*00|0t00A00|:S0Q0Nd6#h!$0 $0l ;哋+0+ ;쳟X 0S0Kd8( 0 =0 l$4 h0hEp3P00s 4 lT2 H3s`Px0U*P*3P P`3:S PUlXd s0`S8 3PU_:S\ XZP! }/ p0P $;U#+UU$";U(!;U, ;U4U8Up <4 ht0 P $444 P(`0 uS, , h U`> @:U*UU$:U\(:U,:U4U8Up <, ht0 P %5,, P(0S X|:S5u[hx(Ud0@sPhPhx(<P<04SPUh6PU:Sx6 &0 S0PP U 6lU :S00 8h 80pp8PPl 8 h 80p p8Ppp! 2 LWPblockSize > 0FAILED. queued: %d failed: %d (requeued)RAWItext: ; %dtake: INFOraw_rec_taskMARKlv_af_fase_addr[polling_cbr] queueing RTCI[polling_cbr] queueing INFO blocks%02d:%02d, %d frames / %d expected %02d:%02d, %d frames, continuous OK %s: %d MB, %d.%d MB/s, %d%% idle , %dms idle %s %s: idle Total rate: %d.%d MB/s%scheck_prot(0x%08X, 0x%08X) ERROR - leading protection modified at offset 0x%08X: 0x%02Xcheck_prot(0x%08X, 0x%08X) ERROR - trailing protection modified at offset 0x%08X: 0x%02X --> WRITER#%d: starting --> WRITER#%d: expected to terminate --> WRITER#%d: reached 4GiB, queuing close of '%s' --> WRITER#%d: no chunk prepared --> WRITER#%d: reached 4GiB, next chunk is '%s' --> WRITER#%d: close to 4GiB, request another chunk --> WRITER#%d: write error: %d --> WRITER#%d: write error: could not write anything, exiting --> WRITER#%d: write error: write failed --> WRITER#%d: write error: write failed, wrote only partially (%d/%d bytes) --> WRITER#%d: next chunk handle received, file '%s' --> WRITER#%d: closing finished --> WRITER#%d: unhandled job 0x%08XWRITER#%d: unhandled job 0x%08XMovie recording stopped automagically %sraw_rec.txtraw_recRaw detect errorResolution: %dx%d @ %d.%03d FPSframe size = 0x%XChunk: 0x%08X, size: 0x%08X (fullsize_buffers, so skip 0x%08X)chunk start 0x%X, size 0x%X, (end 0x%08X) slot %3d: base 0x%08X, end 0x%08X, aligned 0x%08X, data 0x%08X, size 0x%X (pre 0x%08X, edmac 0x%04X, write 0x%04X) slot %3d: ERROR - size too largebuffer size: %d framesBuilding a group list...group: %d block_len: %d block_start: %dSorting group list...group: %d length: %d slot: %dMemory error%s/M%02d-%02d%02d.MLVFilename: '%s'preallocate '%s' FAILEDpreallocate '%s'[Test #%03d] M: %d B: %dFilename(%d): '%s' (preallocated)Filename(%d): '%s'FIO_CreateFileEx(#%d): FAILEDFile create errorwriter_threadThreads failed to start<-- stopped recording, frame was skipped<-- stopped test mode, reached 4000 frames<-- WRITER#%d: write took: %8d µs (%6d KiB/s), %9d bytes, %2d blocks, slot %2d, mgmt %6d µs<-- WRITER#%d: '%s' (preallocated)<-- WRITER#%d: prepare new file: '%s'<-- WRITER#%d: prepare new file: '%s' FAILED<-- still have data to write...<-- WRITER#%d: close file '%s'%d.%d MB/s[Test #%03d] M: %d, B: %d, W: %d KiB, F: %d, Rate: %s[Test #%03d] M: %d B: %d W: %5d MiB F: %4d (%s) Frames captured: %d mlv_block_queuemlv_writer_queuemlv_mgr_queuemlv_mgr_queue_closemlv_job_alloc_queueEOSM5D250D5D3550D6D600D650D7D700D60DRec KeyDigital dollyCF-only buffersCard spanningMemory hackRecord 14-bit RAW video. Press SET to start.MovieCard warming up...%s/warmup.rawEnter textIME Handler %s installed, but 'ime_base' missing.mlv_video_enabledresolution_index_xaspect_ratio_indexmeasured_write_speedallow_frame_skipdolly_modepreview_modememory_hackstart_delay_idxkill_gdrec_keysmall_hackswarm_upcard_spanningbuffer_fill_methodfast_card_buffersenable_tracingtest_modeshow_graphCBR_VSYNCraw_rec_vsync_cbrCBR_KEYPRESSraw_rec_keypress_cbrCBR_SHOOT_TASKraw_rec_polling_cbrCBR_DISPLAY_FILTERraw_rec_update_previewmlv_recPROP_ROLLING_PITCHING_LEVELPROP_CUSTOM_WBPROP_WB_KELVIN_LVPROP_WBS_BAPROP_WBS_GMPROP_WB_MODE_LVPROP_PICTURE_STYLEPROP_AEPROP_BVPROP_SHUTTER_ALSOPROP_SHUTTERPROP_APERTURE2PROP_APERTUREPROP_LV_LENSPROP_ISOPROP_ISO_AUTOPROP_STROBO_AECOMPPROP_LV_LENS_STABILIZERAW video (MLV)Record 14-bit RAW video. Press LiveView to start.5:14:13:12.67:12.50:12.39:12.35:12.20:12:11.85:116:95:33:24:31.2:11.175:11:11:2mlv.video.enabledmlv.res.xmlv.aspect.ratiomlv.write.speedmlv.skip.framesmlv.dollymlv.previewmlv.memory.hackmlv.delaymlv.killgdmlv.reckeymlv.small.hacksmlv.warm.upmlv.skip.card_spanningmlv.video.buffer_fill_methodmlv.video.fast_card_buffersmlv.video.tracingmlv.video.test_modemlv.video.show_graphResolutionAspect ratioDisable G. DrawDisable global draw while recording. Some previews depend on GDStart recording with either LV or Menu button. Required for EOSMFrame skippingEnable if you don't mind skipping frames (for slow cards).PreviewAuto: ML chooses what's best for each video mode Canon: plain old LiveView. Framing is not always correct. ML Grayscale: looks ugly, but at least framing is correct. HaCKeD: try to squeeze a little speed by killing LiveView. HaCKeD2: No preview. Disables Global draw while recording. Start delayStart delay. Useful to stabilize in photo mode.Pressing shutter button.Smooth panning of the recording window (software dolly).Use arrow keys (joystick) to move the window.Card warm-upWrite a large file on the card at camera startup.Some cards seem to get a bit faster after this.Allocate memory with LiveView off. On 5D3 => 2x32M extra.Extra HacksSlow down Canon GUI, Lock digital expo while recording...Debug traceWrite an execution trace to memory card. Causes perfomance drop.You have to restart camera before setting takes effect.Show buffer graphDisplays a graph of the current buffer usage and expected framesTest modeRecord repeatedly, changing buffering methods etcBuffer fill methodMethod for filling buffers. Will affect write speed.How many of the largest buffers are for CF writing.Span video file over cards to use SD+CF write speedTag: TextFree text fieldTag: TakeAuto-Counting take number640704768864960115212801344147215041536160017281856192020482240256028803584ONLV/RECMENUAllowAutoCanonML GrayscaleHaCKeDHacked No Prev2 sec.4 sec.10 sec.16 MB32 MB64 MB128 MB256 MB512 MB1 GBWARNING: This model doesn't have 'PROPAD_GetPropertyData' defined. Reading properties not possible.MLVIv2.0IDNT[IDNT] err: %d model_data: 0x%08X model_len: %dERR:%d md:0x%8X ml:%d[IDNT] err: %d body_data: 0x%08X body_len: %dERR:%d bd:0x%8X bl:%d%X%08X%08X(unknown len %d)[IDNT] cameraName: '%s' cameraModel: 0x%08X cameraSerial: '%s'RTCIEXPOSTYLWBALLENS #'.5<CJNUZ^bfltx H '9 L_$t0<HT`lx)4>P]rZ9,(?GO,an-}. ` 8 V lI@ ``@H o@P d  ^ @$]ut  J4@zJ\@RJ\l  | lJ >AHXIcb|%,4:@FMT[|`  @`@@@J lIu+lJB_{JJ\@PUckwlwNameRaw recordingAuthorsg3gg0, a1exLicenseGPLSummaryRecords 14-bit RAW videoForumhttp://www.magiclantern.fm/forum/index.php?board=49.0DescriptionLast updatec22ddaa on 2014-01-04 21:10:31 UTC by g3gg0: mlv_rec: mlv_dump will now print the correct frame count for mult... Build date2014-01-04 21:20:30 UTCBuild userroot@linux-devGCC: (GNU Tools for ARM Embedded Processors) 4.7.3 20121207 (release) [ARM/embedded-4_7-branch revision 194305]GCC: (GNU Tools for ARM Embedded Processors) 4.7.3 20121207 (release) [ARM/embedded-4_7-branch revision 194305]A&aeabi5TE .symtab.strtab.shstrtab.rel.text.rodata.rodata.str1.1.rel.data.rel.config_vars.rel.module_strings.bss.comment.ARM.attributes@`l 4%l\-2m@Ј < ,JdF 0[HW  kup0ypڕ'4 N  hXTT*A4U80hL"zd#l$Pp/8B2@P5T<(|A0 <\_h  *1_ri0J ">hlg4z &" &" %J 9Ke &"u$H@`"  &"*/6Lq``#dLAib8~L&(Tidk'6<Kaj( &"b$" &"PcxXd3[8a &"@  &" 8: h H  d  &"  @`" K  , Z h &"|          &" c! . ; N Z a m  l   &"     2 F U }   &" 8 dx   t= L d u      &"  > &"V^tx cD+/2A BJY &"oP 4cD\XI /4HDj Vgq$`Xp!`IaH`8"sz &" &"f4,>start_delay_updateunhack_liveview_vsyncraw_rec_update_previewraw_tag_take_updateraw_tag_str_updateresolution_updateraw_main_updateaspect_ratio_updateraw_rec_keypress_cbrraw_video_rec_taskraw_rec_vsync_cbrraw_rec_polling_cbrraw_writer_taskraw_rec_deinitraw_rec_initraw_tag_str_startstrcpy__module_prophandler_mlv_rec_0x80050010_blockget_us_clock_valuemlv_fill_stylfps_get_current_x1000raw_lv_redirect_edmaccanon_gui_disable_front_buffermlv_mgr_queue__module_config_mlv_recml_shutdown_requestedclrscridle_globaldraw_disraw_force_aspect_ratio_1to1__module_prophandler_mlv_rec_0x80000010_blockmlv_fill_expodraw_lineedmac_copy_rectangle_startauto_power_off_timeGetNextMemoryChunk__mem_freesnprintfraw_lv_requesttrace_formatraw_rec_cbr_stoppingFIO_SeekFile__aeabi_faddmlv_mgr_queue_closeget_picstyle_nameshould_run_polling_actiontrace_write_tscNotifyBoxHidecanon_gui_front_buffer_disabledstreqraw_tag_str_done__module_prophandler_mlv_rec_0x80050019_blockfont_smallraw_rec_cbr_save_bufferFIO_GetFileSizeime_base_startcallmemcpyreset_movie_cropmarksget_current_shutter_reciprocal_x1000__aeabi_fcmpgtset_custom_movie_mode__aeabi_uldivmodlv2rawedmac_get_baseGetMemoryAddressOfMemoryChunkbeep_timesmlv_rec_get_free_slotmlv_rec_queue_blockroundf__aeabi_i2f__module_prophandlers_mlv_rec__module_prophandler_mlv_rec_0x80000028mlv_rec_release_slot__module_prophandler_mlv_rec_0x80000011raw_lv_settings_still_valid__module_prophandler_mlv_rec_0x8000002d__module_prophandler_mlv_rec_0x8000002c_blockraw_set_dirty__module_prophandler_mlv_rec_0x80030039_blockGetSizeOfMemoryChunk__module_prophandler_mlv_rec_0x80050000_blockmlv_fill_lensml_assert_handlerfont_mededmac_copy_rectangle_finish__module_prophandler_mlv_rec_0x80000005raw_update_paramsmsg_queue_createraw_lv_releasebm2lvResumeLiveViewvideo_mode_resolutionmenu_add__module_prophandler_mlv_rec_0x80000009_blocktrace_vwritePROPAD_GetPropertyDatatrace_stop__aeabi_fsubNotifyBoxmlv_generate_guid__module_prophandler_mlv_rec_0x80000011_block__module_cbr_mlv_rec__module_prophandler_mlv_rec_0x80030039__module_prophandler_mlv_rec_0x2020000_blockraw_set_preview_rectmlv_rec_get_slot_inforaw_rec_cbr_skip_frame__aeabi_idivmlv_video_enabledredrawtrace_start__module_info_mlv_rec__module_prophandler_mlv_rec_0x80000010__module_prophandler_mlv_rec_0x80000006_block__module_prophandler_mlv_rec_0x80000009is_movie_modemlv_fill_idnttrace_writebmp_draw_rectfileman_register_typemlv_movie_filename__module_prophandler_mlv_rec_0x80000007_blockgui_menu_shown__module_prophandler_mlv_rec_0x80000028_blockFIO_WriteFileraw_rec_cbr_startedmodule_card_drivePauseLiveViewset_movie_cropmarksraw_infotake_screenshotvideo_mode_crop__aeabi_f2izstrncpyFIO_CreateFileExraw_rec_cbr_startingmlv_set_type__aeabi_fdiv__mem_malloccamera_model_shortshamem_readmemcmptask_createtask_dispatch_hookraw_rec_trace_ctx__aeabi_ui2fis_native_movie_modetrace_set_flushrate__module_prophandler_mlv_rec_0x8000002cGetFirstChunkFromSuitebeep_customget_dcim_dirpicstyle_settingsLoadCalendarFromRTCmsg_queue_post__module_prophandler_mlv_rec_0x80050000memset__module_prophandler_mlv_rec_0x8000002E_blocktrace_flush__module_prophandler_mlv_rec_0x80050005_blockmlv_set_timestamprecording__aeabi_uidiv__module_prophandler_mlv_rec_0x2020000FIO_RemoveFileedmac_memcpy_res_unlockedmac_get_length__module_prophandler_mlv_rec_0x8000002d_block__module_prophandler_mlv_rec_0x80050010idle_globaldraw_enlv_dispsizegui_stop_menutrace_write_binaryis_custom_movie_modefocus_box_get_raw_crop_offsetraw_rec_cbr_skip_buffervram_hdliveview_display_idle__module_prophandler_mlv_rec_0x80050018_blockvram_lvmlv_prng_lfsrbmp_printf__module_prophandler_mlv_rec_0x80000006__aeabi_fcmpeqedmac_memcpy_res_lock__aeabi_fmulFIO_CloseFiledotlvmlv_block_queueaf_mode__aeabi_fcmpltraw_rec_cbr_mlv_blockcanon_gui_enable_front_buffer__module_strings_mlv_rec__aeabi_uidivmod__module_prophandler_mlv_rec_0x80050005mlv_init_fileheader__module_prophandler_mlv_rec_0x8000002Emlv_job_alloc_queuebeepraw_preview_fast_exmlv_fill_wbalshoot_free_suitehdmi_code__aeabi_f2uiz__module_prophandler_mlv_rec_0x80050018lens_infomlv_rec_set_rel_timestamp__module_prophandler_mlv_rec_0x80000007__module_prophandler_mlv_rec_0x80000005_block__module_prophandler_mlv_rec_0x80050019get_halfshutter_pressedime_base_registerstrlentrace_availableshoot_malloc_suiteraw_rec_cbr_stopped__aeabi_idivmod__module_prophandler_mlv_rec_0x80000008_blockmsleepmlv_fill_rtci__module_prophandler_mlv_rec_0x80000008msg_queue_receivemsg_queue_count|D0DXl  4H\puOO O$,0@DTlu@)u u, ul ) ) )   L \ ul            ., T       0 < x `I|d(,<@D=HLP ltxduuHuXhux.uuuxu.u. .$(,04T} W4r8&LlCuu0uHu`upuuuuuuuuu@DHLHPc8<@8DT .(,04T.\`d%$ 90 HhAtAA\lt,u0O8<ND3HTutOOOOk(|.ENu.(,N0tu.8.dhN|uu.      $  }!O !O!!\!!!!!e!!!!"`0"6@"D"H"""".#.D#H#L#P#T#X#\#`##C###$d$.$.$$+$$$$$$$$%8%%O%%%.%.&& &&&&&t&&&u&u'u' '('''((,((B$)B0)|)*\*|*B<+Bx++-+++++++++,,,$,L,,B,,,B--(-4-<-H-P-\-x-.---------.-.(.(4.[@.~L.X.////// /$/(/,//}/<01P0h0000000000111111122 2D2}|2T22^D3\3 4t4*414 5\(5,5054585<5@5D5L55/5A5}5F55b66F<6}X66666666667747D7(P7[\7h7t7777677u7u8u 8D8`8up888u88(9u89P9.t9u99.99.90:`:up:ux::.::::::::::; ;;;;; ;$;(;,;]4;8;<;@;;;;;;; <Y<J0<,@<P<t<<B<2=@=T=====>,>8>H>2x>>>?$?D?P?????@,@@@\@p@@@1@@K@2@A$A(A,A0A4A#8A